首页 > 解决方案 > 为最大日期和符号过滤熊猫数据框

问题描述

我在这里问了一个问题,我没有收到错误,而是一个带有列的空数据框。我究竟做错了什么 ?

我的原始数据框如下

               Date    Symbol
     49     2018-11-27  0
     50     2018-12-10  0
     51     2018-12-17  0
     52     2018-12-27  XLK
     53     2018-12-27  XLV
     54     2018-12-28  VTV
     55     2019-01-09  0
     56     2019-01-09  0
     57     2019-01-16  0
     58     2019-02-04  0
     59     2019-02-04  0
     61     2019-02-05  SPY
     62     2019-02-05  0
     60     2019-02-05  TLT
     63     2019-02-07  TLT
     64     2019-02-09  0

以下语句有效,但给了我一个空的数据框:

df.loc[(df['Symbol'] == "TLT") & (df['Date'] == df['Date'].max())] 

为 &链接 不受支持的操作数类型:“str”和“时间戳”

标签: pythonpandasdataframe

解决方案


通过 将列转换为日期时间to_datetime,也不loc是必需的,因此应删除:

df['Date'] = pd.to_datetime(df['Date'])
df[(df['Symbol'] == "TLT") & (df['Date'] == df['Date'].max())] 

推荐阅读