Numpy Array (Что означает этот ответ?) - PullRequest
1 голос
/ 07 января 2020

Оцените результаты следующих операторов для следующего NumPy массива A:

A = numpy.array([[8,3,1,0] , [2,2,4,-1] , [3,-2,1,6]])

>> z = A[[0,2],[3,0]] 
"Question: What is the output?"

array([0, 3]) "Answer"

>> t = numpy.where(A[1:3,1:]>2)
"Question: What is the output?"

(array([0, 1], dtype=int64), array([1, 2], dtype=int64)) "Answer"

Я не понял ответа. Что мы обработали массив?

Ответы [ 2 ]

3 голосов
/ 07 января 2020

Вы получаете элементы из первого ([8,3,1,0]) и третьего ([3,-2,1,6]) массивов A (из-за спецификаций [0,2] на основе нуля).

Теперь из первого массива вы получить элемент 3, то есть четвертое число, которое 0.

. Из третьего массива вы получите элемент 0, то есть первое число, которое 3

. Для вашего второго вопроса вы нарезаете элементы начиная с второго массива, начиная со второго до четвертого, то есть [2,4,-1] , [-2,1,6]

Из этих массивов вы пытаетесь получить элементы больше 2. Есть только два числа - из массива 0 и 1 и соответствующих элементов (4 и 6) имеют порядковые номера 1 и 2 в определении python, начинающемся с нуля. Это ответ.

1 голос
/ 07 января 2020

Это называется нарезка. Сначала получите значение A [[0,2]], где 0 - первый элемент (список), а 2 - третий элемент

array([[ 8,  3,  1,  0],
       [ 3, -2,  1,  6]])

Затем A [[0,2], [3,0]] означает получить треть первого списка и первый элемент второго списка. Таким образом,

array([0, 3])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...