numpy.r_#

numpy.r_ = <numpy.lib._index_tricks_impl.RClass object>#

将切片对象转换为沿第一个轴的连接。

这是快速构建数组的简单方法。有两种用法。

  1. 如果索引表达式包含逗号分隔的数组,则沿它们的第一个轴堆叠它们。

  2. 如果索引表达式包含切片表示法或标量,则创建一个由切片表示法指示的范围的一维数组。

如果使用切片表示法,则语法 start:stop:step 在方括号内等同于 np.arange(start, stop, step)。但是,如果 step 是一个虚数(例如 100j),则其整数部分被解释为所需的点数,并且 start 和 stop 是包含在内的。换句话说,start:stop:stepj 在方括号内被解释为 np.linspace(start, stop, step, endpoint=1)。展开切片表示法后,所有逗号分隔的序列将被连接在一起。

放在索引表达式第一个元素的可选字符字符串可用于更改输出。字符串 'r' 或 'c' 会产生矩阵输出。如果结果是一维的且指定了 'r',则会生成一个 1 x N(行)矩阵。如果结果是一维的且指定了 'c',则会生成一个 N x 1(列)矩阵。如果结果是二维的,则两者都提供相同的矩阵结果。

字符串整数指定了将多个逗号分隔的数组堆叠到的轴。一个由两个逗号分隔的整数组成的字符串允许指示每个条目被强制到的最小维度数(沿哪个轴连接仍然是第一个整数)。

一个由三个逗号分隔的整数组成的字符串允许指定连接到的轴、强制条目到的最小维度数,以及哪个轴应该包含小于指定维度的数组的起始位置。换句话说,第三个整数允许您指定 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]])