Lors de la fusion et l'utilisation de la MWF suivante:pandas dataframes se confondent avec les noms mêmes colonnes, donnent la priorité à un
import pandas as pd
df1 = pd.DataFrame(data={'A': [1, 1], 'B': [2, 22]})
df2 = pd.DataFrame(data={'A': [1, 1], 'D': [4, 44]})
df3 = pd.DataFrame(data={'A': [1, 1], 'F': [6, 66]})
df = pd.concat([df1, df2, df3], axis=1, join='inner')
sortie est:
A B A D A F
0 1 2 1 4 1 6
1 1 22 1 44 1 66
Toute idée comment il pourrait être converti avec un chat ou fusionner ou une autre fonction (sans avoir à "supprimer" manuellement les colonnes communes avant ou après la fusion, et fusionner doit toujours être interne) dans la sortie suivante (en supposant que "priorité" est donnée à df1['A']
)?
A B D F
0 1 2 4 6
1 1 22 44 66
Merci. Cela va faire, étant donné que les valeurs sont les mêmes. Si les valeurs sont différentes j'ai fait quelque chose comme suit pour l'exemple ci-dessus (fonctionne aussi avec les mêmes valeurs): 'drops = [c pour c dans df2.columns si c dans df1.columns]; df2.drop (drop, axis = 1, inplace = True); drops = [c pour c dans df3.columns si c dans df1.columns]; df3.drop (drop, axis = 1, inplace = True) ' –