Maison >développement back-end >Tutoriel Python >Comment réaliser un produit cartésien de DataFrames dans Pandas ?
Dans les tâches de manipulation de données, il est souvent nécessaire de combiner des lignes de plusieurs trames de données en une seule trame de données. Une façon d'y parvenir consiste à effectuer un produit cartésien, qui génère toutes les combinaisons possibles de lignes à partir des trames de données d'entrée.
Pour les versions Pandas >= 1.2, la fonction de fusion fournit une méthode intégrée pour le produit cartésien. calculs. Le code suivant démontre son utilisation :
import pandas as pd df1 = pd.DataFrame({'col1':[1,2],'col2':[3,4]}) df2 = pd.DataFrame({'col3':[5,6]}) df1.merge(df2, how='cross')
Sortie :
col1 col2 col3 0 1 3 5 1 1 3 6 2 2 4 5 3 2 4 6
Pour les versions Pandas < 1.2, une approche alternative utilisant la fonction de fusion est disponible. Dans cette méthode, une clé commune est ajoutée à chaque dataframe pour faciliter la jointure :
import pandas as pd df1 = pd.DataFrame({'key':[1,1], 'col1':[1,2],'col2':[3,4]}) df2 = pd.DataFrame({'key':[1,1], 'col3':[5,6]}) pd.merge(df1, df2,on='key')[['col1', 'col2', 'col3']]
Sortie :
col1 col2 col3 0 1 3 5 1 1 3 6 2 2 4 5 3 2 4 6
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!