【发布时间】:2018-10-03 20:30:59
【问题描述】:
我有一个大熊猫数据框,在不同的列中有几个 NaN 值。每个NaN 值都有一个关联的ID,我想将这些NaN 值与关联的id 值一起估算。例如,考虑:
ID COL
1 23
1 NaN
1 NaN
1 NaN
1 NaN
2 21
2 NaN
2 NaN
2 NaN
3 25
3 NaN
3 NaN
如您所见,1 与 23 相关联,因此所有具有 1 的 id 都必须用 23 估算,其他情况也是如此。例如,预期的输出是:
ID COL
1 23
1 23
1 23
1 23
1 23
2 21
2 21
2 21
2 21
3 25
3 25
3 25
如何使用 pandas 进行这样的操作?,我的问题是我不知道如何处理以前的值并将其替换为它的 id。
更新
在阅读了这个问题和其他相关问题的答案后,我尝试:
df.sort_values(['ID','COL']).ffill()
但是不工作。它不会用与 ID 关联的值替换值,原因是我的 COL 值可能是字符串。知道如何处理这个问题吗?
【问题讨论】:
-
df.COL.ffill() -
@Wen 哥们,也需要groupby
-
@ayhan 不要说我不是一个言而有信的人。一发现重复就删除答案,谢谢
-
@ayhan 1. 离开是他们的选择。 2. 在我与他们交谈之前,他们一直在回答重复的问题。 3.我,嗯,搜索了一个重复的,找不到一个,决定我还是在别人之前回答。
-
在发布这个问题之前,我也在寻找解决方案。也许另一个问题的标题没有帮助。
标签: python pandas dataframe group-by