下面是在Python中创建频率表的完整攻略。
什么是频率表
频率表是用于统计一组数据中各个元素出现次数的数据结构。它通常用于数据分析和研究中,经常和直方图、饼图等数据可视化工具配合使用。
如何创建频率表
在Python中,可以使用collections模块中的Counter类来快速创建频率表。
步骤1:导入模块并创建计数器
from collections import Counter
c = Counter()
步骤2:向计数器中添加数据
计数器可以接受任意可迭代对象作为输入,例如列表、字符串等。
c.update([1, 2, 3, 4, 5, 6, 1, 2, 3, 1])
c.update("hello world")
步骤3:输出结果
输出结果可以使用items()方法来获取元素和出现次数的列表。
print(c.items())
# 输出结果:dict_items([(1, 3), (2, 2), (3, 2), (4, 1), (5, 1), (6, 1), ('h', 1), ('e', 1), ('l', 3), ('o', 2), (' ', 1), ('w', 1), ('r', 1), ('d', 1)])
可以看到,Counter类将输入数据转换成了一个字典,其中键是元素,值是元素出现的次数。
示例1:用频率表统计单词出现次数
下面的示例展示了如何使用频率表统计一段文本中单词出现的次数。
text = "the quick brown fox jumps over the lazy dog"
words = text.split()
c = Counter(words)
print(c.items())
输出结果为:
dict_items([('the', 2), ('quick', 1), ('brown', 1), ('fox', 1), ('jumps', 1), ('over', 1), ('lazy', 1), ('dog', 1)])
可以看到,通过Counter类我们快速地统计了文本中各个单词出现的次数。
示例2:用频率表统计骰子点数出现次数
下面的示例展示了如何使用频率表统计100次掷骰子后各个点数出现的次数。
import random
c = Counter()
for i in range(100):
roll = random.randint(1, 6)
c.update([roll])
print(c.items())
输出结果为:
dict_items([(1, 19), (2, 17), (3, 19), (4, 14), (5, 13), (6, 18)])
可以看到,通过Counter类我们成功地计算了每个点数出现的次数。
到此为止,这就是在Python中创建频率表的完整攻略。希望对你有所帮助。