Python 3.x 按特定月份切片

Python 3.x 按特定月份切片,python-3.x,datetime,pandas,slice,Python 3.x,Datetime,Pandas,Slice,我有一个以下格式的数据帧 1 2 3 4 Data 2001-07-30 0.363354 27.428261 14.639130 6.763423 ... ...

我有一个以下格式的数据帧

              1            2           3           4  
Data                                                                            
2001-07-30      0.363354   27.428261   14.639130   6.763423         
...                  ...         ...         ...        ...           
2015-06-15      0.039085   28.562948   14.000722   8.605911         
我希望按月切片。因此,例如,我只想选择第5个月的数据,并将其存储在一个新变量中。我已经找到了几个类似问题的答案。然而,这些并不能提供预期的结果

该领域的问答示例:


  • 我不熟悉使用Python和Pandas进行timeseries分析,因此希望您能向正确的方向推动或阅读材料。

    datetimeindex
    具有access属性,您可以使用该属性过滤df:

    In [132]:
    df = pd.DataFrame(index=pd.date_range(dt.datetime(2015,1,1), dt.datetime(2015,5,1)))
    df.loc[df.index.month==2]
    
    Out[132]:
    Empty DataFrame
    Columns: []
    Index: [2015-02-01 00:00:00, 2015-02-02 00:00:00, 2015-02-03 00:00:00, 2015-02-04 00:00:00, 2015-02-05 00:00:00, 2015-02-06 00:00:00, 2015-02-07 00:00:00, 2015-02-08 00:00:00, 2015-02-09 00:00:00, 2015-02-10 00:00:00, 2015-02-11 00:00:00, 2015-02-12 00:00:00, 2015-02-13 00:00:00, 2015-02-14 00:00:00, 2015-02-15 00:00:00, 2015-02-16 00:00:00, 2015-02-17 00:00:00, 2015-02-18 00:00:00, 2015-02-19 00:00:00, 2015-02-20 00:00:00, 2015-02-21 00:00:00, 2015-02-22 00:00:00, 2015-02-23 00:00:00, 2015-02-24 00:00:00, 2015-02-25 00:00:00, 2015-02-26 00:00:00, 2015-02-27 00:00:00, 2015-02-28 00:00:00]
    

    月份索引是基于
    1
    的,因此
    5
    将是
    May

    IIUC,然后
    df.loc[df.index.Month==4]
    如果您在追求这样简单的目标,应该可以工作。工作起来很有魅力!非常感谢。事实上,月索引是以
    1
    为基础的,因此第5个月将
    May
    而不是
    4
    如果我的答案解决了你的问题,那么请接受我的答案,这样问题就不会一直没有答案,我的答案左上角将有一个空的勾号完成,正在等待答案的正式发布。谢谢你的回答,帮了我很多忙。