假设列表a包含某些特定主题的GP(成绩)。名单的长度是学生人数。如何计算GP在0-4范围内的分布? GP的范围是0到4。因此,我希望x分布在0到4上。
a = [1.9, 1.8, 0.8, 3.7]
a.sort()
print(a)
sort()
以升序对列表进行排序。运行此命令将产生[0.8, 1.8, 1.9, 3.7]
,一个有序列表。
显然,您将用您拥有的GP值替换任意选择的数字。
[您可能想要一个程序来创建有序对列表,该列表具有原始列表的每个条目以及一个计数。有很多方法可以做到这一点,这就是我的方法:
from collections import Counter
original_list_example = [2.6, 3.1, 2.6, 3.0]
distribution = Counter(original_list_example)
您基本上将拥有原始列表,称为GP
。当您将其放入Counter
中时,您将获得有序对,对于GP
中的每个条目,该条目出现的频率。您应该将Counter(GP)
的结果存储在一个新变量中,我将其称为distribution
,以便以后使用。您可以例如通过添加print(distribution)
来显示此内容。
从您的问题中不能完全清楚地知道您要做什么以及如何做,但是据我所知,这应该可以解决您的问题。
查看numpy的直方图:https://numpy.org/doc/stable/reference/generated/numpy.histogram.html
hist = np.histogram(a, bins=[0, 1, 2, 3, 4])
如果使用的是matplotlib,则可以使用以下内容进行绘制。
import matplotlib.pyplot as plt
plt.hist(a, bins=[0, 1, 2, 3, 4])