La fusion de plusieurs dataframes peut être complexe et frustrante, surtout lorsque le nombre de dataframes augmente. Bien qu'il soit possible d'utiliser des fonctions de fusion imbriquées, cette approche devient ingérable et sujette aux erreurs.
Pour une manière plus élégante et efficace de fusionner plusieurs trames de données, envisagez la solution suivante :
import pandas as pd from functools import reduce # Initialize a list of dataframes dfs = [df1, df2, df3] # Merge the dataframes using the reduce function df_merged = reduce(lambda left, right: pd.merge(left, right, on=['DATE'], how='outer'), dfs)
Cette solution utilise la fonction de réduction du module functools pour fusionner de manière itérative les dataframes. La fonction lambda définit l'opération de fusion, en utilisant la colonne spécifiée pour la jointure (« DATE ») et la méthode de fusion « externe » pour conserver toutes les lignes.
Propre et compréhensible : Cette solution fournit une approche claire et concise pour fusionner plusieurs trames de données, éliminant ainsi le besoin d'une fusion imbriquée complexe fonctions.
Gérer efficacement plusieurs trames de données :Cette solution peut gérer n'importe quel nombre de trames de données, ce qui la rend évolutive et pratique.
Considérez ce qui suit dataframes :
df_1: May 19, 2017;1,200.00;0.1% May 18, 2017;1,100.00;0.1% May 17, 2017;1,000.00;0.1% May 15, 2017;1,901.00;0.1% df_2: May 20, 2017;2,200.00;1000000;0.2% May 18, 2017;2,100.00;1590000;0.2% May 16, 2017;2,000.00;1230000;0.2% May 15, 2017;2,902.00;1000000;0.2% df_3: May 21, 2017;3,200.00;2000000;0.3% May 17, 2017;3,100.00;2590000;0.3% May 16, 2017;3,000.00;2230000;0.3% May 15, 2017;3,903.00;2000000;0.3%
En utilisant la solution fournie, nous pouvons les fusionner dataframes :
df_merged = reduce(lambda left, right: pd.merge(left, right, on=['DATE'], how='outer'), dfs)
Résultat :
DATE VALUE1 VALUE2 VALUE3 May 15, 2017; 1,901.00;0.1%; 2,902.00;1000000;0.2%; 3,903.00;2000000;0.3%
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!