我想通过将值分配给相应的索引来在现有数据框中添加一列值。
这是我的数据框df
ID
0 A
1 B
2 C
我想将Value
列附加到其中,
values = [2, 5]
indexes = [1, 2]
因此新数据框应如下所示:
ID Value
0 A
1 B 2
2 C 5
我应该怎么做?谢谢。
答案 0 :(得分:3)
您可以使用loc
df.loc[indexes , 'Value'] = values
df
ID Value
0 A NaN
1 B 2.0
2 C 5.0
答案 1 :(得分:1)
df.merge(pd.DataFrame({'Value': values}, index=indexes),
left_index=True,
right_index=True,
how='left')
您可以通过values
和index
创建一个数据框,将其合并到原始数据框,基本上进行左连接。
或者,先使用合并,写起来甚至更短
df.combine_first(pd.DataFrame({'Value': values}, index=indexes))