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 х N (строка). Если результат одномерный и указана ‘c’, то создаётся матрица N х 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]])
© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.r_.html