【发布时间】:2020-12-29 03:22:01
【问题描述】:
我正在编写的程序的一部分包含计算以下内容的代码:
data = np.array(..........)
param = np.array(range(100)+1)
result = np.array([data[-x:].mean() for x in param])
此代码用于一个巨大的循环,因此性能至关重要。它表明第 3 行 (result = ...) 花费的时间最多 - 我想知道是否有更好的方法来执行此操作?
欢迎提出任何建议!
【问题讨论】:
-
np.array(range(100)+1)这无效?你的意思是np.arange(100)+1?另外,您是否真的在向后收集数组的平均值(最后一个样本、最后 2 个样本、最后 3 个样本等) -
删除
data-science标签,因为它在这里不相关。 -
第一部分确实是一个错字,但是是的,我会收集向后的平均值。谢谢!
标签: python pandas performance numpy