为实现文本去重(将前面采集的数据进行两两对比删除重复),写了以下代码。

#-*- coding: utf-8 -*-
import pandas as pd

inputfile = 'e:/data/H_KJ300F-JAC2101W.txt' #评论文件
outputfile = 'e:/data/H_KJ300F-JAC2101W_process_1.txt' #评论处理后保存路径
data = pd.read_csv(inputfile, encoding = 'utf-8', header = None)
l1 = len(data)
data = pd.DataFrame(data[0].unique())
l2 = len(data)
data.to_csv(outputfile, index = False, header = False, encoding = 'utf-8')
print(u'删除了%s条评论。' %(l1 - l2))

报错:

Traceback (most recent call last):  File "<stdin>", line 1, in <module>    return _read(filepath_or_buffer, kwds)  File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 401, in _read    data = parser.read()  File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 939, in read    ret = self._engine.read(nrows)  File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 1508, in read    data = self._reader.read(nrows)  File "pandas\parser.pyx", line 848, in pandas.parser.TextReader.read (pandas\parser.c:10415)  File "pandas\parser.pyx", line 870, in pandas.parser.TextReader._read_low_memory (pandas\parser.c:10691)  File "pandas\parser.pyx", line 924, in pandas.parser.TextReader._read_rows (pandas\parser.c:11437)  File "pandas\parser.pyx", line 911, in pandas.parser.TextReader._tokenize_rows (pandas\parser.c:11308)  File "pandas\parser.pyx", line 2024, in pandas.parser.raise_parser_error (pandas\parser.c:27037)pandas.io.common.CParserError: Error tokenizing data. C error: Expected 1 fields in line 360, saw 2>>> data =pd.read_csv(inputfile,encoding ='utf-8',header = None)    data = self._reader.read(nrows)  File "pandas\parser.pyx", line 848, in pandas.parser.TextReader.read (pandas\parser.c:10415)>>>   File "pandas\parser.pyx", line 911, in pandas.parser.TextReader._tokenize_rows (pandas\parser.c:11308)  File "pandas\parser.pyx", line 2024, in pandas.parser.raise_parser_error (pandas\parser.c:27037)pandas.io.common.CParserError: Error tokenizing data. C error: Expected 1 fields in line 361, saw 2  File "pandas\parser.pyx", line 870, in pandas.parser.TextReader._read_low_memory (pandas\parser.c:10691)  File "pandas\parser.pyx", line 924, in pandas.parser.TextReader._read_rows (pandas\parser.c:11437)    ret = self._engine.read(nrows)  File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 1508, in read    data = parser.read()  File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 939, in read    return _read(filepath_or_buffer, kwds)  File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 401, in _read  File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 646, in parser_fTraceback (most recent call last):  File "<stdin>", line 1, in <module>

解决:把整个文件里面的半角","换成全角",“

原因:没有设定分隔符的情况下,默认使用","作为分隔条符。

