Как соединить два dataframe python: простой способ с использованием метода merge()
Как соединить два dataframe в Python?
В Python вы можете использовать метод merge()
из библиотеки pandas для соединения двух dataframe в один. Вот пример кода для объединения двух dataframe:
import pandas as pd
# Создание первого dataframe
df1 = pd.DataFrame({'Ключ': ['A', 'B', 'C', 'D'],
'Значение1': [1, 2, 3, 4]})
# Создание второго dataframe
df2 = pd.DataFrame({'Ключ': ['B', 'D', 'E', 'F'],
'Значение2': [5, 6, 7, 8]})
# Соединение двух dataframe по ключу
merged_df = pd.merge(df1, df2, on='Ключ')
print(merged_df)
В этом примере мы создали два dataframe - df1
и df2
, и затем соединили их по столбцу 'Ключ' с помощью метода merge()
. Результатом будет новый dataframe merged_df
, который содержит только строки, имеющие общий ключ в обоих dataframe.
Детальный ответ
Как соединить два dataframe в Python
В Python существует несколько способов соединить два dataframe вместе. В этой статье мы рассмотрим два наиболее распространенных метода - объединение по столбцам (Merge) и объединение по строкам (Concatenate).
1. Объединение по столбцам (Merge)
Когда вы хотите объединить два dataframe по общему столбцу, вы можете использовать метод merge(). Этот метод выполняет объединение как по общим значениям столбца, так и по общим именам столбца.
Вот пример кода, демонстрирующего объединение двух dataframe по общему столбцу:
import pandas as pd
# Создание первого dataframe
df1 = pd.DataFrame({'key': ['A', 'B', 'C', 'D'],
'value1': [1, 2, 3, 4]})
# Создание второго dataframe
df2 = pd.DataFrame({'key': ['B', 'D', 'E', 'F'],
'value2': [5, 6, 7, 8]})
# Объединение по общему столбцу 'key'
merged_df = pd.merge(df1, df2, on='key')
# Вывод объединенного dataframe
print(merged_df)
Результат:
key value1 value2
0 B 2 5
1 D 4 6
Вы можете видеть, что объединенный dataframe содержит только строки с общими значениями столбца 'key' из обоих dataframe.
2. Объединение по строкам (Concatenate)
Когда вы хотите объединить два dataframe по строкам, вы можете использовать метод concat(). Этот метод просто объединяет два dataframe вдоль оси строк.
Вот пример кода, демонстрирующего объединение двух dataframe по строкам:
import pandas as pd
# Создание первого dataframe
df1 = pd.DataFrame({'col1': [1, 2],
'col2': [3, 4]})
# Создание второго dataframe
df2 = pd.DataFrame({'col1': [5, 6],
'col2': [7, 8]})
# Объединение по строкам
concatenated_df = pd.concat([df1, df2])
# Вывод объединенного dataframe
print(concatenated_df)
Результат:
col1 col2
0 1 3
1 2 4
0 5 7
1 6 8
Вы можете видеть, что объединенный dataframe содержит все строки из обоих dataframe, сохраняя их исходные индексы.
Заключение
В этой статье мы рассмотрели два основных метода для объединения двух dataframe в Python - объединение по столбцам (Merge) и объединение по строкам (Concatenate). Оба метода предоставляют мощные инструменты для комбинирования данных из разных источников.
Не стесняйтесь экспериментировать с различными параметрами методов merge() и concat(), чтобы настроить объединение по вашим потребностям.
Надеюсь, данная статья помогла вам понять, как соединить два dataframe в Python. Удачи в работе с данными!