[英]Counting language frequencies in a pandas data frame using langdetect
我想在推文数据集中找到不同语言的频率。 我最终只想使用英文推文,但也想找出其他语言的频率。
我已经使用 langdetect 在我的数据集中检测到推文的语言,现在我想计算每种语言的频率。 这是我检测语言的代码:
from langdetect import detect
import pandas as pd
data_path = "./output_1.csv"
df = pd.read_csv(data_path, index_col=0)
for index, row in df.iterrows():
print(detect(row['text']))
if detect(row['text']) == "en":
print(row['text'])
我想使用列表属性计数来计算频率:
using the list i = ['en','fr','es','it','cs','pt']
d = {x:i.count(x) for x in i}
print d
如何对使用 langdetect 获得的数据使用 count 属性?
要创建包含您可以执行的语言的单独列:
df['language'] = df['text'].apply(lambda x: detect(x))
然后计算您可以执行的频率:
pd.DataFrame(df.groupby('language').text.count().sort_values(ascending=False))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.