我在这里问了一个问题,我没有收到错误,而是一个带有列的空数据框。我究竟做错了什么 ?我的原始数据框在下面 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' 和 'Timestamp'
2 回答

至尊宝的传说
TA贡献1789条经验 获得超10个赞
将列转换为日期时间to_datetime
,也不loc
是必需的,因此应删除:
df['Date'] = pd.to_datetime(df['Date']) df[(df['Symbol'] == "TLT") & (df['Date'] == df['Date'].max())]

绝地无双
TA贡献1946条经验 获得超4个赞
只是补充一些想法。您也可以使用idxmax()
或idxmin()
df.loc[df.groupby('Date')['Symbol'].idxmax()]
这将为您Date
提供每个Symbol
类别的所有最大值。
添加回答
举报
0/150
提交
取消