我正在关注this教程,并且我在开始时遇到了问题。我已经通过点击“导出”然后“CSV(,)”从here下载了数据集。
使用教程中提出的以下代码片段
# load and plot dataset
from pandas import read_csv
from pandas import datetime
from matplotlib import pyplot
# load dataset
def parser(x):
return datetime.strptime('190'+x, '%Y-%m')
series = read_csv('shampoo-sales.csv', header=0, parse_dates=[0], index_col=0, squeeze=True, date_parser=parser)
# summarize first few rows
print(series.head())
# line plot
series.plot()
pyplot.show()
我收到以下错误:
time data '190Sales of shampoo over a three year period' does not match format '%Y-%m'
我该怎么办?
答案 0 :(得分:1)
shampoo-sales.csv
的末尾是(意外)行
Sales of shampoo over a three year period
您的parser()
正在尝试将190
置于其前面:
190Sales of shampoo over a three year period
然后按提供的模式'%Y-%m'
进行转换,以便获得上述错误。
从<{1}}中删除该行(不要忘记保存),您的程序就会运行。
答案 1 :(得分:0)
如果无法查看CSV文件,我猜第一行和第一列是“三年内洗发水的销售额”
看看head()
正在返回的内容。我打赌那里有一个标题行。