我无法弄清楚我尝试加载的 csv 文件有什么问题:
我收到如下错误消息:
b'Skipping line 2120260: expected 6 fields, saw 8\n'
但是当我查看这些线条时,它们对我来说看起来还不错。见下文——(我将在每个选项卡 \t 后按 Enter 以使其更易于阅读)。
第 2,120,260 行(失败):
['user_000104\t
2005-09-12T06:25:50Z\t
a019a8cf-2601-4a81-b3c3-7b279a873713\t
Anne Clark\t
8f8e6bc0-c3c0-4062-875a-773a1de6206f\t
Empty Me']
第 9,000 行(未失败):
['user_000001\t
2008-06-15T17:28:31Z\t
a3031680-c359-458f-a641-70ccbaec6a74\t
Steve Reich\t
2991db42-3b19-4344-a340-605ac3fbd7e9\t
Drumming: Part Iv']
如果有人想亲自尝试,请下载:
http://www.dtic.upf.edu/~ocelma/MusicRecommendationDataset/lastfm-1K.html
并运行:
inpFile2 = pd.read_csv(fPath, sep='\t', error_bad_lines= False)
产生错误。和:
def checkRow(path,N):
with open(path, 'r') as f:
print("This is the line.")
print(next(itertools.islice(csv.reader(f), N, None)))
查看错误行(传入文件路径和您感兴趣的行)。确保导入 csv 并导入 itertools。
use*_*806 15
好吧,我设法弄明白了。
解决方案是quoting=csv.QUOTE_NONE在 read_csv 命令中用作参数。
inpFile = pd.read_csv(fPath, sep='\t', error_bad_lines= False,quoting=csv.QUOTE_NONE)
原因是其中一个字段中存在双引号,这导致 Pandas 感到困惑,因此需要告诉它不要寻找字符串/引号。进行上述更改似乎已加载它。
| 归档时间: |
|
| 查看次数: |
11597 次 |
| 最近记录: |