Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Иногда при работе с данными встречается ситуация, когда все данные в таблице представлены в неудобном или неправильном порядке. Например, данные об отпусках сотрудников, где месяцы перечислены не по порядку:
| Сотрудник | Месяц | Количество дней |
|————|——-|——————|
| Иванов | Май | 14 |
| Сидоров | Февраль| 7 |
| Петров | Август| 10 |
В таких случаях возникает необходимость отсортировать данные по определенной колонке. В Python с помощью библиотеки pandas это можно сделать довольно просто.
Pandas — это мощная библиотека для работы с данными в Python. Одной из основных структур данных в этой библиотеке является DataFrame — двухмерная таблица данных с метками строк и столбцов.
Для сортировки данных в DataFrame по определенной колонке используется метод sort_values()
. Этот метод принимает на вход имя колонки, по которой нужно отсортировать данные, и возвращает DataFrame, отсортированный по указанной колонке.
Вернемся к нашему примеру с данными об отпусках. Допустим, данные загружены в DataFrame df
. Чтобы отсортировать эти данные по месяцам, можно использовать следующий код:
df = df.sort_values('Месяц')
Теперь данные в df
отсортированы по месяцам:
| Сотрудник | Месяц | Количество дней |
|————|——-|——————|
| Сидоров | Февраль| 7 |
| Иванов | Май | 14 |
| Петров | Август| 10 |
Однако, в данном случае месяцы отсортированы в алфавитном порядке, а не в календарном. Чтобы решить эту проблему, можно добавить вторую колонку с номерами месяцев и отсортировать данные уже по ней:
df['Номер месяца'] = [5, 2, 8] df = df.sort_values('Номер месяца')
Теперь данные отсортированы в календарном порядке:
| Сотрудник | Месяц | Количество дней | Номер месяца |
|————|——-|——————|—————|
| Сидоров | Февраль| 7 | 2 |
| Иванов | Май | 14 | 5 |
| Петров | Август| 10 | 8 |
Таким образом, с помощью библиотеки pandas можно легко сортировать данные в DataFrame по любой колонке.
Изучайте Python на онлайн-курсе от Skypro «Python-разработчик». Программа рассчитана на новичков без опыта программирования и технического образования. Курс проходит в формате записанных коротких видеолекций. Будет много проверочных заданий и мастер-классов. В конце каждой недели — живая встреча с экспертами в разработке для ответов на вопросы и разбора домашек.
Добавить комментарий