numpy.r_
-
numpy.r_ = <numpy.lib.index_tricks.RClass object> -
Преобразует объекты срезов в конкатенацию по первой оси.
Это простой способ быстро создать массивы. Существует два варианта использования.
- Если выражение индекса содержит массивы, разделенные запятыми, то они будут объединены по первой оси.
- Если выражение индекса содержит обозначение среза или скаляры, то будет создан одномерный массив с диапазоном, указанным обозначением среза.
Если используется обозначение среза, синтаксис
start:stop:stepэквивалентенnp.arange(start, stop, step)внутри скобок. Однако, еслиstepявляется мнимым числом (например, 100j), то его целая часть интерпретируется как желаемое число точек, а начало и конец включаются. Другими словами,start:stop:stepjинтерпретируется какnp.linspace(start, stop, step, endpoint=1)внутри скобок. После расширения обозначения среза все последовательности, разделенные запятыми, конкатенируются вместе.Дополнительные строковые символы, помещённые в качестве первого элемента выражения индекса, могут быть использованы для изменения вывода. Строки «r» или «c» приводят к матричному выводу. Если результат одномерный и указана «r», то создаётся матрица 1 x N (строка). Если результат одномерный и указана «c», то создаётся матрица N x 1 (столбец). Если результат двумерный, то оба параметра предоставляют одинаковый матричный результат.
Целое число в строковом формате указывает ось, по которой нужно объединить несколько массивов, разделенных запятыми. Строка из двух целых чисел, разделённых запятыми, позволяет указать минимальное количество измерений, в которые необходимо привести каждый элемент, как второе целое число (ось для конкатенации по-прежнему задаётся первым целым числом).
Строка с тремя целыми числами, разделёнными запятыми, позволяет указать ось для конкатенации, минимальное количество измерений для приведения элементов и ось, содержащую начало массивов, имеющих размерность меньше указанной. Другими словами, третье целое число позволяет указать, где должны быть размещены единицы в форме массивов, которые были расширены. По умолчанию они размещаются в начале кортежа формы. Третий аргумент позволяет указать, где должно находиться начало массива вместо этого. Таким образом, третий аргумент «0» поместит единицы в конец кортежа формы массива. Отрицательные целые числа указывают, где в новом кортеже формы должны быть размещены последние измерения расширенных массивов, поэтому значение по умолчанию равно «-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]])
© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.14.5/reference/generated/numpy.r_.html