新年快樂,大家我有大 df 文本:
target = [['cuantos festivales conciertos sobre todo persona perdido esta pandemia'],
['existe impresión estar entrando últimos tiempos pronto tarde mayoría vivimos sufriremos'],
['pandemia sigue hambre acecha humanidad faltaba mueren inundaciones bélgica alemania'],
['nombre maría ángeles todas mujeres sido asesinadas hecho serlo esta pandemia lugares de trabajo']]
和 4 組詞,如:
words1 = ['festivales', 'pandemia', 'lugares de trabajo', 'mueren', 'faltaba']
words2 = ['persona ', 'faltaba', 'entrando', 'sobre']
此外,集合中的單詞可能包含空格,例如'lugares de trabajo'
我需要計算串列中的單詞在總和的每一行中出現的次數(我不需要其中一個單詞出現多少次)所以結果 df好像
word_set1 word_set_2
1 1 1
2 0 1
3 2 1
4 1 0
我嘗試這個計數(然后我打算總結結果)
for terms in words1:
df[str(terms)] = map(lambda x: x.count(str(terms)), target['tokenized'])
但得到 TypeError: object of type 'map' has no len()
我怎么數詞?預先感謝您的回答
uj5u.com熱心網友回復:
我們可以使用該str.count方法來獲得預期的結果:
df['word_set1'] = df['text'].str.count('|'.join(words1))
df['word_set2'] = df['text'].str.count('|'.join(words2))
輸出 :
text word_set1 word_set2
0 cuantos festivales conciertos sobre todo perso... 2 2
1 existe impresión estar entrando últimos tiempo... 0 1
2 pandemia sigue hambre acecha humanidad faltaba... 3 1
3 nombre maría ángeles todas mujeres sido asesin... 2 0
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/400827.html
上一篇:如何比較熊貓資料框的列?
下一篇:從字典中提取元素并創建資料框
