根据预定义的选项列表将Python DF列拆分为2列

根据预定义的选项列表将Python DF列拆分为2列,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个如下所示的数据帧: print(df): Text John Smith abc def ghi jkl Michael Smith abc def ghi jkl Liz Jones abc def ghi jkl print(df): Name | Information John Smith | abc def ghi jkl Michael Smith | abc def ghi jkl

我有一个如下所示的数据帧:

print(df):

Text
John Smith abc def ghi jkl
Michael Smith abc def ghi jkl
Liz Jones abc def ghi jkl
print(df):

Name             |          Information
John Smith       |        abc def ghi jkl
Michael Smith    |        abc def ghi jkl
Liz Jones        |        abc def ghi jkl
我还有一个预定义的要查找的人员列表,并将上述内容分为两列

names = ('John Smith','Michael Smith','Liz Jones')
我希望得到以下信息:

print(df):

Text
John Smith abc def ghi jkl
Michael Smith abc def ghi jkl
Liz Jones abc def ghi jkl
print(df):

Name             |          Information
John Smith       |        abc def ghi jkl
Michael Smith    |        abc def ghi jkl
Liz Jones        |        abc def ghi jkl
我试过:

df['Name','Information'] = df['Text'].str.split(names)
但是我认为str.split需要一个字符串,不需要一个名字列表。是否仍然可以从定义的列表中拆分列

任何帮助都将不胜感激。非常感谢

对于正则表达式或,通过
|
将所有名称连接起来,然后对于所有其他值:

names = ('John Smith','Michael Smith','Liz Jones')

df = df['Text'].str.extract(f'(?P<Name>{"|".join(names)})(?P<Information>.*)')
print (df)
           Name       Information
0     John Smith   abc def ghi jkl
1  Michael Smith   abc def ghi jkl
2      Liz Jones   abc def ghi jkl
或:

df[['Name','Information']]=df.pop('Text').str.extract(f'(?P{“|”).join(names)}(.*))
打印(df)
姓名信息
0约翰·史密斯abc def ghi jkl
1迈克尔·史密斯abc def ghi jkl
2 Liz Jones abc def ghi jkl
对正则表达式或使用
|
连接的所有名称,然后对所有其他值使用:

names = ('John Smith','Michael Smith','Liz Jones')

df = df['Text'].str.extract(f'(?P<Name>{"|".join(names)})(?P<Information>.*)')
print (df)
           Name       Information
0     John Smith   abc def ghi jkl
1  Michael Smith   abc def ghi jkl
2      Liz Jones   abc def ghi jkl
或:

df[['Name','Information']]=df.pop('Text').str.extract(f'(?P{“|”).join(names)}(.*))
打印(df)
姓名信息
0约翰·史密斯abc def ghi jkl
1迈克尔·史密斯abc def ghi jkl
2 Liz Jones abc def ghi jkl