В наборе данных Iris есть три класса с метками 0, 1, 2. Когда вы видите X, y = X[y != 2], y[y != 2]
, это просто означает, что новые значения X и y не будут содержать записи для класса с меткой 2.
Вот каконо работает.y != 2
возвращает логический вектор, равный длине y, который содержит True, если y было 0 или 1, и False, где y был 2, в соответствии с заданным условием y! = 2. Т.е. [True, False, False, ...]
.Его также иногда называют маской.
y[y != 2]
- это логическое индексирование, оно возвращает новый массив, состоящий из таких элементов y, где y не равен 2. Т.е. результирующий массив не будет содержать 2s.
Наконец, X[y != 2]
возвращает новый массив X с элементами, которые соответствуют истинным значениям маски.
Поскольку X и y одинаковой длины, применение к ней одной и той же маски работает отличнои в этом случае фактически удаляются все записи с меткой класса 2.
Теперь с целью удаления всего класса из набора данных - это то, что вы должны искать в учебном пособии, которое вы читали.
X.shape возвращает кортеж с количеством строк и количеством столбцов в кадре данных.Это то, что ученые называют образцами и функциями.