作者:晓志1998_809 | 来源:互联网 | 2022-12-22 18:49
假设我有一个数据框:
col1 col2
15 2
17 4
14 5
20 10
21 11
19 11
18 12
20 6
22 7
21 8
22 8
25 6
21 7
首先,我用pandas.value_counts()
了col2
,我用三箱(0,5] (5,10] (10,15]
.
然后,我想过滤col2
值属于频率最高的前两个箱的行,在这种情况下为箱(5,10]
和(10,15]
.
1> Scott Boston..:
使用:
s = df.col2.value_counts(bins=[0,5,10,15]).nlargest(2)
df[pd.cut(df.col2, s.index).notnull()]
输出:
col1 col2
3 20 10
4 21 11
5 19 11
6 18 12
7 20 6
8 22 7
9 21 8
10 22 8
11 25 6
12 21 7
我不知道`value_counts`的`bins`参数!
@piRS还给我看了!
嘘!我也是,然后OP提到了它,所以我查看了文档.:-)而且,这就是我爱的原因.