gpt4 book ai didi

python - Pandas - 计算相对于最早值的每日差异

转载 作者:行者123 更新时间:2023-11-28 16:21:19 24 4
gpt4 key购买 nike

这可能很简单,但出于某种原因,我发现它很难完成。任何提示将非常感谢。我有一些时间序列数据,每天包含 5 分钟的时间间隔,ala:

Date                   Values
2012-12-05 09:30:00 5
2012-12-05 09:35:00 7
2012-12-05 09:40:00 3
2012-12-05 09:45:00 2
2012-12-05 09:50:00 15
2012-12-06 09:30:00 4
2012-12-06 09:35:00 3
2012-12-06 09:40:00 8
2012-12-06 09:45:00 1

我想计算相对于当天第一个值(在本例中始终是 9:30 值)的差异,即。以这个 DataFrame 结束:

Date                   Values
2012-12-05 09:30:00 0
2012-12-05 09:35:00 2
2012-12-05 09:40:00 -2
2012-12-05 09:45:00 -3
2012-12-05 09:50:00 10
2012-12-06 09:30:00 0
2012-12-06 09:35:00 -1
2012-12-06 09:40:00 4
2012-12-06 09:45:00 -3

最佳答案

您需要减去 Series 创建的 transformgroupby通过 Series.dt.datefirst :

print (df.Values.groupby(df.Date.dt.day).transform('first'))
0 5
1 5
2 5
3 5
4 5
5 4
6 4
7 4
8 4
Name: Values, dtype: int64

df.Values = df.Values - df.Values.groupby(df.Date.dt.day).transform('first')

print (df)
Date Values
0 2012-12-05 09:30:00 0
1 2012-12-05 09:35:00 2
2 2012-12-05 09:40:00 -2
3 2012-12-05 09:45:00 -3
4 2012-12-05 09:50:00 10
5 2012-12-06 09:30:00 0
6 2012-12-06 09:35:00 -1
7 2012-12-06 09:40:00 4
8 2012-12-06 09:45:00 -3

关于python - Pandas - 计算相对于最早值的每日差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40104449/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com