我在一个文本文件中存储了超过 6500 万个数值。我需要计算最大值、最小值、平均值、标准差以及 25、50 和 75 个百分位数。
通常我会使用附加的代码,但我需要一种更有效的方法来计算这些指标,因为我无法将所有值 p 存储在列表中。如何在 Python 中更有效地计算这些值?
import numpy as np
np.average(obj)
np.min(mylist)
np.max(mylist)
np.std(mylist)
np.percentile(obj, 25)
np.percentile(obj, 50)
np.percentile(obj, 75)
maxx = float('-inf')
minx = float('+inf')
sumz = 0
for index, p in enumerate(open("foo.txt", "r")):
maxx = max(maxx, float(p))
minx = min(minx, float(p))
sumz += float(p)
index += 1
my_max = maxx
my_min = minx
my_avg = sumz/index