Python 熊猫:从extractall连接结果
我有一个dataframe,我想提取一个模式的所有出现,然后将它们作为单个字符串连接起来,成为原始dataframe的一个新列 例如:Python 熊猫:从extractall连接结果,python,pandas,Python,Pandas,我有一个dataframe,我想提取一个模式的所有出现,然后将它们作为单个字符串连接起来,成为原始dataframe的一个新列 例如: original = pd.DataFrame(["bonjour bonjour", "au revoir bonjour", "lala"]) 0 0 bonjour bonjour 1 au revoir bonjour 2 lala 预期结果:
original = pd.DataFrame(["bonjour bonjour", "au revoir bonjour", "lala"])
0
0 bonjour bonjour
1 au revoir bonjour
2 lala
预期结果:
0 1
0 bonjour bonjour bonjour, bonjour
1 au revoir bonjour bonjour
2 lala
我被困的地方:
extracted = original[0].str.extractall("(bonjour)")
0
match
0 0 bonjour
1 bonjour
1 0 bonjour
我无法管理这个结果,我真的不知道如何使用这个结构。它看起来很简单,但取决于我访问它的方式,我得不到我想要的东西。你需要使用
findall
而不是提取所有的信息
original['new'] = original[0].str.findall('bonjour').apply(','.join)
0 new
0 bonjour bonjour bonjour, bonjour
1 au revoir bonjour bonjour
2 lala
您需要使用
findall
而不是提取所有
original['new'] = original[0].str.findall('bonjour').apply(','.join)
0 new
0 bonjour bonjour bonjour, bonjour
1 au revoir bonjour bonjour
2 lala
它说“TypeError”:只能连接一个iterable
original[1]=original[0]。str.findall('bonjour')。str.join(',')
更快更简洁。它说“TypeError”:只能连接一个iterableoriginal[1]=original[0]。str.findall('bonjour')。str.join(',')
更快更简洁。