panda将一列的条目除以另一个数据框中的条目

2024-09-27 00:20:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我有2个数据框-A和B。A包含不同商店的每周销售数据,部门由关键字Store_Dept_Date(例如2_12_2010-04-03)索引,而B包含给定商店的相应消费者价格指数(CPI),日期索引为Store_Date,例如2_2010-04-03。在

> A.columns  
> Out [ ] : Index([u'Store', u'Dept', u'Date', u'Weekly_Sales'], dtype='object')

> B.columns  
> Out [ ] : Index([u'Store', u'Date', u'CPI'], dtype='object')

我想把A中给出的每周销售额标准化,将A中的每一行除以B中给出的相应的CPI值

目前我正在尝试:

^{pr2}$

A包含421570行。我的程序要花很长时间才能运行。正确有效的方法是什么?在


Tags: columns数据storedateindexobject消费者关键字
1条回答
网友
1楼 · 发布于 2024-09-27 00:20:10

DataFrames的merge方法应该更快,即使它复制数据。您可以设置标志copy=False,以尽量减少不必要的复制。在

如果A中的每个日期都有一个B中的日期,则可以执行以下操作:

C = A.merge(B, on=['Store', 'Date'], copy=False)
C['Normalized_Sales'] = C.Weekly_Sales / C.CPI

相关问题 更多 >

    热门问题