Python Pandas read_csv报错的更多相关文章

  1. pandas.read_csv() 报错 OSError: Initializing from file failed,报错原因分析和解决方法

    今天调用pandas读取csv文件时,突然报错“ OSError: Initializing from file failed ”,我是有点奇怪的,以前用的好好的,read_csv(path)方法不是 ...

  2. read_csv报错Initializing from file failed

    Python版本:Python 3.6 pandas.read_csv() 报错 OSError: Initializing from file failed,一般由两种情况引起:一种是函数参数为路径 ...

  3. 【python】python读取文件报错UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position 2: illegal multibyte sequence

    python读取文件报错UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position 2: illegal multibyte ...

  4. 【python】python安装tensorflow报错:python No matching distribution found for tensorflow==1.12.0

    python安装tensorflow报错:python No matching distribution found for tensorflow==1.12.0 python版本是3.7.2 要安装 ...

  5. mac下python环境pip报错[SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590) 的解决方法

    1.mac下python环境pip报错: issuserdeMacBook-Pro:~ issuser$ pip install pyinstallerCollecting pyinstaller  ...

  6. Django中修改DATABASES后,执行python manage.py ****报错!UnicodeEncodeError

    Django中修改DATABASES后,执行python manage.py ****报错!UnicodeEncodeError: 'latin-1' codec can't encode chara ...

  7. python 安装模块报错 response.py", line 302, in _error_catcher

    python 安装模块报错 Exception:Traceback (most recent call last): File "/usr/share/python-wheels/urlli ...

  8. 【原创】大叔经验分享(11)python引入模块报错ImportError: No module named pandas numpy

    python应用通常需要一些库,比如numpy.pandas等,安装也很简单,直接通过pip # pip install numpyRequirement already satisfied: num ...

  9. python读取文件报错:pandas.errors.ParserError: iterator should return strings, not bytes (did you open the file in text mode?)

    python 读取csv文件报错问题 import csv with open('E:/Selenium2script/DDT模块/test.csv','rb') as f: readers = cs ...

随机推荐

  1. NOIP模拟赛-2018.11.7

    NOIP模拟赛 如果用命令行编译程序可以发现没加头文件之类的错误. 如果用命令行编译程序可以发现没加头文件之类的错误. 如果用命令行编译程序可以发现没加头文件之类的错误. 编译之前另存一份,听说如果敲 ...

  2. 重复子串(string)

    从\(ckw\)博客上看来的题目,可能是正睿oj上的,但我想我这样没有氪金的自然是写不了的,就口胡一波吧 题意:给定一个字符串,多组询问,每次询问一个子串的权值:一个字符串的权值定义为这个字符串里出现 ...

  3. 用BCP从SQL Server 数据库中导出Excel文件

    BCP(Bulk Copy Program)是一种简单高效的数据传输方式在SQL Server中,其他数据传输方式还有SSIS和DTS. 这个程序的主要功能是从数据库中查询Job中指定step的执行信 ...

  4. Underscore.js 入门

    Underscore封装了常用的JavaScript对象操作方法,用于提高开发效率.将它单独运用到任何一个页面.(另外,Underscore还可以被使用在Node.js运行环境.) 在学习Unders ...

  5. threedLocal设计原因及详解

    ThreedLocal在中文的翻译中应该翻译成:线程局部变量. 1:设计的原因 在并发编程的时候,成员变量如果不做任何处理其实是线程不安全的,各个线程都在操作同一个变量,显然是不行的,并且我们也知道v ...

  6. Java使用PropertyDescriptor获取实体类中私有属性的值,并给私有属性赋值

    大家都知道Java类中的私有的(private)属性是获取不到的(即使使用继承依然获取不到),那如果非要获取私有属性的值怎么办呢?一般的做法是将该java类封装称为一个JavaBean,即封装该私有属 ...

  7. jqgrid 启用键盘操作bindKeys

    给jqgrid启用键盘操作,代码如下: // the bindKeys() 启用键盘操作 $("#jqGrid").jqGrid('bindKeys'); 启动后,比如可以使用上下 ...

  8. MVC在母版页设置子页面的css和js引用布局

    1.在母版页中指定子页面css和js布局 @RenderSection("Styles", false) @RenderSection("Scripts", f ...

  9. jquery訪问ashx文件演示样例

    .ashx 文件用于写web handler的..ashx文件与.aspx文件类似,能够通过它来调用HttpHandler类,它免去了普通.aspx页面的控件解析以及页面处理的过程.事实上就是带HTM ...

  10. [Usaco2009 Feb]Revamping Trails 道路升级 BZOJ1579

    分析: 比较裸的分层图最短路,我的实现方式是,每次求出1所有节点的最短路,之后用每一个节点更新与其相连的节点(取较小值),之后做K次,就求出了分层图的最短路了. 附上代码: #include < ...