Maison >développement back-end >Tutoriel Python >Comment calculer le produit cartésien de deux DataFrames Pandas ?
Problème :
Obtenir le produit cartésien de deux dataframes Pandas sans définir explicitement il.
Exemple :
import pandas as pd df1 = pd.DataFrame({'col1': [1, 2], 'col2': [3, 4]}) df2 = pd.DataFrame({'col3': [5, 6]})
Sortie souhaitée :
col1 col2 col3 0 1 3 5 1 1 3 6 2 2 4 5 3 2 4 6
Solution :
Pour les pandas >= 1.2 :
Utilisation de la fonction de fusion intégrée :
df1.merge(df2, how='cross')
Pour Pandas < 1.2 :
Utilisation de la fusion avec une clé répétée :
key_df = pd.DataFrame({'key': [1, 1], 'col1': [1, 2], 'col2': [3, 4]}) merge(key_df, df2, on='key')[['col1', 'col2', 'col3']]
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!