J'ai 2 dataframes comme ci-dessous.
Dataframe 1 (avec uniquement les noms de colonnes et aucune donnée):
Name Age Gender level_1 level_2 level_3 NaN NaN NaN AAA 26 M NaN NaN NaN BBB 19 F NaN NaN NaN CCC 24 F
0 lignes * 3 colonnes
Dataframe 2 (contient des données de plus de 1000 lignes):
dataframe_1 = dataframe_1.append(dataframe_2,ignore_index = True)
1000 lignes * 3 colonnes p >
Je dois ajouter les deux dataframes ci-dessus.
Résultat attendu
Dataframe 1
XXX
Ce que j'ai essayé jusqu'à présent:
Name Age Gender AAA 26 M BBB 19 F CCC 24 F
qui m'a donné le résultat ci-dessous: strong>
level_1 level_2 level_3 AAA 26 M BBB 19 F CCC 24 F
1000 lignes * 6 colonnes
3 Réponses :
Besoin des mêmes noms de colonnes pour un alignement correct des colonnes entre les deux DataFrames, donc définissez les noms de colonnes par à partir d'un autre DataFrame:
print (dataframe_1) Name Age Gender 0 AAA 26 M 1 BBB 19 F 2 CCC 24 F
Autre solution:
dataframe_1 = pd.concat([dataframe_1, dataframe_2],ignore_index = True)
Super .. Merci .. Fonctionne comme prévu :) Merci à tous pour une réponse rapide
@shankarBalu - différence d'une minute entre les réponses. :)
Ouais. 3 réponses en 3 minutes .. :)
Compte tenu de ce que vous espérez, je ne vois aucun problème avec:
dataframe_2.columns = dataframe_1.columns
Remplacez l'attribut .columns du premier dataframe par le second:
waka wattafak 0 1 Cat 1 2 Tiger 2 3 Ball 3 1 Bat
import pandas as pd
df = pd.DataFrame({
'val': ['Cat', 'Tiger', 'Ball', 'Bat'],
'id': [1, 2, 3, 1]
})
df2 = pd.DataFrame({
'waka': [],
'wattafak': []
})
df.columns = df2.columns
df