【发布时间】:2018-08-10 02:43:43
【问题描述】:
我是python3的新手,几个月前我是R用户。
这就是问题所在。
我的数据框(df1)有点像这样:
Date quarter number
2015-10-09 1 250
2015-10-09 2 400
2015-10-09 3 310
2015-10-10 1 300
2015-10-10 2 410
2015-10-10 3 280
. . .
. . .
数据超过5000。上图只有几行。
我想要的是每天季度之间的绝对差异数字。
我想要的结果数据框应该如下图所示:
Date absolute_interval
2015-10-09 150
2015-10-09 90
2015-10-10 110
2015-10-10 130
. .
. .
我尝试使用 df2=df1.groupby('Date')。
然后我想申请循环。
我的伪代码是
for k in df2:
for u in df2[k]:
但我认为这行不通,所以我目前被困在这里。
有什么解决办法吗??
谢谢,祝你有美好的一天。
【问题讨论】:
-
df.diff不起作用吗? -
用 R 你可以做到
df%>%group_by(Date)%>%mutate(c(NA,abs(diff(number))))%>%na.omit() -
是的,但我正在尝试学习 python 语法。
-
@BallpointBen 我不知道 df.diff 存在....我会尝试 thx。
标签: python-3.x for-loop pandas-groupby