我想寻求一些帮助来阅读使用“|”的文本文件(Python 2.7,pandas 库)作为分隔符,但您也可以在记录中找到相同的字符,后跟空格。前两行没有问题,但第三行在第6个字段之间有分隔符TAT Fans |南方
1. 4_230_0415_99312||||9500|Gedung|||||||||15000|6.11403|102.23061
2. 4_230_0415_99313||||9500|Pakatan|||||||||50450|3.15908|101.71431
3. 4_230_0117_12377||||9990|TAT Fans | Southern||||||||||3.141033333|101.727125
我一直在尝试在分隔符中使用正则表达式,但我无法让它工作:
pd.read_table("text_file.txt", sep = "\S+\|\S+")
谁能帮我找到解决问题的方法? 非常感谢!
最佳答案
您可以使用 "\s?[|]+\s?"
import pandas as pd
pd.read_table("text_file.txt", sep="\s?[|]+\s?") #or "\s?\|+\s?"
Out[18]:
4_230_0415_99312 9500 Gedung 15000 6.11403 102.23061
0 4_230_0415_99313 9500 Pakatan 50450 3.159080 101.714310
1 4_230_0117_12377 9990 TAT Fans Southern 3.141033 101.727125
关于python - 正则表达式作为分隔符来读取 python (Pandas) 中的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49275656/