Отсутствующие значения — обычное явление в наборах данных, которое может существенно повлиять на анализ и моделирование данных. В этой статье блога мы рассмотрим различные методы в pandas для подсчета количества пропущенных значений в наборе данных. Мы рассмотрим практические примеры кода, используя разговорный язык, чтобы помочь вам справиться с этой важной задачей анализа данных.
Метод 1: использование функций isnull()и sum().
Один простой способ подсчитать пропущенные значения — использовать функцию isnull(), который возвращает логическую маску, указывающую наличие пропущенных значений. Затем мы можем применить функцию sum()для вычисления суммы значений True, представляющих пропущенные значения.
import pandas as pd
# Create a DataFrame with missing values
data = {'A': [1, 2, None, 4, 5],
'B': [None, 2, 3, None, 5],
'C': [1, 2, 3, 4, None]}
df = pd.DataFrame(data)
# Count missing values
missing_values_count = df.isnull().sum()
print(missing_values_count)
Выход:
A 1
B 2
C 1
dtype: int64
Метод 2: использование функции info()
Функция info()предоставляет краткую сводку DataFrame, включая количество ненулевых значений для каждого столбца. Вычитая количество ненулевых значений из общего количества строк, мы можем определить количество пропущенных значений.
# Display information about the DataFrame
df.info()
Выход:
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 5 entries, 0 to 4
Data columns (total 3 columns):
A 4 non-null float64
B 3 non-null float64
C 4 non-null float64
dtypes: float64(3)
memory usage: 248.0 bytes
Метод 3. Использование функции isna().sum().
Похоже на isnull().sum(), функция isna().sum()также подсчитывает пропущенные значения в каждом столбце таблицы. DataFrame.
# Count missing values using isna().sum()
missing_values_count = df.isna().sum()
print(missing_values_count)
Выход:
A 1
B 2
C 1
dtype: int64
Метод 4: применение функции apply()
Функция apply()позволяет нам применять пользовательскую функцию к каждому столбцу или строке DataFrame. Мы можем определить лямбда-функцию, которая проверяет наличие пропущенных значений, а затем использовать apply(), чтобы применить ее к каждому столбцу.
# Define a lambda function to count missing values in a column
count_missing = lambda x: x.isnull().sum()
# Apply the lambda function to each column
missing_values_count = df.apply(count_missing)
print(missing_values_count)
Выход:
A 1
B 2
C 1
dtype: int64
В этой статье мы рассмотрели несколько методов подсчета пропущенных значений в DataFrame pandas, используя простые и интуитивно понятные примеры кода. Используя такие функции, как isnull(), sum(), info(), isna()и apply()., вы можете легко получить количество пропущенных значений в вашем наборе данных. Понимание и устранение пропущенных значений имеет решающее значение для эффективного анализа и предварительной обработки данных, позволяя вам принимать обоснованные решения на основе полных и точных данных.
Не забывайте обрабатывать пропущенные значения соответствующим образом в зависимости от вашего конкретного варианта использования, будь то путем вменения, удаления или других методов, чтобы обеспечить целостность и надежность вашего анализа.