Как добавить несколько фреймов данных Pandas (с примером)


Вы можете использовать следующий базовый синтаксис для одновременного добавления нескольких фреймов данных pandas:

import pandas as pd

#append multiple DataFrames
df_big = pd.concat([df1,df2, df3], ignore_index= True )

Этот конкретный синтаксис добавит df1 , df2 и df3 в один кадр данных pandas с именем df_big .

В следующем примере показано, как использовать этот синтаксис на практике.

Пример 1: одновременное добавление нескольких фреймов данных Pandas

В следующем коде показано, как одновременно добавить несколько фреймов данных pandas:

import pandas as pd

#create three DataFrames
df1 = pd.DataFrame({'player': ['A', 'B', 'C', 'D', 'E'],
 'points':[12, 5, 13, 17, 27]})

df2 = pd.DataFrame({'player': ['F', 'G', 'H', 'I', 'J'],
 'points':[24, 26, 27, 27, 12]})

df3 = pd.DataFrame({'player': ['K', 'L', 'M', 'N', 'O'],
 'points':[9, 5, 5, 13, 17]})

#append all DataFrames into one DataFrame
df_big = pd.concat([df1,df2, df3], ignore_index= True )

#view resulting DataFrame
print(df_big)

 player points
0 A 12
1 B 5
2 C 13
3 D 17
4 E 27
5 F 24
6 G 26
7 H 27
8 I 27
9 J 12
10 K 9
11 L 5
12 M 5
13 N 13
14 O 17

В результате получается один большой кадр данных, содержащий все строки из каждого из трех отдельных кадров данных.

Аргумент ignore_index=True указывает pandas игнорировать исходные номера индексов в каждом DataFrame и создавать новый индекс, который начинается с 0 для нового DataFrame.

Например, рассмотрим, что происходит, когда мы не используем ignore_index=True при размещении следующих двух кадров данных:

import pandas as pd

#create two DataFrames with indices
df1 = pd.DataFrame({'player': ['A', 'B', 'C', 'D', 'E'],
 'points':[12, 5, 13, 17, 27]},
 index=[0, 1, 2, 3, 4])

df2 = pd.DataFrame({'player': ['F', 'G', 'H', 'I', 'J'],
 'points':[24, 26, 27, 27, 12]},
 index=[2, 4, 5, 6, 9])

#stack the two DataFrames together
df_big = pd.concat([df1,df2])

#view resulting DataFrame
print(df_big)

 player points
0 A 12
1 B 5
2 C 13
3 D 17
4 E 27
2 F 24
4 G 26
5 H 27
6 I 27
9 J 12

Результирующий DataFrame сохранил свои исходные значения индекса из двух DataFrame.

Как правило, вы должны использовать ignore_index=True при добавлении нескольких фреймов данных, если у вас нет особой причины для сохранения исходных значений индекса.

Дополнительные ресурсы

Как добавить пустой столбец в Pandas DataFrame
Как вставить столбец в фрейм данных Pandas
Как экспортировать фрейм данных Pandas в Excel

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.