gpt4 book ai didi

python - 如何比较数据框中不同年份月度值的变化,Pandas/Python

转载 作者:太空宇宙 更新时间:2023-11-03 21:23:26 24 4
gpt4 key购买 nike

我有一个数据框,其中的列

'Jan-2001' 'Feb-2001' ... 'Dec-2001'... 'Jan-2002' ... 'Dec-2002' ... 'Jan-2018' ... 'Dec-2018'.

200 190.4 55.23 12.3 130.2 30 42

...

这些列的值是 float 。我需要找到不同年份同月的值变化。例如,我需要检查 2018 年 3 月的值与上一年、2017 年 3 月相比变化了多少,以此类推其他月份/年份。我需要标记与上一年相比变化了 30% 的所有值。例如,如果 2018 年 4 月的值与 2017 年 4 月的值相比发生了 30% 的变化,我需要对其进行标记。如何在数据框中按相同月份但不同年份搜索值是我最大的问题。

我所做的是转置数据框,所以现在我有日期而不是行中的列(日期现在是数据框索引),我已将新列“月”和“日期”分配给数据框,但不确定如何来解决这个问题,如果这是可行的方法。我猜想,通过聚合进行分组不是一个选项,因为如果我采用总和/平均值,我的值就会发生变化,而我无法更改它们。

更新:

转置数据框:

Jan-1990    200     1.2    .... 45
Feb-2001 190.4 287.5 ... 2.1
...

最佳答案

您可能想使用built-in python date format 。首先,您应该将字符串解析为这种日期格式,最有可能使用 strptime .

然后您可以定义 1 年的时间增量,并将其与当前日期相加或相减。这将允许您在 pandas 数据框中搜索相同的日期(pandas 本身支持日期时间或日期期间的索引。除了手动使用 timedelta 之外,您还可以使用 pandas.date_range期限为1年。

关于python - 如何比较数据框中不同年份月度值的变化,Pandas/Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54041177/

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