Lors de la concaténation de trames de données pandas à l'aide de pd.concat, l'ordre des colonnes peut changer arbitrairement.
>>> df = pd.DataFrame([[1, 2], [3, 4]], index=[0, 1], columns=['B', 'A'])
>>> df2 = pd.DataFrame([[1, 2], [3, 4]], index=[0, 1], columns=['A', 'B'])
>>> pd.concat([df, df2])
   A  B #B A est bon selon df!
0  2  1
1  4  3
0  1  2
1  3  4
Pour conserver l'ordre des colonnes inchangé, utilisez la méthode DataFrame.append.
>>> df.append(df2)[df.columns.tolist()]
   B  A
0  1  2
1  3  4
0  2  1
1  4  3
Vous pouvez maintenant combiner les trames de données tout en conservant l'ordre des colonnes df. Si vous voulez combiner plusieurs trames de données, vous pouvez passer une liste de trames de données telles que df.append ([df1, df2]).
Cependant, DataFrame.append est lent et ne doit pas être utilisé lors de la jonction de plusieurs lignes.
J'ai oublié d'écrire l'environnement d'exécution, alors je l'ai ajouté
Recommended Posts