我有一栏推特。我想使用正则表达式获取推文内所有提及的列表:
'zeroingMatrix{'i '}'
我尝试使用\@(\w+)
,但是匹配整个单词并不成功,因为它需要(我的猜测)将每个单词分成多个列。我收到以下错误
df.Tweets.str.extractall('\@(\w+)')
我会说AssertionError: 1 columns passed, passed data had 15 columns.
按预期工作并返回结果但只返回第一个字母。整个单词的'\@(\w)'
可能是根。
这是来自Kaggle的ISIS数据集。例如,第一场比赛是在
+
使用'Aslm Please share our new account after the previous one was suspended.@KhalidMaghrebi @seifulmaslul123 @CheerLeadUnited'
工作正常,但只找到第一个。
使用.extract()
我得到:
.extractall('\@(\w)')
这是有道理的。但是提取所有完整的单词会产生错误。
答案 0 :(得分:1)
显然pandas看起来将组分为列,因此解决方案是将所有正则表达式也作为一个组包装。
df.Tweets.str.extractall('(\@(\w+))')
区别是字符串中的包裹括号。