Освоение объединений данных в Pandas: подробное руководство для начинающих

Манипулирование данными — важнейший аспект любой задачи анализа данных, и одной из распространенных операций является объединение данных из нескольких источников. В pandas, мощной библиотеке Python для манипулирования данными, доступны различные методы слияния и объединения наборов данных. В этой статье блога мы рассмотрим несколько методов выполнения соединений в pandas и попутно предоставим примеры кода. Итак, давайте углубимся и освоим искусство объединения данных!

  1. Внутреннее соединение:

Внутреннее соединение, также известное как соединение пересечений, объединяет строки из двух наборов данных, которые имеют совпадающие значения в указанном столбце. Он возвращает только общие записи между наборами данных.

import pandas as pd
df1 = pd.DataFrame({'ID': [1, 2, 3], 'Name': ['Alice', 'Bob', 'Charlie']})
df2 = pd.DataFrame({'ID': [2, 3, 4], 'Age': [25, 30, 35]})
inner_join = pd.merge(df1, df2, on='ID', how='inner')
print(inner_join)

Выход:

   ID     Name  Age
0   2      Bob   25
1   3  Charlie   30
  1. Присоединиться слева:

Левое соединение, также известное как левое внешнее соединение, включает все строки из левого набора данных и соответствующие строки из правого набора данных. Если совпадений нет, столбцы заполняются значениями NaN.

left_join = pd.merge(df1, df2, on='ID', how='left')
print(left_join)

Выход:

   ID     Name   Age
0   1    Alice   NaN
1   2      Bob  25.0
2   3  Charlie  30.0
  1. Правильное присоединение:

Правое соединение, также известное как правое внешнее соединение, включает все строки из правого набора данных и соответствующие строки из левого набора данных. Если совпадений нет, столбцы заполняются значениями NaN.

right_join = pd.merge(df1, df2, on='ID', how='right')
print(right_join)

Выход:

   ID     Name  Age
0   2      Bob   25
1   3  Charlie   30
2   4      NaN   35
  1. Полное присоединение:

Полное соединение, также известное как полное внешнее соединение, объединяет все строки из обоих наборов данных. Если совпадений нет, столбцы заполняются значениями NaN.

full_join = pd.merge(df1, df2, on='ID', how='outer')
print(full_join)

Выход:

   ID     Name   Age
0   1    Alice   NaN
1   2      Bob  25.0
2   3  Charlie  30.0
3   4      NaN  35.0

В этой статье мы рассмотрели различные методы объединения данных в pandas. Мы рассмотрели внутреннее соединение, левое соединение, правое соединение и полное соединение, каждое из которых служит разным целям при объединении наборов данных. Используя эти методы, вы можете эффективно объединять и анализировать данные из нескольких источников в своих проектах анализа данных. Так что давайте, практикуйте эти методы и раскройте возможности манипулирования данными с помощью панд!

Не забудьте добавить эту статью в закладки для дальнейшего использования и поделиться ею со своими коллегами-энтузиастами данных!