Pandas数据帧生成具有不同行信息的列,但没有应用函数

时间:2016-08-08 10:42:35

标签: python pandas

也许问题名称不准确(对不起,因为我找不到任何准确的词来描述我的问题......),让我举一个例子:

以下数据框是“week_id”和“user_id”的收入:

week_id  user income 
1        1    100
1        2    50
2        1    200
2        2    30
2        3    150
3        1    100
3        2    150
....

我想添加一个新列,其中包含上周的“收入”,如下所示:

week_id  user income previous_week_income
1        1    100    0
1        2    50     0
2        1    200    100
2        2    30     50
2        3    150    0
3        1    100    200
3        2    150    30
....

看起来生成包含来自当前行以外的其他行的信息的新列。

我知道使用apply函数的解决方案,但是因为它是逐行的,对我的情况来说似乎太慢了(原始数据帧可能是数千万行),我想知道其他快速解决方案来获得结果吗?

背景是为预测分析生成因子,所以我想在预测当前周收入时使用前一周的收入作为一个变量。

提前致谢:)

1 个答案:

答案 0 :(得分:0)

如果每个 <span onClick={this.checkCred.bind(this)} className="button1" bsStyle="primary" bsSize="large" > BLOCK </span> 都有唯一week_id,我认为您需要DataFrameGroupBy.shift fillna

users