Pandas join або merge: у чому різниця?
Функції join() і merge() можна використовувати для об’єднання двох панд DataFrames.
Ось головна відмінність між двома функціями:
- Функція join() поєднує два DataFrames за індексом.
- Функція merge() об’єднує два DataFrames на основі вказаного вами стовпця.
Ці функції використовують такий базовий синтаксис:
#use join() to combine two DataFrames by index df1. join (df2) #use merge() to combine two DataFrames by specific column name df1. merge (df2,on=' column_name ')
У випадках, коли ви знаєте, що хочете об’єднати два DataFrame за індексом, можна використати функцію join() , щоб зберегти введення.
Наступні приклади показують, як використовувати кожну функцію на практиці.
Приклад 1: Як використовувати функцію join().
Наступний код показує, як використовувати функцію join() для об’єднання двох DataFrames:
import pandas as pd #create two DataFrames df1 = pd. DataFrame ({' name ': ['A', 'B', 'C'], ' points ': [8, 12, 19]}). set_index (' name ') df2 = pd. DataFrame ({' name ': ['A', 'B', 'C'], ' steals ': [4, 5, 2]}). set_index (' name ') #view two DataFrames print (df1); print (df2) steal points name name A 8 A 4 B 12 B 5 C 19 C 2 #use join() function to join together two DataFrames df1. join (df2) steal points name At 8 4 B 12 5 C 19 2
За замовчуванням функція join() об’єднала два DataFrames за допомогою стовпця індексу.
Приклад 2: Як використовувати функцію merge().
Наступний код показує, як використовувати функцію merge() для об’єднання двох DataFrames:
import pandas as pd #create two DataFrames df1 = pd. DataFrame ({' name ': ['A', 'B', 'C'], ' points ': [8, 12, 19]}). set_index (' name ') df2 = pd. DataFrame ({' name ': ['A', 'B', 'C'], ' steals ': [4, 5, 2]}). set_index (' name ') #view two DataFrames print (df1); print (df2) steal points name name A 8 A 4 B 12 B 5 C 19 C 2 #use join() function to join together two DataFrames df1. merge (df2, on=' name ') steal points name At 8 4 B 12 5 C 19 2
Зауважте, що функція merge() повернула той самий результат, але ми повинні були явно вказати пандам приєднатися до DataFrames за допомогою стовпця «name».
Додаткові ресурси
Ви можете знайти повну онлайн-документацію для функцій join() і merge() тут:
Документація для функції join().
Документація для функції merge().
У наступних посібниках пояснюється, як виконувати інші типові функції в pandas:
Як додати рядки до Pandas DataFrame
Як додати рядок заголовка до Pandas DataFrame
Як отримати перший рядок Pandas DataFrame
Як отримати перший стовпець із Pandas DataFrame