我有一种方法可以将其他属性添加到给定的pandas系列中,并且我想使用返回的系列来更新df中的一行。
可以说我有一个简单的数据框:
df = pd.DataFrame({'a':[1, 2], 'b':[3, 4]})
a b
0 1 3
1 2 4
现在我要用具有附加属性的一行替换一行,所有其他行将在该列中显示Nan,例如:
subdf = df.loc[1]
subdf["newVal"] = "foo"
# subdf is created externally and returned. Now it must be updated.
df.loc[1] = subdf #or something
df看起来像:
a b newVal
0 1 3 Nan
1 2 4 foo
答案 0 :(得分:1)
不失一般性,首先reindex
,然后分配(i)loc
:
df = df.reindex(subdf.index, axis=1)
df.iloc[-1] = subdf
df
a b newVal
0 1 3 NaN
1 2 4 foo