python двойной л oop для модификации матрицы - PullRequest
1 голос
/ 23 января 2020

Я должен выполнить двойную итерацию в данных с формой, подобной [a,b,c]. Это код, который я написал, но полученный результат не соответствует нужному мне формату. в l oop dati - входные данные. В моем случае a = 512 (уменьшено с помощью mroi_i, mroi_f)

frame_corr=[]
dati_corr=[]
for i in range(0,c):
    f = dati[mroi_i:mroi_f,:,i]  # matrix with dimension [mroi_i,mroi_f,b]
    for j in range(0,b):
        s = f[:,j]
        s_corr = (s-d_mean)/(w_mean-d_mean) #i have to normalize the vector s
        frame_corr.append(s_corr)  # i have to rebuild the matrif f
    dati_corr.append(frame_corr) # i have to rebuild the original data 

Результат, который я получаю из l oop, представляет собой новый набор данных, dati, с размером C, состоящим из c [Numpy Array]. На самом деле моя цель - получить новый набор данных с той же формой, что и исходные данные.

1 Ответ

0 голосов
/ 23 января 2020

Я нашел решение, используя эту форму l oop

frame_corr=np.zeros((a,b)) # First i define empty matrix
dati_corr=np.zeros((a,b,c))
for i in range(0,c):
    for j in range(0,b):
        f = dati[mroi_i:mroi_f,:,i]
        s = f[:,j]
        s_corr = (s-d_mean)/(w_mean-d_mean)
        frame_corr[:,j]=s_corr
    dati_corr[:,:,i]=frame_corr

Используя это двойное l oop, я смог получить ту же самую форму исходных данных, но с нормализованными данными.

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