我有一个数据框df1,其中一列是“值”。它看起来像 -使用右映射创建列
values
['acd3f','rt5gh8','5ty7e']
['rt5gh8','t67ui']
我有另一个数据帧DF2其中包含两列“0”和“1”,用类似的价值观 -
0 1
acd3f I am cool
rt5gh8 I am not cool
5ty7e ok_sir
t67ui no_sir
我想修改DF1添加一个新列“ value_names”,它应该像 -
values value_names
['acd3f','rt5gh8','5ty7e'] ['I am cool','I am not cool','ok_sir']
['rt5gh8','t67ui'] ['I am not cool','no_sir']
我想下面的代码 -
df1['value_names'] = df1['values'].replace(df2.set_index('0')['1'].dropna())
它似乎并没有工作,给我一个错误 -
KeyError: '1'
注:
基本上,我收到代替DF2的是与映射列表。我将其转换为数据框df2,并自动分配df2中的这些列名称“0”和“1”。
在我看来,列不是''1'',而是'1' ... –
基本上,我以前的而不是df2是一个带映射的列表。我将其转换为数据框df2,并自动分配这些列名称。 – ComplexData