Python 如何解决:值错误:时间数据';1901年1月&x27年;与格式不匹配';%Y-%m
代码: 错误: 值错误:时间数据“1901年1月”与格式“%Y-%m”不匹配Python 如何解决:值错误:时间数据';1901年1月&x27年;与格式不匹配';%Y-%m,python,pandas,python-datetime,Python,Pandas,Python Datetime,代码: 错误: 值错误:时间数据“1901年1月”与格式“%Y-%m”不匹配 编辑:在测试数据之后,似乎只有年份的最后一位数字,因此对于解析1-12到2001-12-01,必须使用: import pandas as pd import seaborn as sb import matplotlib.pyplot as plt import numpy as np import datetime as dt %matplotlib inline def parser(x): return
编辑:在测试数据之后,似乎只有年份的最后一位数字,因此对于解析
1-12
到2001-12-01
,必须使用:
import pandas as pd
import seaborn as sb
import matplotlib.pyplot as plt
import numpy as np
import datetime as dt
%matplotlib inline
def parser(x):
return dt.datetime.strptime('19'+x, '%Y-%m')
series = pd.read_csv('datasets/shampoo_sales.csv', header=0, parse_dates=[0], index_col=0, squeeze=True, date_parser=parser)
print(series.head())
仍然给出错误:TypeError:只能将str(而不是“float”)连接到str@Pavan-编辑答案。如果仍然不工作,如果不信任,是否可以共享数据?数据集在kaggle:link:@jasrael中可用数据集有其他字符串,因此我得到了第二个错误。。否则你的建议就行了。。thanks@Pavan-现在我很困惑,你的解决方案完美吗?
def parser(x):
return dt.datetime.strptime('200'+x, '%Y-%m')
series = pd.read_csv('shampoo.csv',
header=0,
parse_dates=[0],
index_col=0,
squeeze=True,
date_parser=parser)
print(series.head())
Month
2001-01-01 266.0
2001-02-01 145.9
2001-03-01 183.1
2001-04-01 119.3
2001-05-01 180.3
Name: Sales, dtype: float64