Python NumPy numpy.concatenate()函式
Minahil Noor
2023年1月30日
-
numpy.concatenate()
語法 -
示例程式碼:
numpy.concatenate()
-
示例程式碼:
numpy.concatenate()
傳遞多維陣列 -
示例程式碼:
numpy.concatenate()
傳遞多維陣列,引數為axis
Python NumPy numpy.concatenate()
函式在一個指定的軸上連線多個陣列。它接受一個陣列序列作為引數,並將它們連線成一陣列。
numpy.concatenate()
語法
numpy.concatenate((a1, a2, ...), axis=0, out=None)
引數
a1,a2,... |
這是一個類似陣列結構的序列。它是要連線的輸入陣列的序列。輸入的陣列應該具有相同的形狀。 |
axis |
它是一個整數。它代表函式將連線陣列的軸。它的預設值是 0,意味著陣列的連線將是以行為單位的。如果它是 1,則是列式連線。 |
out |
它是一個 N 維的陣列。它顯示連線陣列的最終形狀。如果提供了它,那麼它的形狀必須與輸出的連線陣列相匹配。 |
返回值
它返回一個 N 維的陣列。這個陣列顯示了輸入的陣列的連線。
示例程式碼:numpy.concatenate()
我們先用 numpy.concatenate
函式連線一個一維的陣列。
import numpy as np
a1 = np.array([45, 12, 65, 78, 9, 34, 12, 11, 2, 65, 78, 82, 28, 78])
print("First array:")
print(a1)
a2 = np.array([89, 34, 56, 87, 90])
print("Second array:")
print(a2)
outarray = np.concatenate([a1, a2])
print("Concatenated array:")
print(outarray)
輸出:
First array:
[45 12 65 78 9 34 12 11 2 65 78 82 28 78]
Second array:
[89 34 56 87 90]
Concatenated array:
[45 12 65 78 9 34 12 11 2 65 78 82 28 78 89 34 56 87 90]
函式返回了一個連線後的陣列。如果你想讓輸出的陣列從第二個陣列開始,只需先傳遞第二個陣列作為引數。
示例程式碼:numpy.concatenate()
傳遞多維陣列
現在我們將傳遞一個多維的陣列。
import numpy as np
a1 = np.array([[11, 12], [15, 10]])
print("First array:")
print(a1)
a2 = np.array([[10, 13], [15, 8]])
print("Second array:")
print(a2)
a3 = np.array([[11, 5], [34, 78]])
print("Third array:")
print(a3)
outarray = np.concatenate((a1, a2, a3))
print("Concatenated array:")
print(outarray)
輸出:
First array:
[[11 12]
[15 10]]
Second array:
[[10 13]
[15 8]]
Third array:
[[11 5]
[34 78]]
Concatenated array:
[[11 12]
[15 10]
[10 13]
[15 8]
[11 5]
[34 78]]
輸出顯示輸入的陣列現在被連線在一起形成一個陣列。
示例程式碼:numpy.concatenate()
傳遞多維陣列,引數為 axis
現在,我們將傳遞一串多維的陣列作為引數,axis=0
,得到的陣列將以行為單位連線。
import numpy as np
a1 = np.array([[11, 12, 5], [15, 6, 10]])
print("First array:")
print(a1)
a2 = np.array([[10, 8, 13], [12, 15, 8]])
print("Second array:")
print(a2)
a3 = np.array([[11, 12, 5], [34, 78, 90]])
print("Third array:")
print(a3)
outarray = np.concatenate((a1, a2, a3))
print("Concatenated array:")
print(outarray)
輸出:
First array:
[[11 12 5]
[15 6 10]]
Second array:
[[10 8 13]
[12 15 8]]
Third array:
[[11 12 5]
[34 78 90]]
Concatenated array:
[[11 12 5]
[15 6 10]
[10 8 13]
[12 15 8]
[11 12 5]
[34 78 90]]
請注意,輸出的陣列以遞增行的方式顯示陣列的連線,因為 axis
的預設值是 0。
現在我們將 axis
的值設定為 1。
import numpy as np
a1 = np.array([[11, 12, 5], [15, 6, 10]])
print("First array:")
print(a1)
a2 = np.array([[10, 8, 13], [12, 15, 8]])
print("Second array:")
print(a2)
a3 = np.array([[11, 12, 5], [34, 78, 90]])
print("Third array:")
print(a3)
outarray = np.concatenate((a1, a2, a3), axis=1)
print("Concatenated array:")
print(outarray)
輸出:
First array:
[[11 12 5]
[15 6 10]]
Second array:
[[10 8 13]
[12 15 8]]
Third array:
[[11 12 5]
[34 78 90]]
Concatenated array:
[[11 12 5 10 8 13 11 12 5]
[15 6 10 12 15 8 34 78 90]]
輸出結果是以遞增列的方式進行連線。