【发布时间】:2020-03-29 18:42:32
【问题描述】:
我正在尝试在 Pandas 中筛选选定的时间段。 (添加图片)在输入框中输入开始和结束日期。
在索引列中找到“Day”,但是第三行给出了错误消息。
df = pd.read_excel('prices.xlsx', index_col=0)
df.iloc[::-1]
filtered_date = df[(df['Day'] >= 'start_date') & (df['Day'] <= 'end_date')]
我收到“KeyError”消息。如果字典中没有可用的键,我用谷歌搜索了 key_error 。我的代码中没有使用字典,也不知道如何修复它。键“Day”确实是第一个(索引)行的第一个值。
谢谢。
【问题讨论】:
-
df['Day'] >= 'start_date'你为什么要这样做? start_date 是一个 str 。你是不是想用字符串比较day列的值? -
我从一个输入框中输入值: date_entry = input('以YYYY-MM-DD格式输入开始日期') 年月日 = map(int, date_entry.split(' -')) start_date = datetime.date(year, month, day) 我想过滤开始日期和结束日期之间的时间段并获得一个新的数据框
-
请提供minimal reproducible example,以及完整的错误消息。此外,除非绝对必要,否则请不要将信息作为图像共享。请参阅:meta.stackoverflow.com/questions/303812/…、idownvotedbecau.se/imageofcode、idownvotedbecau.se/imageofanexception。