2016-08-04 101 views
0

我有一個numpy的陣列創建如:如何將一個「標籤」追加到numpy的陣列

x = np.array([[1,2,3,4],[5,6,7,8]]) 
y = np.asarray([x]) 

打印出

x=[[1 2 3 4] 
    [5 6 7 8]] 

    y=[[[1 2 3 4] 
    [5 6 7 8]]] 

我想是因爲

這樣的一個數組
[0 [[1 2 3 4] 
    [5 6 7 8]]] 

最簡單的方法是什麼?

謝謝!

+1

那是什麼'在你的0'預期產出? – Kasramvd

+0

看看[numpy.insert](http://docs.scipy.org/doc/numpy/reference/generated/numpy.insert.html) – ThePredator

+0

有很多方法可以「標記」數據。您可以只有另一個數組,其中每個相應的元素都是該數組中數據的標籤。 –

回答

1

做你問什麼,只是用短語

labeledArray = [0, x] 

這樣一來,你會得到一個標準的陣列0作爲第一個元素和numpy的數組作爲第二個元素。

但是,在實踐中,您可能試圖標籤爲以後召回的目的。在這種情況下,我建議你使用一本字典,因爲它是減少混亂跟蹤:

myArrays = {} 
myArrays[0] = x 

因而可作如下:

>>> myArrays 
{0: array([[1, 2, 3, 4], 
    [5, 6, 7, 8]])} 
>>> myArrays[0] 
array([[1, 2, 3, 4], 
    [5, 6, 7, 8]]) 
+0

對我而言,第一種方法實際上是完美的,謝謝! –

+0

要對術語進行挑剔,這會創建一個包含數字(標籤)和numpy數組的列表。 – hpaulj