Ajouter Dict à DataFrame dans Pandas

Ajouter Dict A Dataframe Dans Pandas



Nous verrons comment ajouter un dictionnaire au Pandas DataFrame existant à l'aide des fonctions pandas.DataFrame.append() et pandas.concat() avec des exemples. Ici, le dictionnaire fait référence à la paire clé:valeur de telle sorte que la clé fasse référence aux étiquettes de colonnes existantes présentes dans le DataFrame et que les valeurs soient ajoutées dans une ligne. Nous verrons également les exemples qui ajoutent plusieurs dictionnaires au Pandas DataFrame.

Utilisation de Pandas.DataFrame.Append

La fonction pandas.DataFrame.append() est utilisée pour ajouter les lignes d'un autre DataFrame au DataFrame existant. Si les colonnes du DataFrame existant n'existent pas, les autres colonnes DataFrame sont créées dans le DataFrame existant. Utilisez cette fonction de telle manière que la ligne doive être insérée dans le DataFrame en ajoutant le dictionnaire.

Syntaxe :







Voici la syntaxe réelle de la fonction pandas.DataFrame.append() :



des pandas. Trame de données . ajouter ( autre , ignorer_index , vérifier_intégrité , trier )
  1. autre : Il s'agit d'un autre DataFrame dans lequel les lignes de ce DataFrame sont ajoutées au DataFrame existant. Si vous souhaitez ajouter une seule ligne, vous devez transmettre un dictionnaire de valeurs en paramètre.
  2. ignorer_index (par défaut = False) : ce paramètre est utilisé lorsque vous ajoutez des lignes au DataFrame qui contient déjà des lignes. S'il est « False », les indices des lignes existantes sont également ajoutés. Si c'est « Vrai », les lignes sont étiquetées de 0 à n-1. Assurez-vous que ce paramètre est défini sur « True » lors de l'ajout d'un dictionnaire au DataFrame. Sinon, un type d'erreur est généré – « TypeError : ne peut ajouter un dict que si ignore_index=True ».
  3. Nous pouvons vérifier les index en double en utilisant le paramètre verify_integrity (par défaut = False). Si les index sont en double et que verify_integrity est défini sur « True », il renvoie « ValueError : les index ont des valeurs qui se chevauchent ».
  4. Il est possible de trier les colonnes si les colonnes du DataFrame existant et d'un autre DataFrame ne sont pas alignées grâce au paramètre sort en le mettant à « True » (par défaut = False).

Exemple 1 : ajouter un seul dictionnaire

Créez un Pandas DataFrame avec quatre colonnes – « Campaign_Name », « Location », « StartDate » et « Budget » – et trois lignes. Ajoutez un dictionnaire à ce DataFrame.



importer pandas

# Créer DataFrame - Campagne avec 4 colonnes et 3 lignes
Campagne = des pandas. Trame de données ( [ [ « Camp de marketing » , 'Inde' , '01/12/2023' , 8000 ] ,
[ « Camp de vente » , 'Italie' , '25/01/2022' , 10000 ] ,
[ « Autre camp » , 'ETATS-UNIS' , '17/04/2023' , 2000 ] ] ,
Colonnes = [ 'Nom de la campagne' , 'Emplacement' , 'Date de début' , 'Budget' ] )
imprimer ( Campagne , ' \n ' )

# Ajouter une seule ligne
Campagne = Campagne. ajouter ( { 'Nom de la campagne' : « Camp technique » , 'Emplacement' : 'ETATS-UNIS' , 'Date de début' : '12/05/2023' , 'Budget' : 2000 } , ignorer_index = Vrai )
imprimer ( Campagne , ' \n ' )

Sortir :





Nous pouvons voir que le dictionnaire est ajouté au DataFrame « Campagne ». L'index de cette nouvelle ligne est 3 puisque l'index est ignoré.



Exemple 2 : ajouter plusieurs dictionnaires

Utilisez le même DataFrame que celui créé dans l'exemple 1 et ajoutez trois lignes à la fois à l'aide de la fonction pandas.DataFrame.append(). Définissez le paramètre ignore_index sur « True ».

importer pandas

# Créer DataFrame - Campagne avec 4 colonnes et 3 lignes
Campagne = des pandas. Trame de données ( [ [ « Camp de marketing » , 'Inde' , '01/12/2023' , 8000 ] ,
[ « Camp de vente » , 'Italie' , '25/01/2022' , 10000 ] ,
[ « Autre camp » , 'ETATS-UNIS' , '17/04/2023' , 2000 ] ] ,
Colonnes = [ 'Nom de la campagne' , 'Emplacement' , 'Date de début' , 'Budget' ] )
imprimer ( Campagne , ' \n ' )

Campagne = Campagne. ajouter ( { 'Nom de la campagne' : « Camp technique » , 'Emplacement' : 'ETATS-UNIS' , 'Date de début' : '12/05/2023' , 'Budget' : 2000 } , ignorer_index = Vrai )
Campagne = Campagne. ajouter ( { 'Nom de la campagne' : « Camp de marketing » , 'Emplacement' : 'Inde' , 'Date de début' : '23/06/2023' , 'Budget' : 9000 } , ignorer_index = Vrai )
Campagne = Campagne. ajouter ( { 'Nom de la campagne' : 'Camp de vente' , 'Emplacement' : 'Italie' , 'Date de début' : '24/01/2023' , 'Budget' : 1200 } , ignorer_index = Vrai )
imprimer ( Campagne )

