Как я могу пересечь пустую матрицу строка за строкой? - PullRequest
0 голосов
/ 27 марта 2019

Если у меня есть массив NumPy

[[ 0 -2 -4 -6]
 [-2 -3 -5 -7]
 [-4  0 -2 -4]
 [-6 -2 -3 -5]]

Как мне посетить каждый из элементов этого массива NUMPY, известный как mymatrix, строка за строкой , такой что mymatrix[x][y]=the element that is traversed, так чтонапример, я получу 0,-2,-4,-6,-2,-3,-5,-7,-4,0,-2,-4,-6,-2 и так далее, если массив будет проходить через двойной цикл for

EDIT:

Когда я следую методу double for loopниже, это то, что я получаю

for row in range(scorematrix.shape[0]):
    for col in range(scorematrix.shape[1]):
        final=[]
        if row==0 and col==0:
            scorematrix[row][col]=0
            continue
        elif row==0:
            scorematrix[row][col]=col+(col*-3)
            continue
        elif col==0:
            scorematrix[row][col]=row+(row*-3)
            continue
        elif seq1[row]=="A" and seq2[col]=="A":
            result=4
        elif seq1[row]=="C" and seq2[col]=="C":
            result=3
        elif seq1[row]=="G" and seq2[col]=="G":
            result=2
        elif seq1[row]=="T" and seq2[col]=="T":
            result=1
        elif seq1[row]!=seq2[col]:
            result=-3
        print(scorematrix)
        firstelement=result+scorematrix[row-1,col-1]
        final.append(firstelement)
        secondelement=scorematrix[row-1,col]-2
        final.append(secondelement)
        thirdelement=scorematrix[row,col-1]-2
        final.append(thirdelement)
        themax=max(final)
        index=[k for k, j in enumerate(final) if j == themax]
        listofc.append(index)

        scorematrix[row][col]=themax

основные биты, необходимые для моего вопроса, - это первые две строки и последняя строка, остальные - только некоторые вычисления.Матрица, которую я хочу вывести: [[ 0 -2 -4 -6] [-2 -3 -5 -7] [-4 0 -2 -4] [-6 -2 -3 -5]]

Но полученная мной матрица

[[ 0 -2 -4 -6] [-2 -3 0 -2] [-4 -5 -2 -3] [-6 -7 -4 -5]] Если игнорировать строки и столбцы с помощью 0,-2,-4,-6,Вы можете видеть, что то, что ДОЛЖНО быть первой строкой, было введено в качестве первого столбца и т. д.

Как мне исправить это?

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