我有一个文本文件,其中只有一列包含文本内容。我想找出前3个最常用的项目和3个最不频繁的项目。我在其他帖子中尝试了一些解决方案,但我无法得到我想要的东西。我尝试找到如下所示的模式,但它只输出所有行。我也尝试使用计数器和最常用的函数,但它们做同样的事情,即打印文件中的所有行。任何帮助表示赞赏。
# My Code
import pandas as pd
df = pd.read_csv('sample.txt')
print(df.mode())
答案 0 :(得分:2)
您可以使用Python内置的counter。
from collections import Counter
# Read file directly into a Counter
with open('file') as f:
cnts = Counter(l.strip() for l in f)
# Display 3 most common lines
cnts.most_common(3)
# Display 3 least common lines
cnts.most_common()[-3:]