我使用python和pandas来获取Yahoo股票的市场日期并保存到本地的csv文件中。
DailyPrice = pd.read_csv(file, index_col=0)
print(DailyPrice.tail())
Date
2020-05-27 86.480003 84.370003 86.300003 86.180000 1917600.0
2020-05-28 87.849998 86.059998 86.870003 86.690002 1908700.0
然后我更新日期。
History = pdr.DataReader(ticker, start=Before_yesterday, end=Today, data_source='yahoo')
print(History.tail())
Date
2020-06-29 87.360001 86.110001 86.559998 87.290001 1302500.0 87.290001
2020-06-30 88.379997 87.235001 87.330002 88.269997 236377.0 88.269997
然后我附加日期
DailyPrice = DailyPrice.append(History)
print(DailyPrice.tail())
Date
2020-05-27 86.480003 84.370003 86.300003 86.180000 1917600.0
2020-05-28 87.849998 86.059998 86.870003 86.690002 1908700.0
2020-06-29 00:00:00 87.360001 86.110001 86.559998 87.290001 1302500.0
2020-06-30 00:00:00 88.379997 87.235001 87.330002 88.269997 236377.0
所以,我的问题是: 我该如何格式化日期列,就像%Y-%m-%d一样,而没有时间hh:mm:ss?
答案 0 :(得分:0)
答案 1 :(得分:0)
好像您有DatetimeIndex,则可以尝试使用strftime
DailyPrice.index = DailyPrice.index.strftime('%Y-%m-%d')
答案 2 :(得分:0)
我想我找到了问题。
日期不是列的名称。
DailyPrice.columns.values.tolist()
['High', 'Low', 'Open', 'Close', 'Volume', 'Adj Close']
那么第一列日期是什么?
日期是索引。
终于,问题解决了。
DailyPrice.index = pd.to_datetime(DailyPrice.index, format = '%Y-%m-%d')