Очистка данных — пропущенные значения
Урок 6 из 19 курса Аналитика в pandas на Coddy.
Обычно CSV-файлы содержат пропущенные данные, неверные имена столбцов, дубликаты, некорректные значения и неверные типы данных. Модуль Pandas обладает всеми инструментами для решения этих проблем.
Пропущенные данные
Чтобы узнать, является ли значение пропущенным или нет:
df.isna()Чтобы узнать, сколько пропущенных значений в каждом столбце:
df.isna().sum()Функция isna() преобразует все значения в true или false (пропущено или нет), затем применяется метод. sum() будет рассматривать true как 1, а false как 0.
Чтобы перебрать столбцы и количество пропущенных в них значений, используйте метод items() так же, как в словаре (хотя это объект Pandas series):
for column, missing_num in df.isna().sum().items():
print(column, missing_num)Чтобы заполнить все эти пропущенные значения для всего датафрейма, используйте метод fillna():
df = df.fillna("some value")Чтобы заполнить пропущенные значения только для одного столбца, используйте функцию fillna() для этого столбца:
df["some_column"] = df["some_column"].fillna("some value")Также есть возможность удалить все строки с пропущенными значениями:
df = df.dropna()Задание
ЛегкоCSV-файл missing.csv содержит ошибки.
Вот первые 5 строк файла:
ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID
1,France,Signal violet,marksmanship,14,0.1924,1
1,France,Signal violet,marksmanship,14,0.1924,1
2,Solomon Islands,Pearl violet,,4,,1
3,Germany,,calligraphy,12,0.88646,0Очистите данные:
- Заполните пропущенные значения во всех столбцах, в которых более
2пропущенных значений, значениемMissing - Удалите все остальные строки, содержащие пропущенные значения.
Чтобы увидеть прогресс, выведите df: print(df)
Сохраните окончательный результат в переменной df.
Не выводите df, чтобы пройти тест!
Попробуйте сами
# pandas as pd уже импортирован
df = pd.read_csv("./missing.csv")
# Напишите свой код ниже
Все уроки раздела Аналитика в pandas
4Анализ данных с Pandas
Описательная статистикаГруппировка и агрегация данныхРазличные агрегацииMerge и Concat2Работа с DataFrame
Знакомство с DataFrameДоступ к даннымОчистка данных — пропущенные значенияОчистка данных — дополнительные инструменты3Манипуляции с данными в Pandas
Возврат нужного результатаФильтрация данныхДобавление и удалениеИзменение данныхИзменение строкПользовательские изменения