我有以下数据帧:
claim diagnosis sequence
100 1 1.0
100 2 1.0
100 3 NaN
100 4 NaN
105 1 1.0
105 2 2.0
105 3 2.0
105 4 NaN
111 1 1.0
111 2 2.0
111 3 3.0
111 4 NaN
我需要的是用前一行中的oneup值替换所有的nan,方法是声明:
claim diagnosis sequence
100 1 1.0
100 2 1.0
100 3 2.0
100 4 3.0
105 1 1.0
105 2 2.0
105 3 2.0
105 4 3.0
111 1 1.0
111 2 2.0
111 3 3.0
111 4 4.0
我尝试了cumcount,但似乎无法使用以前的值。我也试过loc,但还不太懂。你知道吗
things = [{'claim':100, 'diagnosis':1, 'sequence':1},
{'claim':100, 'diagnosis':2, 'sequence':1 },
{'claim':100, 'diagnosis':3, },
{'claim':100, 'diagnosis':4, },
{'claim':105, 'diagnosis':1, 'sequence':1},
{'claim':105, 'diagnosis':2, 'sequence':2},
{'claim':105, 'diagnosis':3,'sequence':2 },
{'claim':105, 'diagnosis':4, },
{'claim':111, 'diagnosis':1, 'sequence':1},
{'claim':111, 'diagnosis':2, 'sequence':2},
{'claim':111, 'diagnosis':3, 'sequence':3},
{'claim':111, 'diagnosis':4, }]
df = pd.DataFrame(things)
df
我已经绞尽脑汁想了好几天了,任何帮助都会很棒的。你知道吗
使用
cumsum
计算该行前面有多少个NaN
,然后加上ffill
相关问题 更多 >
编程相关推荐