gpt4 book ai didi

python - Pandas dataframe 合并的一个特例

转载 作者:太空宇宙 更新时间:2023-11-04 09:59:33 25 4
gpt4 key购买 nike

如何将 dataframe1 的行合并到 dataframe2 中?

  • 如果相应的值之一是 NaN 那么该值应该是从另一个复制过来的。
  • 如果两者都是 NaN 则 NaN。
  • 如果没有一个是 NaN 那么第一个。


Dataframe1 Dataframe1



数据框2 Dataframe2

提前致谢

最佳答案

您可以使用 combine_first :

df
Out:
col1 col2 col3 col4
0 NaN NaN 3.0 4
1 1.0 2.0 NaN 5

df.loc[0].combine_first(df.loc[1])
Out:
col1 1.0
col2 2.0
col3 3.0
col4 4.0
Name: 0, dtype: float64

以指定的格式:

df.loc[0].combine_first(df.loc[1]).to_frame('Row1-2').T
Out:
col1 col2 col3 col4
Row1-2 1.0 2.0 3.0 4.0

替代方案:

df.loc[[0]].fillna(df.loc[1])
Out:
col1 col2 col3 col4
0 1.0 2.0 3.0 4

还有来自@MaxU 的更干净的填充版本:

df.bfill().iloc[[0]]
Out:
col1 col2 col3 col4
0 1.0 2.0 3.0 4

关于python - Pandas dataframe 合并的一个特例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44354102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com