【发布时间】:2018-06-10 13:39:36
【问题描述】:
我有一个列表L,我想计算每个元素const/L_j,并获得一个新列表M,其中包含元素M_j = const/L_j。但是,有L_j 元素为零。在这种情况下,最好将这种除法分配为零。我已将其作为下面的脚本,但速度很慢。
temp = np.zeros((self.n_features, 1))
for t in range(self.n_features):
if y[t]!=0:
temp[t] = x/y[t]
我的问题与此类似,但我想将其应用到列表中。这些是计算列表M 的更快方法吗?
谢谢。
【问题讨论】:
-
没有一种计算速度更快的方法来计算这个列表。您最多只能做一次访问来计算每个元素,而且不能少做。
-
@NiVeR:NumPy 的目的是通过矢量化加速此类计算;在这种情况下这样做比天真的循环解决方案快几个数量级。
标签: python numpy divide-by-zero