目錄
- 1.橫向合并
- 1.1 concatenate方法
- 1.2 hstack方法
- 1.3 column_stack方法
- 2.縱向合并
- 2.1 concatenate方法
- 2.2 vstack方法
- 2.3 row_stack方法
先新建兩個數(shù)組用于合并
import numpy as np
arr1 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr1)
result:
[[1 2 3]
[4 5 6]]
arr2 = np.array([[7, 8, 9], [10, 11, 12]])
print(arr2)
result:
[[ 7 8 9]
[10 11 12]]
1.橫向合并
橫向合并就是將兩個行數(shù)相等的數(shù)組在行方向上進(jìn)行簡單拼接。與DataFrame合并不太一樣,numpy數(shù)組合并不需要公共列,只是將兩個數(shù)組簡單拼接在一起,有concatenate、hstack、column_stack三種方法可以實現(xiàn)
1.1 concatenate方法
concatenate方法中將兩個待合并的數(shù)組以列表的形式傳遞給concatenate,并通過設(shè)置axis參數(shù)指明在行方向還是列方向上進(jìn)行合并。參數(shù)axis=1表示在數(shù)組在行方向上進(jìn)行合并
print(np.concatenate([arr1, arr2], axis=1))
result:
[[ 1 2 3 7 8 9]
[ 4 5 6 10 11 12]]
1.2 hstack方法
hstack方法中將兩個待合并的數(shù)組以元組的形式傳遞給hstack即可達(dá)到數(shù)組橫向合并的目的
print(np.hstack((arr1, arr2)))
result:
[[ 1 2 3 7 8 9]
[ 4 5 6 10 11 12]]
1.3 column_stack方法
column_stack方法與hstack方法基本一致, 也是將兩個待合并的數(shù)組以元組的形式傳遞給column_stack即可達(dá)到數(shù)組橫向合并的目的
print(np.column_stack((arr1, arr2)))
result:
[[ 1 2 3 7 8 9]
[ 4 5 6 10 11 12]]
2.縱向合并
縱向合并是將兩個列相等的數(shù)組在列方向上進(jìn)行拼接,有concatenate、vstack、row_stack三種方法可以實現(xiàn)
2.1 concatenate方法
concatenate方法中將兩個待合并的數(shù)組以列表的形式傳遞給concatenate,并通過設(shè)置axis參數(shù)指明在行方向還是列方向上進(jìn)行合并。參數(shù)axis=0表示在數(shù)組在列方向上進(jìn)行合并
print(np.concatenate([arr1, arr2], axis=0))
result:
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
2.2 vstack方法
vstack方法是與hstack方法相對應(yīng)的方法,同樣只要將兩個待合并的數(shù)組以元組的形式傳遞給vstack即可達(dá)到數(shù)組縱向合并的目的
print(np.vstack((arr1, arr2)))
result:
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
2.3 row_stack方法
row_stack方法是與column_stack方法相對應(yīng)的方法,同樣只要將兩個待合并的數(shù)組以元組的形式傳遞給row_stack即可達(dá)到數(shù)組縱向合并的目的
print(np.row_stack((arr1, arr2)))
result:
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
到此這篇關(guān)于numpy系列之?dāng)?shù)組合并(橫向和縱向)的文章就介紹到這了,更多相關(guān)numpy 數(shù)組合并內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- numpy數(shù)組合并和矩陣拼接的實現(xiàn)
- Python numpy實現(xiàn)數(shù)組合并實例(vstack,hstack)