首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于多索引Pandas DataFrame的Pandas()

用于多索引Pandas DataFrame的Pandas()
EN

Stack Overflow用户
提问于 2019-05-24 03:19:10
回答 1查看 454关注 0票数 0

我有一个多索引Pandas,我想使用ffill()来填充某些列中的所有NaNs。下面的代码显示了示例数据的结构,以及下一个快照中ffill()的结果。

代码语言:javascript
复制
room = ['A', 'B']
val = range(3)
df = pd.DataFrame(columns=pd.MultiIndex.from_product([room, val]),data=np.random.randn(3,6))
df.loc[1,('B',0)]=np.nan
# print(df.loc[1,('B',0)])
display(df)
df = df.ffill(axis=1)
display(df)

我希望得到的是,在1,('B',0)处的NaN被替换为-0.392674,而不是-1.349675。通常,我希望能够从级别1(0、1、2)的对应列中获得ffill()

我怎样才能做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-24 03:25:40

我想你是在找groupby fillna

代码语言:javascript
复制
df=df.groupby(level=1,axis=1).fillna(method='ffill')
df
Out[496]: 
          A                             B                    
          0         1         2         0         1         2
0 -0.177358 -1.531091 -0.945004  1.665143  0.602459 -0.008192
1 -0.006995  0.472267 -0.859471 -0.006995 -0.601538 -0.410391
2  0.101494  1.031941  0.499288  0.804391 -0.224750 -0.778403
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56285416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档