0
我想創建一個新的熊貓列,方法是在另一列中的單詞列表中運行單詞詞幹功能。我可以通過使用apply和lambda來標記一個字符串,但我無法弄清楚如何將這個外推到在單詞列表上運行的情況。用pandas dataframe中的函數列表創建列表
test = {'Statement' : ['congratulations on the future','call the mechanic','more text'], 'Other' : [2,3,4]}
df = pd.DataFrame(test)
df['tokenized'] = df.apply (lambda row: nltk.word_tokenize(row['Statement']), axis=1)
我知道我可以用一個嵌套循環解決這個問題,但似乎效率低下,導致SettingWithCopyWarning:
df['stems'] = ''
for x in range(len(df)):
print(len(df['tokenized'][x]))
df['stems'][x] = row_stems=[]
for y in range(len(df['tokenized'][x])):
print(df['tokenized'][x][y])
row_stems.append(stemmer.stem(df['tokenized'][x][y]))
是不是有更好的辦法來做到這一點?
編輯:
這裏的結果應該是什麼樣子的例子:
Other Statement tokenized stems
0 2 congratulations on the future [congratulations, on, the, future] [congratul, on, the, futur]
1 3 call the mechanic [call, the, mechanic] [call, the, mechan]
2 4 more text [more, text] [more, text]
難道你的結果應該是什麼樣子的例子編輯? –