python - 正则表达式作为分隔符来读取 python (Pandas) 中的表

标签 python pandas

我想寻求一些帮助来阅读使用“|”的文本文件(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/

相关文章:

python - 导入导入 GPL 库的库?

python - 如何查找信号是否连接到任何东西

python - 如何打印除等于 0 的变量之外的所有已定义变量 - Python3

python, ipython运行交互脚本

python - Pandas 在第三个分隔符实例后拆分列?

python - 根据字符串值列对 pandas 数据框行进行排序

python - pandas 中是否有一个函数可以将行与匹配的标识符对齐并用 NaN 填充空白?

c# - 将用 python 编写的应用程序转换为 c# 有什么充分的理由吗?

python - 填写缺失的日期值并根据上一行填充第二列

python - keras/tensorflow 层的 "shape"和权重何时何地确定并存储?