Как 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 посетите следующие веб-сайты: