Exemples simples de comment fusionner / concatener deux dataframes avec pandas en python:
Créer une simple dataframe
Commençons par créer une simple dataframe df1:
>>> import pandas as pd
>>> import numpy as np
>>> data = np.arange(1,13)
>>> data = data.reshape(3,4)
>>> df1 = pd.DataFrame(data=data,columns=['a','b','c','d'])
>>> df1
a b c d
0 1 2 3 4
1 5 6 7 8
2 9 10 11 12
Concatener sur l'axe 0
Créons une seconde dataframe df2
>>> df2 = pd.DataFrame(data=[[13,14,15,16],[17,18,19,20]],columns=['a','b','c','d'])
>>> df2
a b c d
0 13 14 15 16
1 17 18 19 20
pour combiner df1 et df2, une solution est d'utiliser la fonction pandas concat():
>>> df3 = pd.concat([df1,df2], ignore_index=True)
>>> df3
a b c d
0 1 2 3 4
1 5 6 7 8
2 9 10 11 12
3 13 14 15 16
4 17 18 19 20
Concatener sur l'axe 1
Autre exemple avec la dataframe suivante
>>> df2 = pd.DataFrame(data=[[13,14],[15,16],[17,18]],columns=['e','f'])
>>> df2
e f
0 13 14
1 15 16
2 17 18
pour combiner df1 et df2 sur l'axe 1 on peut faire comme ceci:
>>> df3 = pd.concat([df1,df2], axis=1)
>>> df3
a b c d e f
0 1 2 3 4 13 14
1 5 6 7 8 15 16
2 9 10 11 12 17 18
Aller plus loin
Pour des cas plus complexes voir Merge, join, and concatenate sur pandas.pydata.org.
Références
Liens | Site |
---|---|
Merge, join, and concatenate | pandas doc |
concat() | pandas.pydata.org |
Pandas : How to create an empty DataFrame and append rows & columns to it in python | thispointer.com |
Add one row to pandas DataFrame | stackoverflow |
Adding new column to existing DataFrame in Pandas | stackoverflow |