PD Merge: Simplifying Your Data Merging Process

pd merge - это функция merge, которая является одной из основных функций библиотеки pandas для объединения датафреймов по заданным столбцам. Функция merge можно использовать для объединения двух датафреймов на основе одного или нескольких столбцов.

Пример:

Имеются два датафрейма df1 и df2, каждый из которых содержит информацию о заказах в интернет-магазинах:

python
import pandas as pd
df1 = pd.DataFrame({'заказ': [101, 102, 103, 104],
                    'клиент': ['Иван', 'Петр', 'Сергей', 'Мария'],
                    'город': ['Москва', 'Санкт-Петербург', 'Екатеринбург', 'Новосибирск']})
                    
df2 = pd.DataFrame({'заказ': [101, 102, 103, 104],
                    'дата': ['2021-01-01', '2021-01-05', '2021-01-10', '2021-01-15'],
                    'стоимость': [1000, 2000, 3000, 4000]})

В датафрейме df1 содержится информация о клиентах и городах, в которых был сделан заказ, а в датафрейме df2 - информация о датах заказов и их стоимости.

Для того чтобы объединить эти два датафрейма на основе столбца "заказ", можно воспользоваться функцией merge:

python
df = pd.merge(df1, df2, on='заказ')
print(df)

Результат:

python
   заказ  клиент            город        дата  стоимость
0    101    Иван           Москва  2021-01-01       1000
1    102    Петр  Санкт-Петербург  2021-01-05       2000
2    103  Сергей     Екатеринбург  2021-01-10       3000
3    104   Мария      Новосибирск  2021-01-15       4000

Функция merge автоматически объединяет датафреймы по столбцу "заказ", на основе которого они связаны. В результате получается новый датафрейм df, в котором содержится информация из обоих исходных датафреймов.

Если в исходных датафреймах есть столбцы с одинаковыми именами, то в результате merge они будут переименованы автоматически. Для того чтобы сохранить их имена, можно использовать параметры suffixes:

python
df = pd.merge(df1, df2, on='заказ', suffixes=('_клиент', '_заказ'))
print(df)

Результат:

python
   заказ  клиент            город        дата  стоимость
0    101    Иван           Москва  2021-01-01       1000
1    102    Петр  Санкт-Петербург  2021-01-05       2000
2    103  Сергей     Екатеринбург  2021-01-10       3000
3    104   Мария      Новосибирск  2021-01-15       4000

Функция merge позволяет также выбирать тип объединения (inner, outer, left, right) с помощью параметра how:

python
df1 = pd.DataFrame({'заказ': [101, 102, 103, 104],
                    'клиент': ['Иван', 'Петр', 'Сергей', 'Мария'],
                    'город': ['Москва', 'Санкт-Петербург', 'Екатеринбург', 'Новосибирск']})
                    
df2 = pd.DataFrame({'заказ': [101, 102, 105, 106],
                    'дата': ['2021-01-01', '2021-01-05', '2021-01-10', '2021-01-15'],
                    'стоимость': [1000, 2000, 3000, 4000]})
df = pd.merge(df1, df2, on='заказ', how='inner')
print(df)

Код выше соединяет два датафрейма по столбцу "заказ" с помощью внутреннего объединения. Результат:

python
   заказ клиент   город        дата  стоимость
0    101   Иван  Москва  2021-01-01       1000
1    102   Петр     Санкт-Петербург   2021-01-05       2000

У внутреннего объединения все элементы, которые не совпадают в обоих датафреймах, отбрасываются.

Таким образом, функция merge позволяет на основе заданных столбцов объединять два или более датафрейма в один общий фрейм. Это очень удобно, если необходимо анализировать информацию из нескольких источников или комбинировать ее в разных формах, для определения новых взаимосвязей и бизнес-инсайтов.

Похожие вопросы на: "pd merge "

Style Top: лучшие идеи для создания стильного образа
NGINX Proxy Pass - Учимся настраивать проксирование
Перевод двоичного кода в текст онлайн
Выравнивание по вертикали CSS: способы и примеры
Пролистай вправо - удобная навигация для просмотра контента
Java: Как конвертировать строку в тип double?
Python XML Parser
Time Elapsed - Track and Measure Elapsed Time Easily
HTML Download - Скачать бесплатно и быстро
Тип submit - все о форме отправки