使用键将以前的非缺失值填充到丢失的 pandas 数据中

编程入门 行业动态 更新时间:2024-10-22 11:32:27
本文介绍了使用键将以前的非缺失值填充到丢失的 pandas 数据中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我正在处理像这样的pandas DataFrames:

I am dealing with pandas DataFrames like this:

id x 0 1 10 1 1 20 2 2 100 3 2 200 4 1 NaN 5 2 NaN 6 1 300 7 1 NaN

我想用具有相同'id'值的行中的每个NAN'x'替换为先前的非NAN'x':

I would like to replace each NAN 'x' with the previous non-NAN 'x' from a row with the same 'id' value:

id x 0 1 10 1 1 20 2 2 100 3 2 200 4 1 20 5 2 200 6 1 300 7 1 300

是否有一些巧妙的方法可以执行此操作而无需手动循环遍历行?

Is there some slick way to do this without manually looping over rows?

推荐答案

您可以执行 groupby/forward-fill 操作:

import numpy as np import pandas as pd df = pd.DataFrame({'id': [1,1,2,2,1,2,1,1], 'x':[10,20,100,200,np.nan,np.nan,300,np.nan]}) df['x'] = df.groupby(['id'])['x'].ffill() print(df)

收益

id x 0 1 10.0 1 1 20.0 2 2 100.0 3 2 200.0 4 1 20.0 5 2 200.0 6 1 300.0 7 1 300.0

更多推荐

使用键将以前的非缺失值填充到丢失的 pandas 数据中

本文发布于:2023-10-28 19:24:51,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1537560.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:缺失   数据   pandas

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!