我正在尝试将索引字符串更改为index,这是熊猫数据框中的日期时间。
High Low Open Close Volume Adj Close
Date
1987-12-31 1.535714 1.495536 1.517857 1.500000 29400000.0 1.200883
1988-01-04 1.598214 1.508929 1.526786 1.598214 82600000.0 1.279513
1988-01-05 1.651786 1.580357 1.642857 1.593750 77280000.0 1.275938
1988-01-06 1.607143 1.562500 1.607143 1.562500 67200000.0 1.250920
1988-01-07 1.598214 1.517857 1.553571 1.589286 53200000.0 1.272364
... ... ... ... ... ... ...
2007-12-24 28.475714 27.827143 27.861429 28.400000 120050700.0 24.785059
2007-12-26 28.708570 28.117144 28.430000 28.421429 175933100.0 24.803761
2007-12-27 28.994286 28.257143 28.421429 28.367144 198881900.0 24.756376
2007-12-28 28.794285 28.125713 28.655714 28.547142 174911800.0 24.913471
2007-12-31 28.642857 28.250000 28.500000 28.297142 134833300.0 24.695290
要更改日期格式,我尝试使用
data['Date'] = data.to_datetime(data['Date'], format ='%Y-%m-%d')
但是我遇到以下错误:
如何将索引更改为日期时间格式?
AttributeError: 'DataFrame' object has no attribute 'to_datetime'
答案 0 :(得分:1)
pandas.to_datetime()
不是数据框对象上的方法,而是pandas
模块本身的方法。 (Docs)
无法使用df['Date']
访问索引。此语法用于访问列。
如果要访问索引并将其类型更改为DateTime,请尝试以下操作:
data.index = pd.to_datetime(data.index, format ='%Y-%m-%d')
答案 1 :(得分:1)
好像您正在尝试修改名为Date的索引。它不是列。试试这个。
data.index = pd.to_datetime(df.index, format ='%Y-%m-%d')
答案 2 :(得分:0)
您的日期列中的单元格是字符串吗?您应该获取日期列,并使用datetime库获取每个字符串为日期时间。