Как объединить два датафрейма pandas по индексу: шаг за шагом руководство с emoji-иллюстрациями
import pandas as pd
# Создание первого датафрейма
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}, index=[1, 2, 3])
# Создание второго датафрейма
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12]}, index=[1, 2, 3])
# Соединение двух датафреймов по индексу
df_merged = df1.merge(df2, left_index=True, right_index=True)
Детальный ответ
Как соединить два датафрейма pandas по индексу
Добро пожаловать в урок по объединению двух датафреймов Pandas! В этой статье мы рассмотрим, как выполнить соединение по индексу, используя мощные инструменты библиотеки Pandas.
Шаг 1: Подготовка датафреймов
Перед началом объединения необходимо подготовить два датафрейма. Давайте создадим два примера для демонстрации. Предположим, у нас есть два датафрейма - df1 и df2:
import pandas as pd
# Создаем первый датафрейм - df1
data1 = {'Имя': ['Алиса', 'Боб', 'Чарли'],
'Город': ['Москва', 'Санкт-Петербург', 'Екатеринбург']}
df1 = pd.DataFrame(data1)
# Создаем второй датафрейм - df2
data2 = {'Имя': ['Алиса', 'Боб', 'Дэвид'],
'Возраст': [25, 30, 35]}
df2 = pd.DataFrame(data2)
Шаг 2: Соединение по индексу
Теперь, когда у нас есть два датафрейма, мы можем приступить к объединению по индексу. Для этого воспользуемся методом .join()
библиотеки Pandas:
# Соединяем по индексу
df_merged = df1.join(df2, lsuffix='_left', rsuffix='_right')
В данном примере мы используем параметры lsuffix
и rsuffix
, чтобы добавить суффиксы к столбцам, чтобы избежать конфликтов имен. Вы можете использовать любые суффиксы по вашему усмотрению.
Шаг 3: Просмотр результата
Теперь, когда мы выполнели соединение по индексу, давайте посмотрим на результат:
# Выводим результат
print(df_merged)
Вы увидите объединенный датафрейм, в котором столбцы из обоих исходных датафреймов будут объединены по индексу. Если индексы не совпадают, соответствующие ячейки будут заполнены значением NaN.
Вывод:
Теперь вы знаете, как выполнить соединение двух датафреймов Pandas по индексу. Используя метод .join()
, вы можете объединить данные из двух датафреймов в один, используя общий индекс. Убедитесь, что ваши датафреймы имеют соответствующие индексы для успешного объединения.