Что делает метод merge python?
Ответы
Алёна Шереметьева
24 июня 2024
Метод merge() в Python работает по принципу операции JOIN в SQL. Он объединяет два или более фрейма данных на основе общих столбцов.
С помощью merge()
можно выполнить пять типа объединений: «INNER», «LEFT», «RIGHT», «OUTER» и «CROSS»
- left. Использует только ключи из левого фрейма, подобно левому внешнему соединению в SQL. Сохраняет порядок ключей.
- right. Использует только ключи из правого фрейма, подобно правому внешнему соединению в SQL. Сохраняет порядок ключей.
- outer. Использует объединение ключей из обоих фреймов, подобно полному внешнему соединению в SQL. Сортирует ключи лексикографически.
- inner. Использует пересечение ключей из обоих фреймов, подобно внутреннему соединению в SQL. Сохраняет порядок левых ключей.
- cross. Создаёт перекрёстное произведение из обоих фреймов, сохраняет порядок левых ключей.
Метод возвращает новый фрейм данных, при этом левый и правый фреймы данных не изменяются.
Пример:
import pandas as pd
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
'B': ['B0', 'B1', 'B2']},
index=['K0', 'K1', 'K2'])
df2 = pd.DataFrame({'C': ['C0', 'C2', 'C3'],
'D': ['D0', 'D2', 'D3']},
index=['K0', 'K2', 'K3'])
result = pd.merge(df1, df2, left_index=True, right_index=True, how='outer')
print(result)
# K0 A0 B0 C0 D0
# K1 A1 B1 NaN NaN
# K2 A2 B2 C2 D2
# K3 NaN NaN C3 D3
0
0