Как Data Scientist вы столкнетесь с некоторыми значениями, которые «не являются числами» (Nan), и другими значениями, которые бесконечны в ваших наборах данных. Очень важно знать, как эффективно с ними справляться. К счастью, в библиотеке Numpy есть несколько функций, которые помогают находить и обрабатывать эти значения.

Установка Numpy

Первое, что вам нужно сделать, если Numpy не установлен в вашей среде Python, — это установить его с помощью следующей команды из командной строки.

пип установить numpy

В качестве альтернативы, если вы хотите установить это в блокноте Jupyter, вы можете использовать ту же команду, но с восклицательным знаком перед ней, чтобы указать Jupyter, что вы выполняете элемент командной строки.

Импорт Numpy

Далее вам нужно импортировать библиотеку Numpy в память следующим образом:

Теперь вы можете вызвать Numpy, просто набрав буквы np.

Создайте несколько переменных

Затем я определяю некоторые переменные для использования в качестве примеров.

1) Numpy.isnan() и 2)Numpy.isfinite()

Первые две функции Numpy, которые мы рассмотрим, — это функция np.isnan() и функция np.isfinite(). Они производят логическое значение, как показано в коде ниже.

Мы также можем использовать эти функции для списков элементов, подобных этому:

3) Numpy.any() и 4) Numpy.all()

Если вы хотите проверить, являются ли все элементы в x_list конечными или нет, вы можете использовать функцию np.all() с функциями np.isnan() и np.isfinite().

Вы также можете проверить, являются ли какие-либо элементы в вашем списке конечными или нет, используя функцию np.any() с np.isnan и np.isfinite().

До сих пор мы имели дело с конечными числами, но что, если вы хотите создать некоторые числа, которые не были бы числами или конечными?

5) Numpy.inf и 6) Numpy.nan

Чтобы создать бесконечное число, вы можете использовать функцию np.inf. Он не требует скобок. Вы также можете создать значение Nan с помощью функции np.nan.

Здесь я создал список элементов с некоторыми номерами и элементами np.inf и элементом np.nan.

Затем я могу использовать функцию np.any(np.isnan()) и функцию np.all(np.isfinite()) в y_list, чтобы увидеть, как это работает.

7) Numpy.average()

Чтобы эффективно работать с Nan и бесконечными значениями, вы можете либо заменить их нулевыми средними значениями, которые не будут слишком сильно искажать распределение, либо удалить значения все вместе. Для этого набора данных я не хотел удалять какие-либо значения и не хотел заменять какие-либо значения нулем. Вместо этого я хочу сделать так, чтобы замена отсутствующих, Nan или бесконечных значений не изменяла среднее значение набора данных, поэтому лучшей заменой для Nan и бесконечных значений является среднее значение. В зависимости от конкретных данных может потребоваться выполнение сложных вычислений для заполнения значений данных, которые являются бесконечными или Nan. Здесь я заменяю Nan и бесконечные значения средним значением не-Nan и небесконечных значений, используя функцию np.average().

Теперь я могу использовать эти значения для других занятий по науке о данных и машинному обучению.

Заключение

Я надеюсь, что вы сможете использовать эти функции, чтобы помочь вам в ваших проектах по науке о данных, машинному обучению и компьютерному программированию на Python.

Интернет-библиография:

Для получения дополнительной информации об этих и других функциях Numpy посетите следующие веб-сайты:



numpy.org