«Исправление слишком большого количества индексов для массива» - PullRequest
0 голосов
/ 03 ноября 2019

Я пытаюсь сделать сравнение массивов. Но когда я пытаюсь это сделать, я получаю сообщение об ошибке «слишком много индексов для массива». Я не мог понять это правильно.

Я пытался изменить диапазон в цикле for, но все равно получаю ту же ошибку. Я не мог придумать ни одной другой причины, по которой это могло бы произойти.

thresholdvalue1=(xpatient-sd_healthy)*10
thresholdvalue2=(((xhealthy+sd_patient))*10)
thresholdlist=[]
TP=[]
FP=[]
TN=[]
FN=[]
Ahealthy=np.random.randint(10,size=(1000,50))
Apatient=np.random.randint(10,size=(1000,50))
def thresholding(A,B): 
    for i in range(A,B):
        thresholdlist.append(i)
        i+=1
def newlist():
    thresholdarray=np.asarray(thresholdlist)
    thedivisor=10
    newarray=(thresholdarray/thedivisor)
    print(newarray)
    for n in range(0,51):
        if Apatient[:,n]>=newarray[:,n]:
            TP.append(Apatient[:,n])
        elif Ahealthy[:,n]>=newarray[:,n]:
            FP.append(Ahealthy[:,n])
        elif Apatient[:,n]<=newarray[:,n]:
            TN.append(Apatient[:,n])
        else:
            FN.append(Ahealthy[:,n])

thresholding(thresholdvalue1,thresholdvalue2+1)
newlist()

Как видите, я пытаюсь сравнить каждый столбец матрицы с пороговым значением. И второй цикл for об этом сравнении. В конце я хочу получить 4 списка с условными значениями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...