[蟒蛇];分析器错误:指定的列太多

时间:2017-12-08 07:58:53

标签: python machine-learning pandas-datareader

我只想阅读一个简单的.csv文件,其中包含指定列类型的标头。 以下是代码:

import pandas as pd
url="https://www.dropbox.com/s/n6yt908tgetuq63/LasVegasTripAdvisorReviews-Dataset.csv?dl=0"
names=['User country','Nr. reviews','Nr. hotel reviews','Helpful 
votes','Score','Period of stay','Traveler Type','Pool','Gym','Tennis 
court','Spa','Casino','Free internet','Hotel name','Hotel stars','Nr. 
rooms','User continent','Member years','Review month','Review weekday']
data=pd.read_csv(url, names=names, header=0, delimiter=';', 
error_bad_lines=False)
print(data.shape)

OUT: -

  

ParserError:指定的列太多:预期为20,找到2

P.S:网址是公开的,可以访问

2 个答案:

答案 0 :(得分:1)

问题是URL不会直接导致.csv文件。它导致整个html页面。

您可以通过删除names参数

来查看

pd.read_csv(url, header=0, delimiter=';', error_bad_lines=False)

这成功执行,但在检查返回的值时,您将看到html代码和JavaScript脚本。

您需要做的是确保提供实际的csv作为输入(尝试.csv文件的其他来源)

答案 1 :(得分:0)

在dropbox网址中,只需将0替换为0,如下所示 https://www.dropbox.com/s/n6yt908tgetuq63/LasVegasTripAdvisorReviews-Dataset.csv?的 DL = 1

使文件直接下载