python – 用n-1替换缺失值

python – 用n-1替换缺失值,第1张

概述例如:我有, df = pd.DataFrame({0: [420, np.nan, 455, np.nan, np.nan, np.nan]})df 00 420.01 NaN2 455.03 NaN4 NaN5 NaN 然后使用: df[0].isnull().astype(int)0 01 12 03 例如:我有,

df = pd.DataFrame({0: [420,np.nan,455,np.nan]})df       00  420.01    NaN2  455.03    NaN4    NaN5    NaN

然后使用:

df[0].isnull().astype(int)0    01    12    03    14    15    1name: 0,dtype: int64

我明白了

df[0].fillna(method='ffill') - df[0].isnull().astype(int)0    420.01    419.02    455.03    454.04    454.05    454.0name: 0,dtype: float64

我想找到0,1,2,3,然后到最后:

df[0]= 420,419,455; 454,453,452

解决方法 groupby,cumcount

df[0].ffill() - df.groupby(df[0].notna().cumsum()).cumcount()0    420.01    419.02    455.03    454.04    453.05    452.0dtype: float64

细节

定义组

df[0].notna().cumsum()0    11    12    23    24    25    2name: 0,dtype: int64

在groupby中使用cumcount

df.groupby(df[0].notna().cumsum()).cumcount()0    01    12    03    14    25    3dtype: int64
总结

以上是内存溢出为你收集整理的python – 用n-1替换缺失值全部内容,希望文章能够帮你解决python – 用n-1替换缺失值所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1192132.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存