numpy.r
-
numpy.r_ = -
Переводит объекты срезов в конкатенацию по первой оси.
Это простой способ быстро создать массивы. Есть два варианта использования.
- Если выражение индекса содержит массивы, разделенные запятыми, то их стекируют по первой оси.
- Если выражение индекса содержит обозначение среза или скаляры, то создается одномерный массив с диапазоном, указанным обозначением среза.
Если используется обозначение среза, синтаксис
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 (столбец). Если результат двумерный, оба варианта дают тот же результат матрицы.
Целое число в строке указывает ось, вдоль которой должны быть сложены несколько массивов, разделённых запятыми. Строка из двух целых чисел, разделённых запятыми, позволяет указать минимальное количество измерений, в которые должно быть преобразовано каждое значение, как второе целое число (ось для конкатенации по-прежнему задаётся первым целым числом).
Строка с тремя целыми числами, разделёнными запятыми, позволяет указать ось для конкатенации, минимальное количество измерений для принудительного преобразования элементов и ось, которая должна содержать начало массивов, имеющих размерность меньше заданной. Другими словами, третье целое число позволяет указать, где должны быть размещены 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]])
© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/generated/numpy.r_.html