2016-12-24 164 views
0

我目前正在測試一個NN實現,其中列車數據存儲在numpy矩陣中。從numpy矩陣中提取一行

print train_set_data_vstacked_normalized.shape 

(219970,400) 

輸入數據目前看起來是這樣的,我必須每行喂到我的神經網絡..

它發生在(無,400)形狀的輸入。

我如何取出一行,使我從矩陣中取出的數組有400個條目,或400列和一行?

我已經試過

print train_set_data_vstacked_normalized[:,0].shape 
(219970,) 

print train_set_data_vstacked_normalized[0,:].shape 
(400,) 
+1

'train_set_data_vstacked_normalized [0,:]。reshape(1,400)'是怎麼樣的? – Abdou

+0

嘗試類似'x [None,:,0]'或'x [:,0] [None,:]'或'x [:,0] .reshape(1,-1)'。 – hpaulj

+0

...?我不知道我明白那會做什麼..數據已經正確結構化了,我想傳遞恰好符合形狀的數據。 我想通過正確的數據.. –

回答

0

你需要一個簡單的for循環來遍歷數組中的所有行。

nrows = train_set_data_vstacked_normalized.shape 
for i in range(nrows[0]): 
    row = train_set_data_vstacked_normalized[i, :] 

    # now change shape to (1, 400) 
    resized_row = row[np.newaxis] 

    # now, "resized_row" shape is (1, 400) 
    # pass "resized_row" to NN input layer. 
    # ... 

PS:作爲一個方面說明,只是想提醒你,在內存中〜220K x 400陣列發生在我的機器周圍670 MB。考慮將它作爲HDF5文件。