Pandas concat Fonction

Suraj Joshi 30 janvier 2023
  1. pandas.concat() Syntaxe
  2. Exemple : Concaténer 2 séries de pandas le long de l’axe des lignes en utilisant la méthode pandas.concat()
  3. Exemple : Concaténer 2 objets de la série Pandas le long de l’axe des colonnes en utilisant la méthode pandas.concat()
  4. Exemple : Concaténer 2 objets Pandas DataFrame en utilisant la méthode pandas.concat()
  5. Exemple : Concaténer une DataFrame avec un objet série en utilisant la méthode pandas.concat()
Pandas concat Fonction

La méthode pandas.concat() concatène les objets Pandas DataFrame ou Series.

pandas.concat() Syntaxe

pandas.concat(
    objs,
    axis=0,
    join="outer",
    ignore_index=False,
    keys=None,
    levels=None,
    names=None,
    verify_integrity=False,
    sort=False,
    copy=True,
)

Paramètres

objs séquence ou cartographie des objets Pandas Series ou DataFrame à concaténer.
join Méthode de jointure (inner ou outer)
axis concaténer le long de la ligne (axis=0) ou de la colonne (axis=1)
ignore_index Booléen. Si True, les index des DataFrames d’origine sont ignorés.
keys séquence pour ajouter un identifiant aux index de résultats
levels niveaux à utiliser pour la création d’un MultiIndex
names les noms des niveaux dans MultiIndex
verify_integrity Booléen. Si True, vérifiez s’il y a des doublons
sort Booléen. Trie l’axe de non-concaténation s’il n’est pas déjà aligné lorsque join est outer.
copy Booléen. Si False, éviter la copie inutile des données

Retourne

Il renvoie un objet Series si tous les objets Series sont concaténés le long de axis=0. Il renvoie un objet DataFrame si l’un des objets à concaténer est un DataFrame, ou si les objets Series sont concaténés le long de axis=1.

Exemple : Concaténer 2 séries de pandas le long de l’axe des lignes en utilisant la méthode pandas.concat()

import pandas as pd

ser_1 = pd.Series([20, 45, 36, 45])
print("Series-1:")
print(ser_1, "\n")

ser_2 = pd.Series([48, 46, 34, 38])
print("Series-2:")
print(ser_2, "\n")

concatenated_ser = pd.concat([ser_1, ser_2])

print("Result after Concatenation of ser_1 and ser_2:")
print(concatenated_ser)

Production :

Series-1:
0    20
1    45
2    36
3    45
dtype: int64

Series-2:
0    48
1    46
2    34
3    38
dtype: int64

Result after Concatenation of ser_1 and ser_2:
0    20
1    45
2    36
3    45
0    48
1    46
2    34
3    38
dtype: int64

Il concatène les objets Series ser_1 et ser_2 le long de axis=0 ou par ligne. Les lignes d’un des objets Series sont empilées les unes sur les autres. L’objet concaténé prendra par défaut les valeurs d’index des objets parents. Nous pouvons définir ignore_index=True pour attribuer de nouvelles valeurs d’index à l’objet concaténé.

import pandas as pd

ser_1 = pd.Series([20, 45, 36, 45])
print("Series-1:")
print(ser_1, "\n")

ser_2 = pd.Series([48, 46, 34, 38])
print("Series-2:")
print(ser_2, "\n")

concatenated_ser = pd.concat([ser_1, ser_2], ignore_index=True)

print("Result after Concatenation of ser_1 and ser_2:")
print(concatenated_ser)

Production :

Series-1:
0    20
1    45
2    36
3    45
dtype: int64

Series-2:
0    48
1    46
2    34
3    38
dtype: int64

Result after Concatenation of ser_1 and ser_2:
0    20
1    45
2    36
3    45
4    48
5    46
6    34
7    38
dtype: int64

Il concatène les objets Series et assigne de nouvelles valeurs d’index à l’objet Series concaténé.

Exemple : Concaténer 2 objets de la série Pandas le long de l’axe des colonnes en utilisant la méthode pandas.concat()

Dans la méthode pandas.concat() nous avons mis axis=1 pour concaténer les objets de la Series horizontalement ou le long de l’axe des colonnes.

import pandas as pd

ser_1 = pd.Series([20, 45, 36, 45])
print("Series-1:")
print(ser_1, "\n")

ser_2 = pd.Series([48, 46, 34, 38])
print("Series-2:")
print(ser_2, "\n")

concatenated_ser = pd.concat([ser_1, ser_2], axis=1)

print("Result after Horizontal Concatenation of ser_1 and ser_2:")
print(concatenated_ser)

Production :

Series-1:
0    20
1    45
2    36
3    45
dtype: int64

Series-2:
0    48
1    46
2    34
3    38
dtype: int64

Result after Horizontal Concatenation of ser_1 and ser_2:
    0   1
0  20  48
1  45  46
2  36  34
3  45  38

Il empile horizontalement les objets Series ser_1 et ser_2.

Exemple : Concaténer 2 objets Pandas DataFrame en utilisant la méthode pandas.concat()

import pandas as pd

df_1 = pd.DataFrame({"Col-1": [1, 2, 3, 4], "Col-2": [5, 6, 7, 8]})
print("DataFrame-1:")
print(df_1, "\n")

df_2 = pd.DataFrame({"Col-1": [10, 20, 30, 40], "Col-2": [50, 60, 70, 80]})
print("DataFrame-2:")
print(df_2, "\n")

concatenated_df = pd.concat([df_1, df_2], ignore_index=True)

print("Result after Horizontal Concatenation of df_1 and df_2:")
print(concatenated_df)

Production :

DataFrame-1:
   Col-1  Col-2
0      1      5
1      2      6
2      3      7
3      4      8

DataFrame-2:
   Col-1  Col-2
0     10     50
1     20     60
2     30     70
3     40     80

Result after Horizontal Concatenation of df_1 and df_2:
   Col-1  Col-2
0      1      5
1      2      6
2      3      7
3      4      8
4     10     50
5     20     60
6     30     70
7     40     80

Il concatène les objets DataFrame df_1 et df_2. En définissant ignore_index=True, nous attribuons de nouveaux indices à la DataFrame concaténée.

Exemple : Concaténer une DataFrame avec un objet série en utilisant la méthode pandas.concat()

import pandas as pd

df = pd.DataFrame({"Col-1": [1, 2, 3, 4], "Col-2": [5, 6, 7, 8]})
print("DataFrame Object:")
print(df, "\n")

ser = pd.Series([48, 46, 34, 38])
print("Series Object:")
print(ser, "\n")

ser_df = pd.concat([df, ser], axis=1)

print("Concatenation of ser and df:")
print(ser_df)

Production :

DataFrame Object:
   Col-1  Col-2
0      1      5
1      2      6
2      3      7
3      4      8

Series Object:
0    48
1    46
2    34
3    38
dtype: int64

Concatenation of ser and df:
   Col-1  Col-2   0
0      1      5  48
1      2      6  46
2      3      7  34
3      4      8  38

Il concatène l’objet DataFrame df et l’objet Series ser ensemble. La concaténation se fait par colonne, comme nous l’avons défini dans la méthode pandas.concat().

Auteur: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Article connexe - Pandas DataFrame