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