Чудово!
Completion показник покращився до 3.03single
Керування Категоріальними Змінними
Свайпніть щоб показати меню
Тепер ви працюватимете з набором даних, у якому немає пропущених значень. Значення NaN у стовпці 'Age' були замінені на середнє цього стовпця, а значення NaN у стовпці 'Fare' було видалено.
Тож настав час дізнатися, як працювати з категоріальними змінними. Категоріальні означає, що вони мають певні категорії. Наприклад, у стовпці 'Sex' є 'male' та 'female'; або у стовпці 'Embarked' — 'Q', 'S' та 'C'.
Що потрібно зробити, щоб підрахувати кількість значень у кожній категорії або отримати інформацію про них?
Ви вже знаєте про .loc[], .isin(), .between() та багато інших функцій, але у pandas існує ще більш зручний та елегантний спосіб це зробити. Використовуйте функцію .get_dummies(). Наприклад, застосуємо її до стовпця 'Embarked'. Подивіться на реалізацію та результат (ми виведемо імена 5 випадкових пасажирів та нові створені стовпці).
1234import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/titanic3.csv', index_col = 0) data = pd.get_dummies(data, columns = ['Embarked']) print(data[['Name', 'Embarked_C', 'Embarked_Q', 'Embarked_S']].sample(5))
Розглянемо один із можливих результатів, а саме одну з можливих комбінацій п’яти випадково вибраних рядків. Ви можете прокручувати таблицю горизонтально, щоб переглянути всі стовпці:
Пояснення:
У результаті наша функція розділила стовпець 'Embarked' на три стовпці: 'Embarked_C', 'Embarked_Q', 'Embarked_S'. Загалом маємо три категорії. Кожен пасажир має свою категорію у стовпці 'Embarked'. Таким чином, функція створює три стовпці, що відповідають кожній категорії, і для кожного пасажира заповнює рядок у відповідному стовпці значенням 1, якщо особа спочатку була пов'язана з цією географією; інакше — ставить 0. Таким чином, 1 з'являється лише в одному стовпці.
pd.get_dummies(data, columns = ['Embarked'])
pd.get_dummies()— ця функція перетворює категоріальні змінні на даммі (1 або 0);data— датафрейм, який ви хочете використати;columns = ['Embarked']— стовпці, які містять категоріальні змінні, що потрібно перетворити на даммі. Зверніть увагу: назви стовпців обов'язково потрібно вказувати у списку.
Swipe to start coding
Ваше завдання — перетворити стовпець 'Sex' на стовпець із даммі-змінними замість категоріальних значень. Далі виведіть суму значень у кожній категорії.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат