栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用groupby的熊猫fillna

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用groupby的熊猫fillna

如果每个组仅使用一个非NaN的值

ffill
(前向填充)和
bfill
每组(向后填充),所以需要
apply
lambda

df['three'] = df.groupby(['one','two'], sort=False)['three']     .apply(lambda x: x.ffill().bfill())print (df)   one  two  three0    1    1   10.01    1    1   10.02    1    1   10.03    1    2   20.04    1    2   20.05    1    2   20.06    1    3    NaN7    1    3    NaN

但是,如果每个组有多个值,并且需要用

NaN
某个常量替换-例如
mean
按组:

print (df)   one  two  three0    1    1   10.01    1    1   40.02    1    1    NaN3    1    2    NaN4    1    2   20.05    1    2    NaN6    1    3    NaN7    1    3    NaNdf['three'] = df.groupby(['one','two'], sort=False)['three']     .apply(lambda x: x.fillna(x.mean()))print (df)   one  two  three0    1    1   10.01    1    1   40.02    1    1   25.03    1    2   20.04    1    2   20.05    1    2   20.06    1    3    NaN7    1    3    NaN


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/617318.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号