Мой код ниже не заполняет массив numpy / pylab с именем RRmeanArray.Может кто-нибудь показать мне, как исправить код, чтобы он заполнял массив?
import pylab as p
RRmeanArray = p.array([])
startBeatIndex = 0
endBeatIndex = 10
for k in range(int(p.floor(len(QRSandRRarray[0])/10))-1):
print '++++++++++++++++++++++++++++++++++++++++++++'
print 'k is: ',k
print 'startBeatIndex is: ',startBeatIndex
print 'endBeatIndex is: ',endBeatIndex
print 'p.mean(QRSandRRarray[1,startBeatIndex:endBeatIndex]) is: ',p.mean(QRSandRRarray[1,startBeatIndex:endBeatIndex])
newMean = p.mean(QRSandRRarray[1,startBeatIndex:endBeatIndex])
print 'newMean is: ',newMean
RRmeanArray += [newMean]
print 'len(RRmeanArray) is: ',len(RRmeanArray)
startBeatIndex += 10
endBeatIndex += 10
print '++++++++++++++++++++++++++++++++++++++++++++'
Вот что я получаю в качестве вывода в оболочке python для типичной итерации k:
++++++++++++++++++++++++++++++++++++++++++++
k is: 619
startBeatIndex is: 6190
endBeatIndex is: 6200
p.mean(QRSandRRarray[1,startBeatIndex:endBeatIndex]) is: 0.5971
newMean is: 0.5971
len(RRmeanArray) is: 0
++++++++++++++++++++++++++++++++++++++++++++
РЕДАКТИРОВАТЬ: Спасибо, Томас.Вы почти получили это.Рабочая версия:
RRmeanArray = p.zeros(len(range(int(p.floor(len(QRSandRRarray[0])/10))-1)))
startBeatIndex = 0
endBeatIndex = 10
for i,k in enumerate(range(int(p.floor(len(QRSandRRarray[0])/10))-1)):
newMean = p.mean(QRSandRRarray[1,startBeatIndex:endBeatIndex])
RRmeanArray[i] += [newMean]
startBeatIndex += 10
endBeatIndex += 10
На этот вопрос теперь есть ответ.