Python 使用索引和列标题将数据帧中的位置复制到另一个数据帧
我有两个数据帧,我想从其中一个数据帧中提取值,并根据第二个数据帧中包含的列信息和索引将其放在不同的列中(我的数据帧比这个大得多,所以我需要将其广义化),df1: df2: 我希望df1看起来像这样:Python 使用索引和列标题将数据帧中的位置复制到另一个数据帧,python,pandas,dataframe,Python,Pandas,Dataframe,我有两个数据帧,我想从其中一个数据帧中提取值,并根据第二个数据帧中包含的列信息和索引将其放在不同的列中(我的数据帧比这个大得多,所以我需要将其广义化),df1: df2: 我希望df1看起来像这样: apple banana pear value 127 3 7 4 3 157 5 15 26 26 241 16 14 31
apple banana pear value
127 3 7 4 3
157 5 15 26 26
241 16 14 31 0
365 42 17 18 17
将df2
Col\u Head
列转换为dict,索引作为键,Col\u Head
列作为值
然后对行执行apply()
df1
,并按索引进行查找,以从上一个目录中获取预期的列标题。如果未找到索引,请使用值
列标题
lookup=df2.to_dict()['Col_Head']
df1['value']=df1.apply(lambda行:row[lookup.get(row.name,'value')),axis=1)
Col_Head
127 apple
157 pear
365 banana
apple banana pear value
127 3 7 4 3
157 5 15 26 26
241 16 14 31 0
365 42 17 18 17
print(df1)
apple banana pear value
127 3 7 4 3
157 5 15 26 26
241 16 14 31 0
365 42 17 18 17