繁体   English   中英

使用 groupby agg 后的索引更改

[英]Index change after using groupby agg

我有一个看起来像这样的数据框:

  Code                             A1    A2  A3 ...   B40
    Time
2000-01-01 00:00:10.730              NaN   1   NaN    NaN
2010-01-01 00:00:12.730              1     2   3      NaN

我想每隔一小时汇总数据并计算一些统计数据。 我使用了以下代码:

grouped = df.groupby(df.index.hour)
# computing various stats
grouped = grouped.agg(['std', 'mean', 'skew'])
grouped

输出是

                                    A1                A2      ...  B40      
    Time                           mean std skew  mean std skew
     0                               1    2    0    2    1    9
     1
     .
     .
     .
    1000                              1   2    3    1    0    1

问题是我正在丢失我的时间值并获得整数索引而不是时间。 我怎样才能用它的初始格式保留时间。 所以我想要的输出是这样的:

                                     A1                A2    ...   B40      
    Time                           mean std skew  mean std skew
2000-01-01 00:00:00.00             1    2    0    2    1    9
.
.
.
2010-01-01 00:01:00.00              1   2    3    1    0    1

如果有人可以帮助我,我很感激。

谢谢

我认为对于相同的输出使用floor

grouped = df.groupby(df.index.floor('h')).agg(['std', 'mean', 'skew'])

另一个带有resample解决方案,但它创建了完整的时间范围数据:

grouped = df.resample('h').agg(['std', 'mean', 'skew'])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM