【发布时间】:2021-07-27 10:59:41
【问题描述】:
我有两个如下所示的数据框
df1 = pd.DataFrame({'person_id': [101,101,101,101,202,202,202],
'person_type':['A','A','B','C','D','B','A'],
'test_id':[1,2,3,3,4,4,5],
'login_date':['5/7/2013 09:27:00 AM','09/08/2013 11:21:00 AM','06/06/2014 08:00:00 AM','06/06/2014 05:00:00 AM','12/11/2011 10:00:00 AM','13/10/2012 12:00:00 AM','13/12/2012 11:45:00 AM']})
df2 = pd.DataFrame({'subject_id': [101,101,101,101,202,202,202],
'test_date':['5/7/2013 09:27:00 AM','09/08/2013 11:21:00 AM','06/06/2014 08:00:00 AM','06/06/2014 05:00:00 AM','12/11/2011 10:00:00 AM','13/10/2012 12:00:00 AM','13/12/2012 11:45:00 AM']})
我想将df2 的形状更改为df1。所谓形状,是指列名。
例如:我想让df2 在列名方面看起来与df1 完全相同,但保留 df2 的值。
我尝试了以下
df2.rename(columns={'subject_id':'person_id', 'test_date':'login_date'}, inplace=True)
final_columns = df1.columns
previous_columns = df2.columns.tolist()
mapping = {previous_columns[i]: final_columns[i] for i in range(2)}
df2.rename(mapping, inplace=True)
final_df = df1.append(df2)
我希望我的输出如下所示
【问题讨论】:
标签: python python-3.x pandas dataframe numpy