在python中写入和读取csv文件
我有一个在python中写入和读取csv文件,python,pandas,csv,unicode,Python,Pandas,Csv,Unicode,我有一个文本文件,其中包含非英语字母的单词,我想打开它,进行一些预处理,最后将其保存为csv文件。 在别的地方使用它 读取和存储文件的代码: with open('file.txt', encoding="utf-8") as f: train = f.read().splitlines() 然后创建一个数据帧,以及存储该数据帧的代码: df.to_csv('file.csv', index=True, encoding="utf-8") 到目前为止,一切似乎都正常,但当我尝试用以
文本
文件,其中包含非英语字母的单词,我想打开它,进行一些预处理,最后将其保存为csv
文件。
在别的地方使用它
读取和存储文件的代码:
with open('file.txt', encoding="utf-8") as f:
train = f.read().splitlines()
然后创建一个数据帧,以及存储该数据帧的代码:
df.to_csv('file.csv', index=True, encoding="utf-8")
到目前为止,一切似乎都正常,但当我尝试用以下代码打开文件.csv时:
train = pd.read_csv('file.csv', encoding="utf-8")
import pandas as pd
with open('persian.txt', encoding="utf-8") as f:
train = f.read().splitlines()
df = pd.DataFrame({'text': train})
df.to_csv('file.csv', index=True, encoding="utf-8")
train = pd.read_csv('file.csv', encoding="utf-8")
我面对这个问题:
Process finished with exit code -1073740940 (0xC0000374)
不去下一行
另外,当我尝试用ISO-8859-1编码打开它时,它还可以;但是当我试图打印csv的头部时,它只打印一些问号(“?”)
有人知道出了什么问题吗
任何形式的帮助都将不胜感激。我尝试用以下代码复制它:
train = pd.read_csv('file.csv', encoding="utf-8")
import pandas as pd
with open('persian.txt', encoding="utf-8") as f:
train = f.read().splitlines()
df = pd.DataFrame({'text': train})
df.to_csv('file.csv', index=True, encoding="utf-8")
train = pd.read_csv('file.csv', encoding="utf-8")
使用包含两行波斯文本示例的txt文件。它在Python 3中运行时没有任何问题,生成了以下csv:
text
0 همهٔ افراد بشر آزاد به دنیا میآیند و حیثیت و حقوق شان با هم برابر است
1 همه اندیشه و وجدان دارند و باید در برابر یکدیگر با روح برادری رفتار کنند.
您能否提供更多关于文本属性和数据帧处理中所做操作的详细信息,或者确定读取中断的行?您可能正在生成一些无效字符。在CSV文件中编写波斯语让我抓狂。最后,这一条对我起了作用:
data.to_csv (r'hi.csv', encoding='utf-8-sig')
可能是编码问题。源文件中有特殊字符吗?因为它是一些新闻的文本,所以所有内容都可能在其中。它不是英语。它是什么语言?它是波斯语。该过程包含对每行读取数据的简单拆分。此外,该文件约为1.5千兆,我看不出其中的特殊字符。是否有任何方法可以忽略基于特殊字符的错误,或者忽略前面一致的其他编码?