W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
多個(gè)數(shù)組可以沿不同的軸堆疊在一起:
>>> a = np.floor(10 * rg.random((2, 2)))
>>> a
array([[9., 7.],
[5., 2.]])
>>> b = np.floor(10 * rg.random((2, 2)))
>>> b
array([[1., 9.],
[5., 1.]])
>>> np.vstack((a, b))
array([[9., 7.],
[5., 2.],
[1., 9.],
[5., 1.]])
>>> np.hstack((a, b))
array([[9., 7., 1., 9.],
[5., 2., 5., 1.]])
column_stack
函數(shù)將一維數(shù)組作為列堆疊到二維數(shù)組中。它等效于hstack
僅用于 2D 數(shù)組:
>>> from numpy import newaxis
>>> np.column_stack((a, b)) # with 2D arrays
array([[9., 7., 1., 9.],
[5., 2., 5., 1.]])
>>> a = np.array([4., 2.])
>>> b = np.array([3., 8.])
>>> np.column_stack((a, b)) # returns a 2D array
array([[4., 3.],
[2., 8.]])
>>> np.hstack((a, b)) # the result is different
array([4., 2., 3., 8.])
>>> a[:, newaxis] # view `a` as a 2D column vector
array([[4.],
[2.]])
>>> np.column_stack((a[:, newaxis], b[:, newaxis]))
array([[4., 3.],
[2., 8.]])
>>> np.hstack((a[:, newaxis], b[:, newaxis])) # the result is the same
array([[4., 3.],
[2., 8.]])
另一方面,row_stack
函數(shù)等效vstack
于任何輸入數(shù)組。實(shí)際上,row_stack
是vstack
的別名:
>>> np.column_stack is np.hstack
False
>>> np.row_stack is np.vstack
True
通常,對于具有多于兩個(gè)維度的數(shù)組,?hstack
沿著它們的第二個(gè)軸vstack
堆疊,沿著它們的第一個(gè)軸堆疊,而且concatenate
?允許一個(gè)可選參數(shù)給出應(yīng)該發(fā)生連接的軸的編號。
在復(fù)雜的情況下,r_
并且c_
是用于通過沿一個(gè)軸堆疊號碼創(chuàng)建陣列有用的。它們允許使用范圍文字:
。
>>> np.r_[1:4, 0, 4]
array([1, 2, 3, 0, 4])
當(dāng)與數(shù)組作為參數(shù)使用的,?r_
并且?c_
是類似于?vstack
和?hstack
在它們的默認(rèn)行為,但允許一個(gè)可選參數(shù)給軸沿其來連接的數(shù)量。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: