2017-11-25 191 views
1

我正在處理與MNIST數據庫的張量流。使用numpy.append更改數組

使用input_data.read_data_sets功能提取數據庫之後,

from tensorflow.examples.tutorials.mnist import input_data 
data = input_data.read_data_sets('data/MNIST/', one_hot=True) 

我得到data.train.images其爲含有圖像的陣列的陣列。

我想添加我自己的圖像數組到這個,因爲它們是numpy數組我不能使用標準的附加函數。

當我使用numpy.append()函數時,它創建一個新的數組而不是改變現有的數組。

data.test.images是每784(FLOAT32)值55000個陣列的陣列,

A爲784(FLOAT32)值的數組

的問題是,當我嘗試

data.train.images=np.append(data.train.images, [A],axis=0) 

我得到的錯誤說:「不能設置屬性

我如何通過這一難題得到什麼?

+0

編輯什麼A有您的QSN。我想這個問題是與[A]。 – skrubber

+0

numpy.append紀錄片說他們需要有相同的形狀 https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.append.html –

+0

不,基本上,我想新的data.train.images擁有55001個數組,最後一個數組爲A –

回答

1

使用numpy + vstack代替:

a=np.array(np.random.rand(20,10)) 
b=np.array(np.random.rand(1,10)) 
a.shape 
(20,10) 
a=np.vstack([a,b]) 
a.shape 
(21, 10) 
+0

我認爲問題在於我無法更新data.train.images而不是附加部分 –

+0

答案已更新accdngly – skrubber