代码之家  ›  专栏  ›  技术社区  ›  chowpay

在大熊猫数据帧中选择日期和时间

  •  0
  • chowpay  · 技术社区  · 7 年前

    我有一个像这样的数据框架

        Date            MBs     GBs
    0   2018-08-14 20:10    32.00 MB    0.00 GB
    1   2018-08-14 20:05    4.00 MB     0.00 GB
    2   2018-08-14 20:00    1000.99 MB  1.23 GB
    

    我已经做到了:

    na_aus['Date'] =  pd.to_datetime(na_aus['Date'], format='%Y-%m-%d %H:%M:%S')
    

    但是当我尝试这样一个简单的过滤器时:

    na_aus.loc['2018-08-14 19:50' : '2018-08-14 20:10'] 
    

    我得到的是:

    Date            MBs     GBs
    

    没有返回数据。

    我试着跟着这个 Select dataframe rows between two dates 但它不起作用

    1 回复  |  直到 7 年前
        1
  •  1
  •   sacuL    7 年前

    使用 .between :

    na_aus.loc[na_aus['Date'].between('2018-08-14 19:50','2018-08-14 20:10')]
    

    在您的情况下,所有行都满足以下要求:

                     Date         MBs      GBs
    0 2018-08-14 20:10:00    32.00 MB  0.00 GB
    1 2018-08-14 20:05:00     4.00 MB  0.00 GB
    2 2018-08-14 20:00:00  1000.99 MB  1.23 GB
    

    但是如果你不希望它包括边界,设置 inclusive=False . 这意味着,由于第0行是您的范围的确切边界,因此不包括:

    >>> na_aus.loc[na_aus['Date'].between('2018-08-14 19:50', '2018-08-14 20:10',
                                          inclusive=False)]
    
    
                     Date         MBs      GBs
    1 2018-08-14 20:05:00     4.00 MB  0.00 GB
    2 2018-08-14 20:00:00  1000.99 MB  1.23 GB