Что выведет код Junior Производительность и память обновлено

np.where и np.select

Вопрос

Что выведет код? По строке на каждый print.

import numpy as np
import pandas as pd

s = pd.Series([50, 500, 5000])
print(np.where(s > 100, 'big', 'small').tolist())
print(np.select([s < 100, s < 1000], ['low', 'mid'], default='high').tolist())

Попробуйте сами

Напишите, что выведет код: каждый вывод с новой строки.

Показать ответ и разбор

Коротко

Код выведет: ['small', 'big', 'big'], ['low', 'mid', 'high']. np.where выбирает из двух значений по маске. np.select проверяет условия по порядку: 50 подходит под первое, 500 только под второе, 5000 ни под одно и получает default.

Что выведет

['small', 'big', 'big']
['low', 'mid', 'high']

Разбор

np.where выбирает из двух значений по маске. np.select проверяет условия по порядку: 50 подходит под первое, 500 только под второе, 5000 ни под одно и получает default.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.