numpy.r

原文:https://docs.scipy.org/doc/numpy/reference/generated/numpy.r_.html

译者:飞龙 UsyiyiCN

校对:(虚位以待)

numpy.r_ = <numpy.lib.index_tricks.RClass object>

将切片对象翻译为沿第一轴的连接。

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

  1. 如果索引表达式包含逗号分隔的数组,则沿着它们的第一个轴将它们堆叠。
  2. 如果索引表达式包含切片符号或标量,则创建具有由切片符号指示的范围的1-D数组。

如果使用切片符号,则语法start:stop:step等效于np.arange(start, stop, step)然而,如果step是虚数(即100j),则其整数部分被解释为期望的点数,并且开始和停止包括在内。换句话说,start:stop:stepj被解释为np.linspace(start, stop, t5> endpoint = 1)在切片符号扩展之后,所有逗号分隔的序列被连接在一起。

作为索引表达式的第一个元素放置的可选字符串可用于更改输出。字符串'r'或'c'导致矩阵输出。如果结果是1-D并且指定“r”,则产生1×N(行)矩阵。如果结果是1-D并且指定“c”,则产生N×1(列)矩阵。如果结果是2-D,则两者提供相同的矩阵结果。

字符串整数指定哪个轴将多个逗号分隔的数组堆栈。两个逗号分隔的整数的字符串允许指示最小维数以强制每个条目作为第二个整数(沿着连接的轴仍然是第一个整数)。

具有三个逗号分隔的整数的字符串允许指定要连接的轴,强制条目的最小维数,以及哪个轴应包含小于指定维数的数组的开始。换句话说,第三个整数允许你指定1的位置应放置在数组的形状中,其形状已升级。默认情况下,它们放在形状元组的前面。第三个参数允许你指定数组的开始位置。因此,第三个参数'0'会将1放在数组形状的末尾。负整数指定新形状元组中应放置升级数组的最后一个维度的位置,因此默认值为“-1”。

参数:不是函数,因此不需要参数
返回:连接的ndarray或矩阵。

也可以看看

concatenate
沿现有轴连接数组序列。
c_
将切片对象转换为沿第二轴的连接。

例子

>>> np.r_[np.array([1,2,3]), 0, 0, np.array([4,5,6])]
array([1, 2, 3, 0, 0, 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]])