我以前也有过类似的错误,但我通常在执行范围而不是枚举时得到它们。对不起,如果这是个愚蠢的错误,我就是搞不懂。 这是导致出现错误的代码:
maxtemp = 320
temperaturelist = range(10, maxtemp + 1,10) #this goes from 10 to 320 ins steps of 10
numtemps = np.asarray(temperaturelist).size
#read in actual spectral data, and display
spectraldataactualgrid_values = np.empty((numtemps, 201))
spectraldatapoints = np.empty([6432,2])
spectraldatavalues = np.empty(6432)
count=0
for i, temperature in enumerate(temperaturelist):
wavelengthvector, intensityvector = loadspec(temperature)
for j, wavelength in enumerate(wavelengthvector):
spectraldatapoints[count] = [temperature, wavelength]
spectraldatavalues[count] = intensityvector[j]
spectraldataactualgrid_values[i, j] = intensityvector[j]
count+=1
#loadspec comes from a previous definition where I load in my spectral data
错误消息:
IndexError Traceback (most recent call last)
<ipython-input-18-6f2072c90554> in <module>()
77 spectraldatapoints[count] = [temperature, wavelength]
78 spectraldatavalues[count] = intensityvector[j]
---> 79 spectraldataactualgrid_values[i, j] = intensityvector[j]
80 count+=1
81 # plt.figure(1)
IndexError: index 201 is out of bounds for axis 1 with size 201
编辑**** 因此,对于前面的错误,我发现我必须将spectraldataactualgrid_中的201值切换到2415(强度向量的大小)。但是,现在的错误是:
IndexError Traceback (most recent call last)
<ipython-input-26-d0f8f1371388> in <module>()
56 # #print(len(wavelengthvector))
57 for j, wavelength in enumerate(wavelengthvector):
---> 58 spectraldatapoints[count] = [temperature, wavelength]
59
60 spectraldatavalues[count] = intensityvector[j]
IndexError: index 6432 is out of bounds for axis 0 with size 6432
所以我猜某个地方的数字错了
目前没有回答
相关问题 更多 >
编程相关推荐