根据单词拆分数据框字符串并将它们存储在数据框列中
Split dataframe string based on words and store them in a dataframe column
在我的数据框中,我有一些名称,我想根据一些词拆分它。
数据帧(dff):
id name
1 Midian Almeida(Last)
2 Robert(ASA)(first)
3 Nikole John (middle)
4 Nikole John (first)
5 Raça Negra (last)
我想根据第一个、最后一个、中间的一个拆分它们
我尝试了以下部分
dff['name'].str.split('(first)|(last)|(middle)', expand=True).add_prefix('name_' )
它给出以下输出:
name_0
Midian Almeida
Robert(ASA)
Nikole John
Nikole John
Raça Negra
但我想将拆分的单词放在另一列中。
期望的输出是:
id name split option
1 Midian Almeida (Last)
2 Robert(ASA) (first)
3 Nikole John (middle)
4 Nikole John (first)
5 Raça Negra (last)
我该怎么做?
这包含您需要的内容:。
以下应该有效:
df.name.str.split(r'(\(Last\)|\(first\)|\(middle\))', expand=True)[[0, 1]]
您需要正则表达式的原因是因为您需要捕获组,在本例中是整个匹配字符串周围的括号。如果你想玩正则表达式以获得更好的感觉,你可以使用以下内容:https://regex101.com/
在我的数据框中,我有一些名称,我想根据一些词拆分它。
数据帧(dff):
id name
1 Midian Almeida(Last)
2 Robert(ASA)(first)
3 Nikole John (middle)
4 Nikole John (first)
5 Raça Negra (last)
我想根据第一个、最后一个、中间的一个拆分它们
我尝试了以下部分
dff['name'].str.split('(first)|(last)|(middle)', expand=True).add_prefix('name_' ) 它给出以下输出:
name_0
Midian Almeida
Robert(ASA)
Nikole John
Nikole John
Raça Negra
但我想将拆分的单词放在另一列中。 期望的输出是:
id name split option
1 Midian Almeida (Last)
2 Robert(ASA) (first)
3 Nikole John (middle)
4 Nikole John (first)
5 Raça Negra (last)
我该怎么做?
这包含您需要的内容:
df.name.str.split(r'(\(Last\)|\(first\)|\(middle\))', expand=True)[[0, 1]]
您需要正则表达式的原因是因为您需要捕获组,在本例中是整个匹配字符串周围的括号。如果你想玩正则表达式以获得更好的感觉,你可以使用以下内容:https://regex101.com/