Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pandas 我如何计算doc_id的数量,它包含数据帧中的每个单词?_Pandas - Fatal编程技术网

Pandas 我如何计算doc_id的数量,它包含数据帧中的每个单词?

Pandas 我如何计算doc_id的数量,它包含数据帧中的每个单词?,pandas,Pandas,我有两列的数据框。 此数据框显示word出现在哪个文档(doc_id)中。一个词可能出现在多个文档中 doc_id word 1 One 1 Two 1 Three 1 John 2 One 2 John 2 Eva 3 One 3 Eva 文档id字 一个 一二 13 1约翰 二一 约翰 2 Eva 三一 3 Eva 我想获取dataframe,它显示每个单词出现的文档数,以及该指标的

我有两列的数据框。 此数据框显示word出现在哪个文档(doc_id)中。一个词可能出现在多个文档中

doc_id word 1 One 1 Two 1 Three 1 John 2 One 2 John 2 Eva 3 One 3 Eva 文档id字 一个 一二 13 1约翰 二一 约翰 2 Eva 三一 3 Eva 我想获取dataframe,它显示每个单词出现的文档数,以及该指标的份额(100*count of documents/total of documetns),按计数排序

因此,结果必须如下数据帧所示:

word doc_count share One 3 100% John 2 66.67% Eva 2 66.67% Two 1 33.33% Three 1 33.33% word文档计数共享 1 3 100% 约翰2 66.67% Eva 2 66.67% 两个1 33.33% 三个1 33.33% 如何在Python中使用pandas?

df.groupby('word')['doc\u id'].nunique()
df['doc\u id'].nuquie()
?使用
df.groupby('word').agg(doc\u count=('doc\u id',nunique'))。分配(share=lambda s:s['doc\u count']/s['doc count'].max()*100)。对值进行排序('doc count',=False)