Возвращает ли Numpy просмотр или копирование при сочетании нарезки и расширенной индексации?Python

Программы на Python
Ответить
Anonymous
 Возвращает ли Numpy просмотр или копирование при сочетании нарезки и расширенной индексации?

Сообщение Anonymous »

Следующий фрагмент:

Код: Выделить всё

import numpy as np

x = np.arange(25).reshape(5, 5)
print(x.base)
y = x[:2, [0, 2]]
print(y.base)
выходы

Код: Выделить всё

[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
24]
[[0 5]
[2 7]]
Из документации я не мог понять, следует ли y просматривать или копировать. Есть идеи, почему y является представлением и почему его база отличается от x?
Другой пример:

Код: Выделить всё

>>> import numpy as np
>>> x = np.arange(25).reshape(5, 5)
>>> x[:2, [0,2]].base
array([[0, 5],
[2, 7]])
>>> x[[0,2], :2].base
>>>
Задокументировано ли где-нибудь это поведение, чтобы пользователь мог предсказать, будет ли результат смешанной операции (расширенное + базовое индексирование) просмотром или копированием?


Подробнее здесь: https://stackoverflow.com/questions/792 ... d-indexing
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»