本節主要講述如何把兩個陣列按照行或列進行合併。
例如:
import numpy as np
a = np.array([1, 1, 1])
b = np.array([2, 2, 2])
print(np.vstack((a, b)))
合併後輸出結果為:
[[1 1 1]
[2 2 2]]
import numpy as np
a = np.array([1, 1, 1])
b = np.array([2, 2, 2])
print(np.hstack((a, b)))
左右合併後,輸出為:
[1 1 1 2 2 2]
import numpy as np
a = np.arange(9).reshape(3,3)
print("a=")
print(a)
b = 2 * a
print("b=")
print(b)
print("a和b垂直合併:")
print(np.concatenate((a, b), axis=0))
print("a和b水平合併:")
print(np.concatenate((a, b), axis=1))
輸出為:
a=
[[0 1 2]
[3 4 5]
[6 7 8]]
b=[[ 0 2 4]
[ 6 8 10]
[12 14 16]]
a和b垂直合併:
[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[ 0 2 4]
[ 6 8 10]
[12 14 16]]
a和b水平合併:
[[ 0 1 2 0 2 4]
[ 3 4 5 6 8 10]
[ 6 7 8 12 14 16]]
比如,我們有乙個一維的陣列,現在我們想要對這個一維陣列增加乙個維度,變成2維陣列,該怎麼做呢?
例如:[1, 2, 3]是乙個一維陣列,我們想把它變成2維陣列:[[1, 2, 3]],其形狀為1行3列的資料。
具體做法是使用np.newaxis:
import numpy as np
a = np.array([1, 2, 3])
print(a[np.newaxis, :])
輸出為:
[[1 2 3]]
同理,如果想增加列的維度,使其變成3行1列的資料,具體操作為:
import numpy as np
a = np.array([1, 2, 3])
print(a[:, np.newaxis])
輸出為:
[[1]
[2][3]]
numpy建立array 老魚學numpy
import numpy as np 陣列 a 1,2,3 4,5,6 print a a 矩陣 b np.array a print b b 執行後輸出為 a 1,2,3 4,5,6 b 1 2 3 4 5 6 我們可以看到python中的陣列和numpy中的陣列在螢幕上輸出的一些細微的差異 nu...
numpy的索引 老魚學numpy
import numpy as np a np.arange 3,15 reshape 3,4 print a print a print 第2行的資料 a 2 print 第2行第3列的資料 a 2 3 輸出為 a 3 4 5 6 7 8 9 10 11 12 13 14 第2行的資料 11 12...
numpy array分割 老魚學numpy
有合併,就有分割。本節主要講述如何通過numpy對陣列進行橫向 縱向分割。首先建立乙個6行4列的陣列,然後我們對此陣列按照橫向進行切割,分成3塊,這樣每塊應該有2行,見例子 import numpy as np a np.arange 24 reshape 6,4 print a print a p...