pandas调用nlargest()时如何返回value_counts结果的对应变量名
问题原因
你当前写法只单独提取了count列调用nlargest(),返回结果自然仅包含计数值和行索引,不会携带variable(维度名)、rating(评分)等其他列的信息。
调整方案
直接在过滤后的完整DataFrame上调用nlargest(),指定按count列排序取Top值即可,会返回包含所有列的完整匹配行:
# 筛选评分为2的记录,按计数值降序取最高的1条 prods[prods.rating == 2].nlargest(n=1, columns="count")
运行后返回结果如下,会直接带出对应的维度名Design:
variable rating count 0 Design 2 5
如果需要取Top N条结果,只需要修改参数n的数值即可,例如n=3就会返回符合条件的计数值最高的3条完整记录。
内容的提问来源于stack exchange,提问作者Edison
相关产品推荐
相关产品推荐

