【问题标题】:Split dataframe to several dataframes将数据框拆分为多个数据框
【发布时间】:2018-04-21 11:53:02
【问题描述】:

我有以下代码:

Date                   X          
...
2014-12-30 23:00:00    2
2014-12-30 23:15:00    0
2014-12-30 23:30:00    1
2014-12-30 23:45:00    1
2014-12-31 00:00:00    22
...
2015-01-01 00:00:00    0
2015-01-02 00:00:00    2
2015-01-03 00:00:00    2
2015-01-04 00:00:00    2
2015-01-04 00:00:00    2
2015-01-05 00:00:00    2
...

我想将这个时间序列(数据帧)拆分成多个时间序列(数据帧)。我希望每个星期一都有一个时间序列,所有星期二、星期三......等等都有一个时间序列。

我怎样才能用熊猫做到这一点?

【问题讨论】:

    标签: python pandas dataframe time-series


    【解决方案1】:

    您可以使用groupby 和weekday_name 创建dictionary of DataFrames:

    dfs = dict(tuple(df.groupby(df['Date'].dt.weekday_name)))
    
    #select by days
    print (dfs['Friday'])
            Date  X
    6 2015-01-02  2
    
    print (dfs['Thursday'])
    
            Date  X
    5 2015-01-01  0
    

    详情:

    print (df['Date'].dt.weekday_name)
    0       Tuesday
    1       Tuesday
    2       Tuesday
    3       Tuesday
    4     Wednesday
    5      Thursday
    6        Friday
    7      Saturday
    8        Sunday
    9        Sunday
    10       Monday
    Name: Date, dtype: object
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      • 1970-01-01
      • 1970-01-01
      • 2020-10-12
      • 1970-01-01
      相关资源
      最近更新 更多