问题描述
我有一个包含多个单词和字符的大型 txt 文件,我正在尝试将该文件读入一个 Pandas 数据帧,每个单词或字符位于不同的行中。
问题是 " 是字符之一,函数将两个 " 之间的所有单词作为一个单词读取(因为引用)。
如何将这个字符作为另一个常规字符而不是引用字符来处理?我尝试使用 read_csv 函数的参数,但无法修复它。
我现在的代码:data = pd.read_csv(filepath,header=None,delimiter = "\t")
提前致谢!
解决方法
你可以使用参数quotechar
data = pd.read_csv("a.txt",delim_whitespace=True,header=None,quotechar="~")
print(data.head())
a.txt
abc def xyz
"abc xyz" def
输出
0 1 2
0 abc def xyz
1 "abc xyz" def
这条路还剩下一些报价。
,尝试通过 numpy 的 genfromtxt()
方法:
import numpy as np
data=np.genfromtxt('data.csv',dtype='str',delimeter='\t',skip_header=1)
columns=np.genfromtxt('data.csv',delimiter='\t',skip_footer=len(data))
最后:
df=pd.Dataframe(data=data,columns=columns)