关于单列计算功能的问题

时间:2019-07-31 14:46:28

标签: python nltk

我对熊猫/ NLTK问题有疑问。

我的数据框如下所示:

Name    Age     Text
Anne    23     "foo you"
Joan    20     "woo you"
Marie   28     "boo you"
John    31     "moo you"
Mark    37     "loo you"

我需要使用NLTK python库计算一个新列,如下所示:

Name    Age     Text        Tokens
Anne    23    "foo you"      ['foo','you']
Joan    20    "woo you"      ['woo','you']
Marie   28    "boo you"      ['boo','you']
John    31    "moo you"      ['moo','you']
Mark    37    "loo you"      ['loo','you']

我正在使用以下代码:

df['tokens'] = nltk.word_tokenize(df['text'])

但是我收到一个错误,因为它每行存储一个令牌,而不是对应行上的所有令牌。

任何帮助都将受到欢迎。

非常感谢您。

1 个答案:

答案 0 :(得分:0)

df['Tokens'] = df['Text'].str.replace('"', '').apply(nltk.word_tokenize)
    Name    Age Text        Tokens
0   Anne    23  "foo you"   ['foo', 'you']
1   Joan    20  "woo you"   ['woo', 'you']
2   Marie   28  "boo you"   ['boo', 'you']
3   John    31  "moo you"   ['moo', 'you']
4   Mark    37  "loo you"   ['loo', 'you']