Вы можете использовать следующий базовый синтаксис для одновременного добавления нескольких фреймов данных 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