首页 > 解决方案 > 将 for 循环转换为 numpy 数组

问题描述

for timeprojection in range(100):
   for term in range(8):
       zerocouponbondprice[timeprojection,term] = zerocouponbondprice[timeprojection-1,term-1]*cashflow[timeprojection,term]

我怎样才能将这样的东西转换成numpy数组形式,这样我就可以减少两个 for 循环来提高速度?(如果timeprojectionterm是动态数字。)

标签: pythonnumpyfor-loop

解决方案


您可以从嵌套列表理解构造 numpy 数组

import numpy as np

zerocouponbondprice = np.array([[k * l for k,l in zip(i,j)] for i,j in zip(zerocouponbondprice, cashflow[1:])])

推荐阅读