gpt4 book ai didi

python - 使用另一个相同键控行中的非 NA 值填充键控行中的 NA 列值

转载 作者:太空宇宙 更新时间:2023-11-03 20:32:14 24 4
gpt4 key购买 nike

我得到了以一种奇怪的方式格式化的数据

df = pd.DataFrame([[1, 2, None, None], [1, None, 4, None], [1, None, None, 9, None], [1, None, None, None, 4]])
df.columns = ['name', 'c1', 'c2', 'c3', 'c4']

name c1 c2 c3 c4
1 2.0 NaN NaN NaN
1 NaN 4.0 NaN NaN
1 NaN NaN 9.0 NaN
1 NaN NaN NaN 4.0
2 1.0 NaN NaN NaN
2 NaN 4.0 NaN NaN

给定键“name”,我基本上想用第一个其他非 NaN 值填充键第一行中的 NaN 值,并将其压缩为一行,如下所示。

  name  c1  c2  c3  c4
1 2.0 4.0 9.0 4.0
2 1.0 4.0 NaN NaN

完成此任务的最佳功能是什么?带有first()的groupby来获取第一个非NA值?

最佳答案

这个怎么样?

df = pd.DataFrame([[1, 2, None, None], [1, None, 4, None], [1, None, None, 9, None], [1, None, None, None, 4],[2, 1, None, None, None],[2, None, 4, None, None]])
df.columns = ['name', 'c1', 'c2', 'c3', 'c4']
df.bfill(inplace=True)
newdf = df.groupby('name').head(1)
newdf

name c1 c2 c3 c4
1 2.0 4.0 9.0 4.0
2 1.0 4.0 NaN NaN

关于python - 使用另一个相同键控行中的非 NA 值填充键控行中的 NA 列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57420275/

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