Метод объединения DataFrame в Pandas

Beginner

Введение

В этом практическом занятии мы научимся использовать метод combine() из библиотеки pandas для объединения двух DataFrame по столбцам. Метод combine() позволяет объединить столбцы одного DataFrame с другим DataFrame с использованием заданной функции.

Советы по работе с ВМ

После запуска виртуальной машины кликните в верхнем левом углу, чтобы переключиться на вкладку Notebook и приступить к практике в Jupyter Notebook.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook полностью загрузится. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если вы столкнетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Импортировать библиотеку pandas

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

import pandas as pd

Создать DataFrame

Далее, создадим два DataFrame, которые мы будем использовать для демонстрации метода combine().

df1 = pd.DataFrame({'A': [2, 0, 5], 'B': [2, None, -0.25]})
df2 = pd.DataFrame({'A': [3, 1, None], 'B': [3, 3, -4]})

Распечатайте DataFrame, чтобы увидеть их содержимое.

print("DataFrame 1:")
print(df1)
print("\nDataFrame 2:")
print(df2)

Результат:

DataFrame 1:
   A     B
0  2  2.00
1  0   NaN
2  5 -0.25

DataFrame 2:
     A  B
0  3.0  3
1  1.0  3
2  NaN -4

Объединить DataFrame с использованием метода combine()

Теперь объединим два DataFrame с использованием метода combine().

combined_df = df1.combine(df2, min)

Функция min используется в качестве параметра func для выбора меньшего значения между двумя столбцами.

Распечатайте объединенный DataFrame, чтобы увидеть результат.

print("\nОбъединенный DataFrame:")
print(combined_df)

Результат:

Объединенный DataFrame:
     A     B
0  2.0  2.00
1  0.0   NaN
2  5.0 -4.00

Объединить DataFrame с использованием пользовательской функции

Мы также можем использовать пользовательскую функцию в качестве параметра func для объединения DataFrame. Создадим пользовательскую функцию multiply_columns, которая умножает значения в каждом столбце.

def multiply_columns(s1, s2):
    return s1 * s2

combined_df = df1.combine(df2, multiply_columns)

Распечатайте объединенный DataFrame, чтобы увидеть результат.

print("\nОбъединенный DataFrame:")
print(combined_df)

Результат:

Объединенный DataFrame:
     A    B
0  6.0  6.0
1  0.0  NaN
2  NaN  1.0

Резюме

В этом практическом занятии мы узнали, как использовать метод combine() в pandas для объединения двух DataFrame по столбцам. Мы увидели, как использовать встроенные функции и пользовательские функции для объединения столбцов. Метод combine() полезен, когда мы хотим объединить столбцы из двух DataFrame на основе определенного условия или правила. Он обеспечивает гибкость в том, как мы объединяем данные, и заполняет пропущенные значения при необходимости.