带日期索引的DataFrame按日期切片返回空DataFrame问题求助
各位好,我碰到一个头疼的问题:之前一直正常运行的函数,今天突然出问题了——本来应该返回一个截取后的小DataFrame,结果现在返回空的了。我发誓没动过这个函数的代码(当然,肯定是哪里有变化,只是我没察觉到🤦♂️)。
我在函数里加了几个打印语句,想搞清楚到底哪里出问题,下面是代码和输出:
from datetime import timedelta import pandas as pd def candlestick(df: pd.DataFrame, days=364): end_date = df.index.max() start_date = end_date - timedelta(days=days) print(f'start: {start_date}') print(f'end: {end_date}') print(df) graph_df = df[start_date:end_date] print(graph_df)
运行后得到的输出:
start: 2023-02-10
end: 2024-02-09id share_id Open High Low Close
Date
2024-02-09 1130794 246 134.51 135.74 132.92 135.49
2024-02-08 1130793 246 132.03 135.98 131.00 134.12
2024-02-07 1130792 246 126.63 128.21 126.36 128.08
2024-02-06 1130791 246 126.72 127.15 125.72 126.33
2024-02-05 1130790 246 127.99 127.99 126.52 126.75
... ... ... ... ... ... ...
2005-11-22 1126211 246 7.09 7.09 6.86 6.99
2005-11-21 1126210 246 7.05 7.19 6.96 7.18
2005-11-18 1126209 246 7.24 7.39 6.91 7.00
2005-11-17 1126208 246 8.06 8.35 6.80 7.05
2005-11-16 1126207 246 7.80 8.84 7.71 7.85
[4588 rows x 6 columns]Empty DataFrame
Columns: [id, share_id, Open, High, Low, Close]
Index: []
我感觉问题肯定很简单,但就是卡在这儿了,有没有朋友能给点思路,帮我找到问题所在呀?
备注:内容来源于stack exchange,提问作者Francois Franceschini

