Выбор ответа Middle Описательная статистика обновлено
np.std и pandas std дают разные числа
Вопрос
На одном массиве np.std(x) вернул 2.0, а pd.Series(x).std() вернул 2.31. Почему?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: numpy делит на n (ddof=0), pandas на n - 1. Разные умолчания ddof: в numpy стандартное отклонение генеральной совокупности, в pandas выборочное.
Варианты ответа
- pandas пропускает NaN при расчёте, а numpy нет
- numpy округляет результат до одного знака
- pandas считает медианное абсолютное отклонение
- numpy делит на n (
ddof=0), pandas на n - 1правильный ответ
Разбор
Разные умолчания ddof: в numpy стандартное отклонение генеральной совокупности, в pandas выборочное. Чтобы совпало, укажите ddof явно. Обработка NaN тут ни при чём, если пропусков нет, никто ничего не округляет, а медианное отклонение это другая функция.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Термины по теме
Ещё по теме «Описательная статистика»
- Почему дисперсия выборки делится на n - 1
- Среднее, медиана и выборочное std на Python
- Выбросы по правилу Тьюки на Python
- Правило Тьюки для выбросов
- Меры описательной статистики
- Среднее больше медианы: что это значит
- Медиана или среднее для чека
- Что делать с выбросами в аналитике