我有一个包含 6 个空格分隔字段的文本文件,如下所示:
702377236289228800 2016-02-24 09:19:17 +03 <Aadil_Siddiqui> #HECRanking Rs71 Bil bdget alloctd 2 HEC is not in gud hands. v can imagne dat on which criteria #HEC is sending studnts abroad on Scholrshp
我想将 6 个字段读入 pandas DF,但将分隔符设置为空格会出现以下错误。
pandas.errors.ParserError:标记数据时出错。 C 错误:第 10 行预计有 31 个字段,但看到了 35
这是代码:
data = pd.read_csv("twitter_file_path.txt", sep=" ", header=None)
data.columns = ["seq", "date", "Hour", "GMT","userID","text"]
最佳答案
您可以读取一列中的所有数据,并使用 |
等文本中不存在的分隔符,然后对于新列使用 Series.str.split
带有 n
参数并且没有分隔符,因为空格是默认的 sep:
data = pd.read_csv("twitter_file_path.txt", sep="|", names=['data'])
print (data)
data
0 702377236289228800 2016-02-24 09:19:17 +03 <Aa...
data = data['data'].str.split(n=5, expand=True)
data.columns = ["seq", "date", "Hour", "GMT","userID","text"]
print (data)
seq date Hour GMT userID \
0 702377236289228800 2016-02-24 09:19:17 +03 <Aadil_Siddiqui>
text
0 #HECRanking Rs71 Bil bdget alloctd 2 HEC is no...
关于python pandas 读取空格分隔的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59113832/