This question already has answers here:
Fill in missing pandas data with previous non-missing value, grouped by key
(3个答案)
2年前关闭。
我有一个大熊猫数据框,在不同的列中有几个
如您所见,1与23关联,因此所有具有1的id都必须用23来估算,因此在其他情况下一个。例如,预期的输出将是:
如何使用pandas进行此类操作?我的问题是我不知道如何处理先前的值并将其替换为其id。
更新
阅读该问题和其他相关问题的答案后,我尝试:
但是不起作用。它不是用与ID关联的值替换值,原因是我的COL值可能是字符串。对如何处理这个有任何想法吗?
(3个答案)
2年前关闭。
我有一个大熊猫数据框,在不同的列中有几个
NaN
值。每个NaN
值都有一个关联的ID
,我想用关联的id值来估算这些NaN
值。例如,考虑: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值可能是字符串。对如何处理这个有任何想法吗?
最佳答案
sort_values
与ffill
df.COL=df.sort_values(['ID','COL']).COL.ffill()
Out[381]:
ID COL
0 1 23.0
1 1 23.0
2 1 23.0
3 1 23.0
4 1 23.0
5 2 21.0
6 2 21.0
7 2 21.0
8 2 21.0
9 3 25.0
10 3 25.0
11 3 25.0
关于python - 基于索引,如何用先前的上述值填充NaN值? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49987108/
10-14 18:11