首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于多索引值的熊猫替代DataFrame值

基于多索引值的熊猫替代DataFrame值
EN

Stack Overflow用户
提问于 2020-03-19 21:02:16
回答 1查看 41关注 0票数 0

我有两个dataframe,其中第一个dataframe索引/列与第二个dataframe索引/列相关联。在df1中,列是df2的月份,行是索引的底层。基于这种关系,我想在df1 in df2中发布。下面是一个简化的示例:

代码语言:javascript
运行
复制
df1 = pd.DataFrame([[1, 2], [3, 4]], index= [1,2], columns=[1, 6])

index_list = [[1, 1, 2, 2],[1,2,1,2]]
header_list = [np.datetime64('2020-01-01'), np.datetime64('2020-06-01'),np.datetime64('2021-01-01'),np.datetime64('2021-06-01')]
df2 = pd.DataFrame(index=index_list, columns=header_list)

EN

Stack Overflow用户

回答已采纳

发布于 2020-03-20 22:20:50

有点工作,但没有重大障碍。

代码语言:javascript
运行
复制
df1.index.name, df1.columns.name = 'key', 'month'
df2.index.names, df2.columns.name = ['a', 'key'], 'date'
x = df1.stack().reset_index().rename(columns={0: 'value'})
y = df2.fillna(0).stack().reset_index(level=-1).drop(0, axis=1)
y['month'] = y['date'].apply(lambda z: z.month)
y = y.reset_index().merge(x, on=['key', 'month']).drop('month', axis=1)
y = y.set_index(['a', 'key', 'date']).unstack('date')
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60765011

复制
相关文章

相似问题

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