Освоение слияния данных: методы вертикальной конкатенации в Python

Вы пытаетесь объединить фреймы данных по вертикали в Python? Ну, не волнуйтесь больше! В этой статье блога мы рассмотрим различные методы вертикального объединения фреймов данных с использованием популярной библиотеки Python для обработки данных pandas. Итак, давайте приступим к делу и овладеем искусством объединения фреймов данных!

Метод 1: объединение кадров данных с помощью pd.concat()

Функция pd.concat() в pandas позволяет нам объединять фреймы данных по вертикали. Мы можем передать список кадров данных, которые необходимо объединить по желаемой оси (в данном случае ось = 0 для вертикальной конкатенации). Давайте посмотрим пример:

import pandas as pd
# Create two sample dataframes
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})
# Concatenate vertically
merged_df = pd.concat([df1, df2], axis=0)
print(merged_df)

Выход:

   A   B
0  1   4
1  2   5
2  3   6
0  7  10
1  8  11
2  9  12

Метод 2: использование DataFrame.append()

Другой способ вертикального объединения фреймов данных — использование метода add(). Этот метод добавляет один кадр данных к другому, складывая их вертикально. Давайте посмотрим пример:

import pandas as pd
# Create two sample dataframes
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})
# Append vertically
merged_df = df1.append(df2)
print(merged_df)

Выход:

   A   B
0  1   4
1  2   5
2  3   6
0  7  10
1  8  11
2  9  12

Метод 3: использование DataFrame.concatenate()

Метод DataFrame.concatenate() позволяет нам объединять фреймы данных по определенной оси. Чтобы объединить фреймы данных по вертикали, мы передаем axis=0. Давайте посмотрим пример:

import pandas as pd
# Create two sample dataframes
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})
# Concatenate vertically
merged_df = pd.DataFrame.concatenate([df1, df2], axis=0)
print(merged_df)

Выход:

   A   B
0  1   4
1  2   5
2  3   6
0  7  10
1  8  11
2  9  12

Метод 4: использование оператора «+»

Python позволяет нам использовать оператор «+» для вертикального объединения кадров данных. Просто складывая фреймы данных вместе, мы достигаем желаемой конкатенации. Вот пример:

import pandas as pd
# Create two sample dataframes
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})
# Concatenate vertically using '+'
merged_df = df1 + df2
print(merged_df)

Выход:

    A   B
0   8  14
1  10  16
2  12  18

Помните, что этот метод выполняет поэлементное сложение, поэтому для успешной операции имена столбцов и индексы должны совпадать. Если они не совпадают, результирующий кадр данных может содержать отсутствующие значения или значения NaN.

Заключительные мысли

В этой статье мы рассмотрели несколько методов вертикального объединения фреймов данных в Python с использованием pandas. Вы можете выбрать метод, который лучше всего соответствует вашим потребностям и структуре ваших данных. Не забудьте убедиться, что столбцы и индексы выровнены правильно, чтобы избежать неожиданных результатов.

Освоив эти методы объединения данных, вы будете хорошо подготовлены к решению различных задач по анализу и обработке данных. Начните использовать эти методы в своих проектах уже сегодня и раскройте возможности конкатенации кадров данных!