Pandas:将一行字符串分隔为4列;问题:列用逗号、制表符和空格分隔



我有一个文本文件,我正试图将一行的条目分隔到一个新列。其中一行看起来像这样:

12:00,信息;这里有18个空格";ABC部分文本<

我开始喜欢这个

table = pd.read_table(file, 
sep=',',
names=['Time', 'ID'])

现在我有了一个包含两列的Dataframe:时间和ID但是我怎样才能把";ID";柱尤其是当条目用制表符和空格分隔时。

非常感谢!

您可以使用正则表达式模式来精确定义拆分字符串行的规则:

import pandas as pd
df = pd.DataFrame(data={
"A": [
"12:00, Info    ABC some texttmoretext"
]
})
# split on comma followed by a space OR 1+ whitespace (inc. tab) character 
df.A.str.split(r", |s+", expand=True)
0     1    2     3     4         5
0  12:00  Info  ABC  some  text  moretext

最新更新