根据重复提取一定数量的行?

Extracting Certain numbers of Rows based on repeatation?

我有一个数据框 –mydata- 包括 2000 多行,如下所示:

Id  Name    Score
R1  sam       76
R1  Sosan     8
...      ...     ...
R4   jack     2
R4   Tom      76
R4   samy     8
R5   Check    9 
…     ...     ..
R6     Anderson   2
...       ...     ..

现在,我想提取重复次数超过一定数量的 ID,例如 4。我可以按分组依据和大小提取唯一数字的大小,如下所示:

Mydata.groupby(by=[‘Id’]).size()

但是,我不能只根据阈值提取Id。

您可以尝试使用 value_counts 计算 Id 的出现次数,然后根据出现次数过滤 Series 的结果:

num = 2
s = df['Id'].value_counts()
print(s[s>num].index.values)