( "Hello","Worl-6ren">
gpt4 book ai didi

python - 分离单词并按列计数并将它们分成两个单词

转载 作者:行者123 更新时间:2023-12-05 09:06:29 24 4
gpt4 key购买 nike

我有一个数据集:

<表类="s-表"><头>单词计数<正文>你好,世界世界,%,你好,德国德国,100,ML,德国

我的目标:

我希望代码能做到:

  • 分隔单词:( "Hello,World" ) ---> ( "Hello","World" )
  • 在彼此后面的新列中列出所有分隔的单词
  • 计算单词出现的频率并将结果放入“计数”中,例如它在“Words”列中找到两次世界“Hello”
<表类="s-表"><头>单词计数<正文>你好2世界2%11001机器学习1德国3

我做了什么:

“CL1”的类型是“object”

import pandas as pd
import re

separators = ","

def get_word_len(words: str) -> int:
return len(re.split(separators, words))

df["Count"] = df.Words.apply(get_word_len)

print(df)

但它计算的是每个单元格中的单词数,而不是列中重复的频率和次数。

最佳答案

上面的方法都可以用,而且效率很高。

添加另一种使用 str.dummiesdf.sum 的方法

df['Words'].str.get_dummies(",").sum()

% 1
100 1
Germany 1
Hello 2
ML 1
World 2
dtype: int64

df['Words'].str.get_dummies(",").sum().rename_axis("Words").reset_index(name='Counts')

Words Counts
0 % 1
1 100 1
2 Germany 1
3 Hello 2
4 ML 1
5 World 2

关于python - 分离单词并按列计数并将它们分成两个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66012407/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com