Amr*_*hna 3 python dataframe pandas
我有一个DataFrame,我有以下数据.每行代表一个出现在电视剧每集中的单词.如果一集中出现3次单词,则pandas数据框有3行.现在我需要过滤一个单词列表,这样我只能得到大于或等于2次的单词.我可以这样做groupby
,但如果一个单词出现2(或说3,4或5)次,我需要两行(3,4或5)行.
通过groupby,我将只获得唯一的条目和计数,但我需要重复该对话的次数.这样做有一个单行吗?
dialogue episode
0 music 1
1 corrections 1
2 somnath 1
3 yadav 5
4 join 2
5 instagram 1
6 wind 2
7 music 1
8 whimpering 2
9 music 1
10 wind 3
Run Code Online (Sandbox Code Playgroud)
所以我应该理想地得到,
dialogue episode
0 music 1
6 wind 2
7 music 1
9 music 1
10 wind 3
Run Code Online (Sandbox Code Playgroud)
因为这些是出现超过或等于2次的唯一2个单词.
你可以使用groupby filter
:
In [11]: df.groupby("dialogue").filter(lambda x: len(x) > 1)
Out[11]:
dialogue episode
0 music 1
6 wind 2
7 music 1
9 music 1
10 wind 3
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
312 次 |
最近记录: |