jax.numpy.r_

内容

jax.numpy.r_#

jax.numpy.r_ = <jax._src.numpy.index_tricks.RClass object>#

沿着第一个轴连接切片、标量和类似数组的对象。

LAX 后端实现的 numpy.r_.

另请参阅

jnp.c_: 沿着最后一个轴连接切片、标量和类似数组的对象。

示例

[start:stop:step] 形式传递切片会生成 jnp.arange 对象

>>> jnp.r_[-1:5:1, 0, 0, jnp.array([1,2,3])]
Array([-1,  0,  1,  2,  3,  4,  0,  0,  1,  2,  3], dtype=int32)

对于 step 的虚数值,将创建 jnp.linspace 对象,它包含右端点

>>> jnp.r_[-1:1:6j, 0, jnp.array([1,2,3])]
Array([-1.        , -0.6       , -0.20000002,  0.20000005,
       0.6       ,  1.        ,  0.        ,  1.        ,
       2.        ,  3.        ], dtype=float32)

"axis,dims,trans1d" 形式使用字符串指令作为第一个参数来指定连接轴、最小维度数,以及升级后的数组的原始维度在结果数组的形状元组中的位置

>>> jnp.r_['0,2', [1,2,3], [4,5,6]] # concatenate along first axis, 2D output
Array([[1, 2, 3],
       [4, 5, 6]], dtype=int32)
>>> jnp.r_['0,2,0', [1,2,3], [4,5,6]] # push last input axis to the front
Array([[1],
       [2],
       [3],
       [4],
       [5],
       [6]], dtype=int32)

对于 trans1d 的负值,会将最后一个轴偏移到形状元组的开头

>>> jnp.r_['0,2,-2', [1,2,3], [4,5,6]]
Array([[1],
       [2],
       [3],
       [4],
       [5],
       [6]], dtype=int32)

在平面输入上使用 "r""c" 作为第一个参数来分别创建一个具有额外行或列轴的数组

>>> jnp.r_['r',[1,2,3], [4,5,6]]
Array([[1, 2, 3, 4, 5, 6]], dtype=int32)
>>> jnp.r_['c',[1,2,3], [4,5,6]]
Array([[1],
       [2],
       [3],
       [4],
       [5],
       [6]], dtype=int32)

对于更高维度的输入 (dim >= 2),"r""c" 都会给出相同的结果。