Что такое эквивалент Python R NA?

Что такое python-эквивалент R NA?

Чтобы быть более конкретным: R имеет NaN, NA, NULL, Inf и -Inf. NA обычно используется, когда отсутствуют данные. Что такое эквивалент python?

Как библиотеки, такие как numpy и pandas обрабатывают отсутствующие значения?

Как scikit-learn обрабатывает отсутствующие значения?

Разница для python 2.7 и python 3?

Ответ 1

В настоящее время Scikit-learn не обрабатывает отсутствующие значения. Для большинства алгоритмов машинного обучения неясно, как обрабатывать отсутствующие значения, и поэтому мы полагаемся на пользователя, который обрабатывает их, прежде чем давать им алгоритм. У Numpy нет "отсутствующего" значения. Pandas использует NaN, но внутри числовых алгоритмов, которые могут привести к путанице. Можно использовать маскированные массивы, но мы не делаем этого в scikit-learn (пока).

Ответ 2

nan в numpy хорошо обрабатывается со многими функциями:

>>> import numpy as np
>>> a = [1, np.nan, 2, 3]
>>> np.nanmean(a)
2.0
>>> np.nansum(a)
6.0
>>> np.isnan(a)
array([False,  True, False, False], dtype=bool)

Ответ 3

для pandas взгляните на это.

http://pandas.pydata.org/pandas-docs/dev/missing_data.html

pandas использует NaN. Вы можете проверить нулевые значения с помощью isnull() или not null(), удалить их из фрейма данных с помощью dropna() и т.д. Эквивалент для объектов datetime - NaT