gpt4 book ai didi

python - Pandas 月滚动操作

转载 作者:太空狗 更新时间:2023-10-29 17:39:35 29 4
gpt4 key购买 nike

我在写这个问题的时候弄明白了,所以无论如何我都会发布并回答我自己的问题,以防其他人需要一点帮助。

问题

假设我们有一个包含这些数据的DataFramedf

import pandas as pd
from io import StringIO

data = StringIO(
"""\
date spendings category
2014-03-25 10 A
2014-04-05 20 A
2014-04-15 10 A
2014-04-25 10 B
2014-05-05 10 B
2014-05-15 10 A
2014-05-25 10 A
"""
)

df = pd.read_csv(data,sep="\s+",parse_dates=True,index_col="date")

目标

对于每一行,将一个月内每一行的支出相加,最好使用DataFrame.rolling,因为它是非常简洁的语法。

我尝试过的

df = df.rolling("M").sum()

但这会引发异常

ValueError: <MonthEnd> is a non-fixed frequency

版本:pandas==0.19.2

最佳答案

使用 “D” 偏移量而不是 “M”,并特别使用 “30D” 30 天或大约一个月。

df = df.rolling("30D").sum()

最初,我直觉地跳到使用 "M",因为我认为它代表一个月,但现在很清楚为什么它不起作用。

关于python - Pandas 月滚动操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43556344/

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