繁体   English   中英

Pandas 根据索引将系列分配给另一个系列

[英]Pandas assign series to another Series based on index

我有三个 Pandas 数据帧:

df1 :

0        NaN
1        NaN
2        NaN
3        NaN
4        NaN
5        NaN
6        NaN
7        NaN
8        NaN
9        NaN

df2

0        1
3        7
6        5
9        2

df3 :

1        2
4        6
7        6

我的目标是根据索引将df2df3的值分配给df1 然后df1应该变成:

0        1
1        2
2        NaN
3        7
4        6
5        NaN
6        5
7        6
8        NaN
9        2

我尝试了简单的假设:

df1.loc[df2.index] = df2.values

或者

df1.loc[df2.index] = df2

但这给了我一个 ValueError: ValueError: Must have equal len keys and value when setting with an iterable

谢谢你的帮助!

您可以使用concat进行combine_first

pd.concat([df2,df3]).combine_first(df1)

reindex

pd.concat([df2,df3]).reindex_like(df1)

0  1.0
1  2.0
2  NaN
3  7.0
4  6.0
5  NaN
6  5.0
7  6.0
8  NaN
9  2.0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM