Файлы к уроку:
Ссылки:
Описание
В этом уроке:
- Повторим как импортировать данные из книги Excel
- Объединение датафреймов по вертикали методами append, concat
- Добавление строк в DataFrame
- Удаление строк из DataFrame методом drop
- Фильтрация DataFrame условием
- Фильтрация DataFrame срезом
Решение
Сначала импортируем нужные модули
import pandas as pd
import numpy as np
import datetime
Объединение по вертикали методом append
Предварительно выполним импорт данных для задач из этого урока.
# Первый источник
df_1 = pd.read_excel('data.xlsx',
sheet_name='Sheet1')
df_1.shape
# Второй источник
df_2 = pd.read_excel('data.xlsx',
sheet_name='Sheet2')
df_2.shape
Объединяем 2 датафрейма в 1 методом append.
# Операция append
appended = df_1.append(df_2)
appended.shape
Объединение по вертикали методом concat
Создадим копии датафреймов и потом их соединим.
# 2 новых датафрейма
df_3 = df_1.copy()
df_4 = df_2.copy()
# Конкатенация
concated = pd.concat([df_3, df_4])
concated.shape
Добавим дополнительные индексы, чтобы было видно какие строки к какому датафрейму принадлежали.
# Добавление дополнительных ключей
concated_idx = pd.concat([df_3, df_4],
keys=['df_3', 'df_4'])
concated_idx[-4:]
Добавить строку в датафрейм вручную
# Добавление новых строк
concated.loc[74] = ['555666',
'Gleb Kapustin',
'SREZ-AL',
8,
8.88,
125.25,
pd.to_datetime('2020-03-30 23:56:26.123456')]
concated[-4:]
Удаление строк методом drop
dropped = concated.drop([0, 1])
dropped[:4]
Фильтрация строк условием
# Цена > 50
price_50 = concated[concated['unit price'] > 50]
price_50[-4:]
Найдем сумму столбца ‘ext price’.
# Сумма продаж с ценой > 50
price_50['ext price'].sum()
Фильтрация срезом.
Фильтрация срезом
sliced = concated[-1:]
sliced
Примененные функции
- pandas.read_excel
- pandas.DataFrame.append
- pandas.concat
- pandas.to_datetime
- pandas.DataFrame.drop
Курс Pandas Базовый
Номер урока | Урок | Описание |
---|---|---|
1 | Pandas Базовый №1. Создание DataFrame и запись в CSV | Познакомимся с объектом DataFrame. Научимся его создавать двумя разными способами и научимся записывать его в файл. |
2 | Pandas Базовый №2. Создание DataFrame 2 | Изучим еще несколько способов создания объекта DataFrame. В этом уроке мы создадим DataFrame из массива numpy, Series, словаря Series. |
3 | Pandas Базовый №3. Отбор строк и столбцов, Размерность, Импорт CSV | Получить информацию о размере DataFrame, отбор строк и столбцов, индексация. |
4 | Pandas Базовый №4. Операции со столбцами DataFrame | Операции со столбцами в Pandas. Переименование столбцов, добавление новых столбцов, изменить существующий столбец, удаление столбцов. |
5 | Pandas Базовый №5. Операции со строками | Объединение по вертикали методами append и concat, Создание строк вручную, Удаление строк методом drop, Фильтрация строк условием или срезом. |
6 | Pandas Базовый №6. Индексы | Зачем нужны индексы, Как задать индекс, Как пользоваться индексами. |
7 | Pandas Базовый №7. Категории | Что такое категориальные переменные. |