numpy.r_#
- numpy.r_ = <numpy.lib._index_tricks_impl.RClass object>#
將切片物件轉換為沿著第一個軸的串聯。
這是一種快速建立陣列的簡單方法。有兩種使用情況。
如果索引表示式包含逗號分隔的陣列,則沿著它們的第一個軸堆疊它們。
如果索引表示式包含切片表示法或純量,則建立一個 1 維陣列,其範圍由切片表示法指示。
如果使用切片表示法,語法
start:stop:step
等效於括號內的np.arange(start, stop, step)
。但是,如果step
是一個虛數(即 100j),則其整數部分會被解釋為所需的點數,並且 start 和 stop 是包含的。換句話說,start:stop:stepj
被解釋為括號內的np.linspace(start, stop, step, endpoint=1)
。在切片表示法展開後,所有逗號分隔的序列會串聯在一起。作為索引表示式的第一個元素放置的可選字元串可用於更改輸出。字串 'r' 或 'c' 會產生矩陣輸出。如果結果是 1 維且指定了 'r',則會產生 1 x N(列)矩陣。如果結果是 1 維且指定了 'c',則會產生 N x 1(行)矩陣。如果結果是 2 維,則兩者都提供相同的矩陣結果。
字串整數指定沿著哪個軸堆疊多個逗號分隔的陣列。兩個逗號分隔整數的字串允許指示強制每個條目進入的最小維度數,作為第二個整數(沿著串聯的軸仍然是第一個整數)。
具有三個逗號分隔整數的字串允許指定沿著哪個軸串聯、強制條目進入的最小維度數,以及哪個軸應包含維度數小於指定維度數的陣列的起始位置。換句話說,第三個整數允許您指定 1 應放置在形狀已升級的陣列的形狀中的位置。預設情況下,它們放置在形狀元組的前面。第三個參數允許您指定陣列的起始位置應在哪裡。因此,第三個參數 '0' 會將 1 放置在陣列形狀的末尾。負整數指定升級陣列的最後一個維度應放置在新形狀元組中的哪個位置,因此預設值為 '-1'。
- 參數:
- 不是函數,因此不接受任何參數
- 回傳值:
- 一個串聯的 ndarray 或矩陣。
另請參閱
concatenate
沿著現有軸連接陣列序列。
c_
將切片物件轉換為沿著第二個軸的串聯。
範例
>>> import numpy as np >>> np.r_[np.array([1,2,3]), 0, 0, np.array([4,5,6])] array([1, 2, 3, ..., 4, 5, 6]) >>> np.r_[-1:1:6j, [0]*3, 5, 6] array([-1. , -0.6, -0.2, 0.2, 0.6, 1. , 0. , 0. , 0. , 5. , 6. ])
字串整數指定沿著哪個軸串聯,或強制條目進入的最小維度數。
>>> a = np.array([[0, 1, 2], [3, 4, 5]]) >>> np.r_['-1', a, a] # concatenate along last axis array([[0, 1, 2, 0, 1, 2], [3, 4, 5, 3, 4, 5]]) >>> np.r_['0,2', [1,2,3], [4,5,6]] # concatenate along first axis, dim>=2 array([[1, 2, 3], [4, 5, 6]])
>>> np.r_['0,2,0', [1,2,3], [4,5,6]] array([[1], [2], [3], [4], [5], [6]]) >>> np.r_['1,2,0', [1,2,3], [4,5,6]] array([[1, 4], [2, 5], [3, 6]])
使用 'r' 或 'c' 作為第一個字串引數會建立矩陣。
>>> np.r_['r',[1,2,3], [4,5,6]] matrix([[1, 2, 3, 4, 5, 6]])