Python 3.x 索引器:索引21超出大小为21&;的轴1的界限;索引问题
我是Python新手,我知道类似的问题已经出现了,但它们并没有帮助我解决问题 我有一个代码片段:Python 3.x 索引器:索引21超出大小为21&;的轴1的界限;索引问题,python-3.x,numpy,for-loop,matrix,indexing,Python 3.x,Numpy,For Loop,Matrix,Indexing,我是Python新手,我知道类似的问题已经出现了,但它们并没有帮助我解决问题 我有一个代码片段: #creating output matrices: r0_res = np.ones((21,21)) r1_res = np.ones((21,21)) i = 0 j = 0 for jCross in range(280, 300): for kLong in range(6850, 6870): radObs = dataObs[kLong,jCross,::-
#creating output matrices:
r0_res = np.ones((21,21))
r1_res = np.ones((21,21))
i = 0
j = 0
for jCross in range(280, 300):
for kLong in range(6850, 6870):
radObs = dataObs[kLong,jCross,::-1]
iLow = searchsorted(wGrid,vRange.lower)
iHigh = searchsorted(wGrid,vRange.upper)
odg_CH4_rg = interp(wGrid[iLow:iHigh], vGrid, odg_CH4)
phi0 = radMod1
phi1 = phi0*odg_CH4_rg
aMatrix = np.vstack([phi0, phi1]).T
r0, r0_alpha = np.linalg.lstsq(aMatrix, radObs[iLow:iHigh])[0]
r0_res[i, j]= r0
r1_res[i, j]= r0_alpha
j=j+1
i=i+1
我需要说的是,所有“技术性”的东西都可以正常工作(我在没有for循环的情况下启动了它),所以现在我想把我的代码片段放入由2个变量组成的for循环中
我的目标:读取数据块(感兴趣区域形状:21*21)并将代码应用到每个元素,并将元素输出2个变量(r0和r0α)分别写入2个不同的空矩阵(r0μres和r1μres)
我已经尝试更改观察到的jCross和kLong变量的索引,但这没有帮助,仍然会导致相同的索引错误
非常感谢你的帮助 基本上这个问题可以通过 将创建的矩阵限制为20*20:
r0_res = np.ones((20,20))
r1_res = np.ones((20,20))
并在末尾使用“if”块:
r0, r0_alpha = np.linalg.lstsq(aMatrix, radObs[iLow:iHigh])[0]
if i<= 300:
r0_res[i, j]= r0
r1_res[i, j]= r0_alpha
j=j+1
r0,r0_alpha=np.linalg.lstsq(aMatrix,radObs[iLow:iHigh])[0]
如果我