Fusionner deux séries Pandas dans un DataFrame
-
Fusionner deux séries de pandas dans un
DataFrame
à l’aide de la méthodepandas.concat()
-
Fusionner deux séries de pandas dans un
DataFrame
à l’aide de la méthodepandas.merge()
-
Fusionner deux séries de pandas dans un
DataFrame
à l’aide de la méthodeSeries.append()
-
Fusionner deux séries de pandas dans un
DataFrame
à l’aide de la méthodeDataFrame.join()
- Conclusion
Pandas est une bibliothèque python très populaire et open source qui offre diverses fonctionnalités ou méthodes pour fusionner ou combiner deux séries de pandas dans un DataFrame
. Dans les pandas, une série est un tableau étiqueté unidimensionnel qui peut gérer n’importe quel type de données tel qu’un entier, un flottant, une chaîne, des objets python, etc. En termes simples, la série des pandas est une colonne dans une feuille Excel. Series stocke les données dans un ordre séquentiel
.
Ce tutoriel nous apprendra comment fusionner ou combiner deux ou plusieurs séries de pandas dans un DataFrame
.
Il existe plusieurs méthodes disponibles pour fusionner deux ou plusieurs séries de pandas dans un DataFrame
telles que pandas.concat()
, Series.append()
, pandas.merge()
et DataFrame.join()
. Nous expliquerons chaque méthode en bref à l’aide de quelques exemples dans cet article.
Fusionner deux séries de pandas dans un DataFrame
à l’aide de la méthode pandas.concat()
La méthode pandas.concat()
effectue toutes les opérations de concaténation le long d’un axe (soit par ligne soit par par colonne). Nous pouvons fusionner deux ou plusieurs objets ou séries pandas le long d’un axe particulier pour créer un DataFrame
. La méthode concat()
prend différents paramètres.
Dans l’exemple suivant, nous passerons passer pandas series
à fusionner et axis=1
comme paramètres. Le axis=1
signifie que la série fusionnera en tant que colonne au lieu de lignes. Si nous utilisons axis=0
, il ajoutera les séries de pandas en tant que ligne.
Exemple de code :
import pandas as pd
# Create Series by assigning names
products = pd.Series(
["Intel Dell Laptops", "HP Laptops", "Lenavo Laptops", "Acer Laptops"],
name="Products",
)
dollar_price = pd.Series([350, 300, 400, 250], name="Price")
percentage_sale = pd.Series([83, 99, 84, 76], name="Sale")
# merge two pandas series using the pandas.concat() method
df = pd.concat([products, dollar_price, percentage_sale], axis=1)
print(df)
Production :
Products Price Sale
0 Intel Dell Laptops 350 83
1 HP Laptops 300 99
2 Lenavo Laptops 400 84
3 Acer Laptops 250 76
Fusionner deux séries de pandas dans un DataFrame
à l’aide de la méthode pandas.merge()
Le pandas.merge()
est utilisé pour fusionner les combinaisons complexes de colonnes de DataFrame
similaire à SQL join
ou à une opération de fusion
. La méthode merge
peut effectuer toutes les opérations de jointure de base de données entre les objets de série nommés ou DataFrame
. Nous devons passer un paramètre supplémentaire name
à la série lors de l’utilisation des pandas.merge()
méthode.
Voir l’exemple suivant.
Exemple de code :
import pandas as pd
# Create Series by assigning names
products = pd.Series(
["Intel Dell Laptops", "HP Laptops", "Lenavo Laptops", "Acer Laptops"],
name="Products",
)
dollar_price = pd.Series([350, 300, 400, 250], name="Price")
# using pandas series merge()
df = pd.merge(products, dollar_price, right_index=True, left_index=True)
print(df)
Production :
Products Price
0 Intel Dell Laptops 350
1 HP Laptops 300
2 Lenavo Laptops 400
3 Acer Laptops 250
Fusionner deux séries de pandas dans un DataFrame
à l’aide de la méthode Series.append()
La méthode Series.append()
est un raccourci vers la méthode concat()
. Cette méthode ajoute la série le long de axis=0
ou de lignes. En utilisant cette méthode, nous pouvons créer un DataFrame
en ajoutant la série à une autre série sous forme de ligne au lieu de colonnes.
Nous avons utilisé la méthode series.append()
dans notre code source de la manière suivante :
Exemple de code :
import pandas as pd
# Using Series.append()
technical = pd.Series(["Pandas", "Python", "Scala", "Hadoop"])
non_technical = pd.Series(["SEO", "Graphic design", "Content writing", "Marketing"])
# using the appen() method merge series and create dataframe
df = pd.DataFrame(
technical.append(non_technical, ignore_index=True), columns=["Skills"]
)
print(df)
Production :
Skills
0 Pandas
1 Python
2 Scala
3 Hadoop
4 SEO
5 Graphic design
6 Content writing
7 Marketing
Fusionner deux séries de pandas dans un DataFrame
à l’aide de la méthode DataFrame.join()
En utilisant la méthode DataFrame.join()
, nous pouvons joindre deux séries. Lorsque nous utilisons cette méthode, nous devons convertir une série en objet DataFrame
. Ensuite, nous utiliserons le résultat pour combiner avec une autre série.
Dans l’exemple suivant, nous avons converti la première série en un objet DataFrame
. Ensuite, nous avons utilisé ce DataFrame
pour fusionner avec une autre série.
Exemple de code :
import pandas as pd
# Create Series by assigning names
products = pd.Series(
["Intel Dell Laptops", "HP Laptops", "Lenavo Laptops", "Acer Laptops"],
name="Products",
)
dollar_price = pd.Series([350, 300, 400, 250], name="Price")
# Merge series using DataFrame.join() method
df = pd.DataFrame(products).join(dollar_price)
print(df)
Production :
Products Price
0 Intel Dell Laptops 350
1 HP Laptops 300
2 Lenavo Laptops 400
3 Acer Laptops 250
Conclusion
Nous avons appris dans ce tutoriel comment fusionner deux séries Pandas dans un DataFrame
en utilisant les quatre méthodes différentes. De plus, nous avons exploré comment ces quatre méthodes pandas.concat()
, Series.append()
, pandas.merge()
et DataFrame.join()
qui nous facilitent la résolution de la tâche de fusion de séries Pandas.
Article connexe - Pandas DataFrame
- Comment obtenir les en-têtes de colonne de Pandas DataFrame sous forme de liste
- Comment supprimer une colonne de Pandas DataFrame
- Comment convertir la colonne DataFrame en date-heure dans Pandas
- Comment convertir un float en un entier dans Pandas DataFrame
- Comment trier le DataFrame de Pandas par les valeurs d'une colonne
- Comment obtenir l'agrégat des Pandas par groupe et par somme