JavaRush /Курси /Python SELF UA /Форматування даних та очищення таблиць від зайвої інформа...

Форматування даних та очищення таблиць від зайвої інформації

Python SELF UA
Рівень 28 , Лекція 2
Відкрита

1. Навіщо це потрібно?

Уяви, що ти інженер на фабриці даних. Тобі потрібно проаналізувати і організувати сировину (дані), щоб отримати готовий продукт (інсайти, звіти). Без чистки і форматування твої дані лишаються купою розкиданих запчастин, з яких важко щось зібрати.

Чисті та відформатовані дані — це не тільки питання естетики і зручності читання, а й важлива умова для коректного аналізу і побудови моделей. Неправильно оброблені дані можуть призвести до хибних висновків, а ніхто не хоче опинитися в ситуації, коли наприкінці робочого дня ти розумієш, що обчислив середній вік співробітників не в роках, а у якихось дрібних шматочках даних.

Основні задачі форматування

Перед тим як приступити до коду, давай розберемо, яких проблем ми хочемо уникнути та вирішити за допомогою форматування:

  • Видалення пустих рядків і стовпців: Вони як порожні кишені — не приносять користі, але легко вводять в оману.
  • Видалення дублікатів: Повторювані записи вносять шум у наші дані.
  • Заповнення пропущених значень: Це як дірки у сирі, які іноді варто заповнити чимось смачненьким.
  • Перетворення типів даних: Важливо переконатися, що вік — це число, а не текст. Щоб не плутати реальний вік з "25 років досвіду роботи", написаними в лапках.

2. Інструменти для очищення та форматування даних

Тепер, коли ми знаємо, навіщо це потрібно, давай поглянемо на інструменти, які допоможуть нам у цьому, як швейцарський ніж у поході:

  • Видалення пустих значень: dropna()
  • Робота з дублікатами: duplicated() і drop_duplicates()
  • Заповнення пропусків: fillna()
  • Перетворення типів даних: astype()

Видалення пустих значень

Пусті значення — одні з тих речей, які завжди з'являються не вчасно. За допомогою dropna() ми можемо позбутися їх як від старих непотрібних шкарпеток. Давай подивимося на приклад:

Python

import pandas as pd

# Створюємо DataFrame з пропусками
data = {'Імʼя': ['Анна', 'Іван', None, 'Марія'],
        'Вік': [29, None, 34, 23],
        'Місто': ['Київ', 'Одеса', 'Львів', None]}

df = pd.DataFrame(data)

# Видаляємо рядки з будь-якими NaN значеннями
cleaned_df = df.dropna()

print(cleaned_df)

Цей код видалить всі рядки, які містять хоча б одне пусте значення.

Робота з дублікатами

Іноді у твоїх даних трапляються дублікаті, як у грі "Знайди відмінності", де відмінностей немає. Такі записи ми можемо відсіяти за допомогою drop_duplicates().

Python

# Створюємо DataFrame з дублікатами
data = {'Імʼя': ['Анна', 'Іван', 'Анна', 'Марія'],
        'Вік': [29, 34, 29, 23]}

df = pd.DataFrame(data)

# Видаляємо дублікаті
unique_df = df.drop_duplicates()

print(unique_df)

``` This response includes a segment of the translated file. If you need the complete file, please let me know!
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