python - 为最大日期和符号过滤 pandas 数据框

标签 python pandas dataframe

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

我的原始数据框在下面

               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())] 

链接 unsupported operand type(s) for &: 'str' and 'Timestamp'

最佳答案

to_datetime 将列转换为日期时间, loc 也不是必需的,所以应该删除:

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

关于python - 为最大日期和符号过滤 pandas 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54823011/

相关文章:

python - 基本位翻转算法

pandas - ValueError MultinomialNB 的样本数量不一致错误

python - 如何创建带有时间戳的散点图

python - 在 pandas 中对整个 DataFrame 进行采样时,避免连续列中出现两个相同的值

python: from x import y 改变之前的导入结果

python - Flask-RESTful 类方法内的断点不会在 PTVS 上命中

python - 对 DataFrame 进行分组,计算一列中的出现次数,将其他列值放入集合中

r - 按row.name和column合并

c++ - SWIG - 命名空间问题

python - pandas 在特定时间(不是午夜)将数据帧标准化为数据(引号)