如何将带有多个字符的定界符的 .text 解析为 pandas df?

How can I parse a .txt with a delimiter that has multiple characters into a pandas df?

我有一个 数据集,我想在 python 和 pandas 中进行分析。它全部包含在 .txt 中,但分隔符是 +++$+++。我该如何解析呢?

import pandas as pd
df = pd.read_csv('filename.txt', sep='+++$+++', header=None)

这两行报错:

sre_constants.error: nothing to repeat

那是因为如果分隔符超过 1 个字符,它将被解释为正则表达式,如 http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html 中所述;所以 + 表示 "any number of matches of the before char",没有,所以有 "nothing to repeat".

我认为转义符号可能有效。

虽然回答晚了。我今天遇到了同样的问题。我的解决方案是:

pd.read_table('test.txt',header=None,sep=' \+\+\+$\+\+\+ ', engine='python')

这非常有效。