Jak mogę stwierdzić, czy NumPy tworzy widok lub kopię?
Dla minimalnego przykładu roboczego, digitalizuj tablicę 2D.numpy.digitize
wymaga macierzy 1D:
import numpy as np
N = 200
A = np.random.random((N, N))
X = np.linspace(0, 1, 20)
print np.digitize(A.ravel(), X).reshape((N, N))
Terazmówi dokumentacja:
... Kopia jest wykonywana tylko w razie potrzeby.
Skąd mam wiedzieć, czyravel
skopiuj to jest „potrzebne” w tym przypadku? Ogólnie - czy można określić, czy dana operacja tworzy kopię lub widok?