【问题标题】:Mean of every 3 columns pandas [duplicate]每3列熊猫的平均值[重复]
【发布时间】:2018-06-17 14:34:30
【问题描述】:

我有一个如下所示的 DataFrame:

            2016-01    2016-02    2016-03    2016-04    2016-05    2016-06 ....
    name

    John    1000       1500       1800        2000       1600       1000

除了它有 10730 个条目。我想要的是拥有一个新的 DataFrame,其平均值为一年中的每个季度(3 个月)。例如:

        2016q1    2016q2    .....
John    143.333   1533.333

我对此的解决方案很糟糕并且花费了太多时间,所以任何事情都更好。谢谢!

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    转换为日期时间然后resample

    df.columns=pd.to_datetime(df.columns,format='%Y-%m')
    df
    Out[7]: 
          2016-01-01  2016-02-01  2016-03-01  2016-04-01  2016-05-01  2016-06-01
    John        1000        1500        1800        2000        1600        1000
    df=df.resample('Q',axis=1).mean()
    df.columns=pd.PeriodIndex(df.columns, freq='Q')
    df
    Out[14]: 
               2016Q1       2016Q2
    John  1433.333333  1533.333333
    

    【讨论】:

    • 我想太多,创建了一个基于重复范围的字典进行分组。不错。
    • @Dark 啊哈,dict 也是一个好方法,因为这是很多自定义 :-)
    • 嗨@Wen,感谢您的快速响应,并为我的缓慢回复感到抱歉。效果很好,谢谢!
    • @EliasUhalde yw ~ :-) 快乐编码
    猜你喜欢
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 2015-09-11
    • 2020-08-09
    • 2020-04-18
    • 2021-11-10
    • 1970-01-01
    相关资源
    最近更新 更多