我正在尝试解决多字符的排序问题。下面是数据中的几行。
data = pandas.read_csv('data.csv')
data
001@|@02@|@ABC@|@IND123
002@|@02@|@ABC@|@IND223
003@|@02@|@ABC@|@IND333
004@|@02@|@ABC@|@IND443
我正在尝试使用以下代码:
res = re.split('@|@',data)
print(res)
001@|@02@|@ABC@|@IND123
['001', '|', '02', '|', 'ABC', '|', 'IND123']
请提出建议。
您应该转义管道,因为在正则表达式中,x|y
表示x
或y
,因此正则表达式在@
或@
处拆分数据。您还可以指定正则表达式分隔符作为pd.read_csv
的sep
参数,并让panda在读取数据时正确拆分数据。
pd.read_csv('data.csv', header = None, sep='@\|@', engine = 'python')
0 1 2 3
0 1 2 ABC IND123
1 2 2 ABC IND223
2 3 2 ABC IND333
3 4 2 ABC IND443