Кажется, что аргумент оси в numpy.delete() обратный от всех аргументов другой оси как в numpy, так и в pandas. Как правило, ось = 0 относится к столбцам, а ось = 1 относится к строкам. Например:Обратные оси в numpy.delete
import numpy as np
mat=np.array([[1,2], [3,4]])
# sum columns
np.sum(mat, axis=0)
# sum rows
np.sum(mat, axis=1)
# min of columns
np.min(mat, axis=0)
Это все работает, как ожидалось. Но если я использую numpy.delete, мне нужно переключиться:
# delete 1st row
np.delete(mat, 0, axis=0)
# delete 1st column
np.delete(mat, 0, axis=1)
Кто-нибудь еще заметил это? Я сошел с ума или это по дизайну?
Итак, почему ось перевернута во всех других командах (т. Е. Суммирование по строкам равно оси = 1). Есть ли для этого соглашение? – Nate
Это согласуется: для 2-го массива «суммирование по строкам» фактически «суммируется вдоль оси 1». –
Ох. Правильно. Понял. Я не думал об этом. Теперь это намного больше. – Nate