Sortir :

Trois lignes sont ajoutées l'une après l'autre avec 3, 4 et 5 indices au DataFrame existant.

Utilisation de Pandas.Concat

La fonction pandas.concat() concatène deux ou plusieurs DataFrames le long des lignes ou des colonnes. Nous devons donc transformer le dictionnaire en DataFrame et transmettre deux DataFrames à cette fonction.

Syntaxe :

Ajoutez un dictionnaire au DataFrame existant :

des pandas. concaténer ( [ Existing_DataFrame , Transformé_Dictionnaire ] , axe = 0 , ignorer_index , vérifier_intégrité )
  1. Si axis = 0, la concaténation se fait le long des lignes. La concaténation se fait le long des colonnes si elle est définie Appliquée aux majuscules nécessaires puisqu'il s'agit d'un sous-titre. Ajout de l'article nécessaire pour plus de brièveté.to 1.
  2. L'ignore_index (par défaut = False) : ce paramètre est utilisé lorsque vous ajoutez les lignes au DataFrame qui contient déjà des lignes. S'il est « False », les indices des lignes existantes sont également ajoutés. Si c'est « Vrai », les lignes sont étiquetées de 0 à n-1.
  3. Nous pouvons vérifier les index en double en utilisant le paramètre verify_integrity (par défaut = False). Si les index sont en double et que verify_integrity est défini sur « True », il renvoie « ValueError : les index ont des valeurs qui se chevauchent ».

Exemple 1 : ajouter un seul dictionnaire

Créez un Pandas DataFrame avec quatre colonnes – « Campaign_Name », « Location », « StartDate » et « Budget » – et trois lignes. À l'aide de la fonction pandas.concat(), ajoutez un dictionnaire (DataFrame) sous forme de ligne à ce DataFrame.

importer pandas


# Créer DataFrame - Campagne avec 4 colonnes et 3 lignes
Campagne = des pandas. Trame de données ( [ [ « Camp de marketing » , 'Inde' , '01/12/2023' , 8000 ] ,
[ « Camp de vente » , 'Italie' , '25/01/2022' , 10000 ] ,
[ « Autre camp » , 'ETATS-UNIS' , '17/04/2023' , 2000 ] ] ,
Colonnes = [ 'Nom de la campagne' , 'Emplacement' , 'Date de début' , 'Budget' ] )
imprimer ( Campagne , ' \n ' )

dictionnaire_from_DataFrame = des pandas. Trame de données ( [ { 'Nom de la campagne' : « Camp de service » , 'Emplacement' : 'ETATS-UNIS' , 'Date de début' : '17/04/2023' , 'Budget' : 1000 } ] )

# Ajouter une seule ligne
Campagne = des pandas. concaténer ( [ Campagne , dictionnaire_from_DataFrame ] , axe = 0 )
imprimer ( Campagne , ' \n ' )

Sortir :

Nous pouvons voir que le dictionnaire est ajouté au DataFrame « Campagne ». L'index de cette nouvelle ligne est 0 puisque l'index n'est pas ignoré.

Exemple 2 : ajouter plusieurs dictionnaires

Utilisez le DataFrame précédent et ajoutez trois dictionnaires (DataFrame) en ignorant l'index.

importer pandas


# Créer DataFrame - Campagne avec 4 colonnes et 3 lignes
Campagne = des pandas. Trame de données ( [ [ « Camp de marketing » , 'Inde' , '01/12/2023' , 8000 ] ,
[ « Camp de vente » , 'Italie' , '25/01/2022' , 10000 ] ,
[ « Autre camp » , 'ETATS-UNIS' , '17/04/2023' , 2000 ] ] ,
Colonnes = [ 'Nom de la campagne' , 'Emplacement' , 'Date de début' , 'Budget' ] )
imprimer ( Campagne , ' \n ' )

dictionnaire_from_DataFrame = des pandas. Trame de données ( [ { 'Nom de la campagne' : « Camp technique » , 'Emplacement' : 'ETATS-UNIS' , 'Date de début' : '17/05/2023' , 'Budget' : 1000 } ,
{ 'Nom de la campagne' : 'Services sociaux' , 'Emplacement' : 'Japon' , 'Date de début' : '17/04/2023' , 'Budget' : 200 } ,
{ 'Nom de la campagne' : « Camp de vente » , 'Emplacement' : 'ETATS-UNIS' , 'Date de début' : '18/04/2023' , 'Budget' : 500 } ] )

# Ajouter plusieurs lignes
Campagne = des pandas. concaténer ( [ Campagne , dictionnaire_from_DataFrame ] , axe = 0 , ignorer_index = Vrai )
imprimer ( Campagne , ' \n ' )

Sortir :

Nous pouvons voir que trois dictionnaires sont ajoutés au DataFrame « Campagne ». Les indices de ces dictionnaires sont 3, 4 et 5 puisque le paramètre ignore_index est défini sur « False ».

Conclusion

Les dictionnaires simples/multiples sont ajoutés au DataFrame à l'aide des fonctions pandas.DataFrame.append() et pandas.concat(). Les indices des nouvelles lignes peuvent être uniques en définissant le paramètre ignore_index sur « True » dans la fonction pandas.concat(). Lors de l'utilisation de la fonction pandas.DataFrame.append(), définissez le paramètre ignore_index sur « True ». Sinon, TypeError est déclenché.