Spec-Zone.ru › NumPy 1.16

numpy.r_

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

Переводит объекты срезов в конкатенацию по первой оси.

Это простой способ быстро построить массивы. Есть два варианта использования.

  1. Если выражение индекса содержит массивы, разделенные запятыми, то они будут сложены вдоль своей первой оси.
  2. Если выражение индекса содержит обозначение срезов или скаляры, то создается одномерный массив с диапазоном, указанным обозначением срезов.

Если используется обозначение срезов, синтаксис start:stop:step эквивалентен np.arange(start, stop, step) внутри скобок. Однако, если step является мнимым числом (например, 100j), то его целая часть интерпретируется как желаемое количество точек, и начало и конец включительно. Другими словами, start:stop:stepj интерпретируется как np.linspace(start, stop, step, endpoint=1) внутри скобок. После расширения обозначения срезов все последовательности, разделенные запятыми, конкатенируются вместе.

Дополнительные строковые символы, помещенные в качестве первого элемента выражения индекса, могут быть использованы для изменения вывода. Строки «r» или «c» приводят к матричному выводу. Если результат одномерный и указана «r», создается матрица 1 х N (строка). Если результат одномерный и указана «c», создается матрица N х 1 (столбец). Если результат двумерный, оба значения дают одинаковый матричный результат.

Целое число в виде строки указывает, по какой оси складывать несколько массивов, разделенных запятыми. Строка из двух целых чисел, разделенных запятыми, позволяет указать минимальное количество измерений, в которые каждый элемент должен быть приведён, как второе целое число (ось для конкатенации всё ещё задаётся первым целым числом).

Строка с тремя целыми числами, разделенными запятыми, позволяет указать ось для конкатенации, минимальное количество измерений для приведения элементов, и на какой оси должны располагаться элементы массивов, имеющие меньше указанного количества измерений. Другими словами, третье целое число позволяет указать, где должны располагаться единицы в форме массивов, которые были преобразованы. По умолчанию они размещаются в начале кортежа формы. Третий аргумент позволяет указать, где должно быть расположено начало массива вместо этого. Таким образом, третий аргумент «0» поместит единицы в конец кортежа формы массива. Отрицательные целые числа указывают, где в новом кортеже формы должно располагаться последнее измерение преобразованных массивов, поэтому значение по умолчанию — «-1».

Parameters:
Не функция, поэтому не принимает параметров
Returns:
Конкатенированный массив 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.15.4/reference/generated/numpy.r_.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API