Προσθήκη Dict στο DataFrame στο Pandas

Prostheke Dict Sto Dataframe Sto Pandas



Θα συζητήσουμε πώς να προσαρτήσετε ένα λεξικό στο υπάρχον Pandas DataFrame χρησιμοποιώντας τις συναρτήσεις pandas.DataFrame.append() και pandas.concat() με παραδείγματα. Εδώ, το λεξικό αναφέρεται στο ζεύγος κλειδί:τιμή έτσι ώστε το κλειδί να αναφέρεται στις υπάρχουσες ετικέτες στηλών που υπάρχουν στο DataFrame και οι τιμές προστίθενται σε μια σειρά. Επίσης, θα δούμε τα παραδείγματα που προσαρτούν πολλά λεξικά στο Pandas DataFrame.

Χρήση του Pandas.DataFrame.Append

Η συνάρτηση pandas.DataFrame.append() χρησιμοποιείται για την προσθήκη των γραμμών ενός άλλου DataFrame στο υπάρχον DataFrame. Εάν οι στήλες στο υπάρχον DataFrame δεν υπάρχουν, οι άλλες στήλες DataFrame δημιουργούνται στο υπάρχον DataFrame. Χρησιμοποιήστε αυτήν τη λειτουργία με τέτοιο τρόπο ώστε η σειρά να πρέπει να εισαχθεί στο DataFrame προσθέτοντας το λεξικό.

Σύνταξη :







Ακολουθεί η πραγματική σύνταξη της συνάρτησης pandas.DataFrame.append():



τα πάντα. Πλαίσιο δεδομένων . προσαρτώ ( άλλα , ignore_index , verify_integrity , είδος )
  1. άλλα : Αυτό αναφέρεται σε ένα άλλο DataFrame στο οποίο οι σειρές αυτού του DataFrame προσαρτώνται στο υπάρχον DataFrame. Εάν θέλετε να προσαρτήσετε μια μεμονωμένη σειρά, πρέπει να μεταβιβάσετε ένα λεξικό τιμών ως παράμετρο.
  2. ignore_index (από προεπιλογή = False): Αυτή η παράμετρος χρησιμοποιείται όταν προσθέτετε σειρές στο DataFrame που έχει ήδη σειρές. Εάν είναι 'False', προσαρτώνται επίσης οι υπάρχοντες δείκτες σειρών. Εάν είναι 'True', οι σειρές επισημαίνονται από 0 έως n-1. Βεβαιωθείτε ότι αυτή η παράμετρος έχει οριστεί σε 'True' κατά την προσάρτηση ενός λεξικού στο DataFrame. Διαφορετικά, εμφανίζεται ένας τύπος σφάλματος - 'TypeError: Μπορεί να προσαρτηθεί μόνο ένα dict εάν ignore_index=True'.
  3. Μπορούμε να ελέγξουμε για τους διπλότυπους δείκτες χρησιμοποιώντας την παράμετρο verify_integrity (από προεπιλογή = False). Εάν οι δείκτες είναι διπλοί και το verify_integrity έχει οριστεί σε 'True', επιστρέφει το 'ValueError: Τα ευρετήρια έχουν επικαλυπτόμενες τιμές'.
  4. Είναι δυνατή η ταξινόμηση των στηλών εάν οι στήλες του υπάρχοντος DataFrame και ενός άλλου DataFrame δεν είναι ευθυγραμμισμένες χρησιμοποιώντας την παράμετρο ταξινόμησης ορίζοντας την σε 'True' (από προεπιλογή = False).

Παράδειγμα 1: Προσθήκη ενός ενιαίου λεξικού

Δημιουργήστε ένα Pandas DataFrame με τέσσερις στήλες – “Campaign_Name”, “Location”, “StartDate” και “Budget” – και τρεις σειρές. Προσθέστε ένα λεξικό σε αυτό το DataFrame.



εισαγωγή παντα

# Δημιουργία DataFrame - Καμπάνια με 4 στήλες και 3 σειρές
καμπάνια = τα πάντα. Πλαίσιο δεδομένων ( [ [ 'Marketing Camp' , 'Ινδία' , '01/12/2023' , 8000 ] ,
[ 'Sales Camp' , 'Ιταλία' , '01/25/2022' , 10000 ] ,
[ 'Άλλο στρατόπεδο' , 'ΗΠΑ' , '17/04/2023' , 2000 ] ] ,
στήλες = [ 'Campaign_Name' , 'Τοποθεσία' , 'Ημερομηνία έναρξης' , 'Προϋπολογισμός' ] )
Τυπώνω ( καμπάνια , ' \n ' )

# Προσθήκη μονής σειράς
καμπάνια = Καμπάνια. προσαρτώ ( { 'Campaign_Name' : «Τεχνικό Στρατόπεδο» , 'Τοποθεσία' : 'ΗΠΑ' , 'Ημερομηνία έναρξης' : '05/12/2023' , 'Προϋπολογισμός' : 2000 } , ignore_index = Αληθής )
Τυπώνω ( καμπάνια , ' \n ' )

Παραγωγή :





Μπορούμε να δούμε ότι το λεξικό προσαρτάται στο DataFrame 'Campaign'. Το ευρετήριο αυτής της νέας σειράς είναι 3 αφού το ευρετήριο αγνοείται.



Παράδειγμα 2: Προσθήκη πολλών λεξικών

Χρησιμοποιήστε το ίδιο DataFrame που δημιουργείται στο Παράδειγμα 1 και προσθέστε τρεις σειρές κάθε φορά χρησιμοποιώντας τη συνάρτηση pandas.DataFrame.append(). Ορίστε την παράμετρο ignore_index σε 'True'.

εισαγωγή παντα

# Δημιουργία DataFrame - Καμπάνια με 4 στήλες και 3 σειρές
καμπάνια = τα πάντα. Πλαίσιο δεδομένων ( [ [ 'Marketing Camp' , 'Ινδία' , '01/12/2023' , 8000 ] ,
[ 'Sales Camp' , 'Ιταλία' , '01/25/2022' , 10000 ] ,
[ 'Άλλο στρατόπεδο' , 'ΗΠΑ' , '17/04/2023' , 2000 ] ] ,
στήλες = [ 'Campaign_Name' , 'Τοποθεσία' , 'Ημερομηνία έναρξης' , 'Προϋπολογισμός' ] )
Τυπώνω ( καμπάνια , ' \n ' )

καμπάνια = Καμπάνια. προσαρτώ ( { 'Campaign_Name' : «Τεχνικό Στρατόπεδο» , 'Τοποθεσία' : 'ΗΠΑ' , 'Ημερομηνία έναρξης' : '05/12/2023' , 'Προϋπολογισμός' : 2000 } , ignore_index = Αληθής )
καμπάνια = Καμπάνια. προσαρτώ ( { 'Campaign_Name' : «στρατόπεδο μάρκετινγκ» , 'Τοποθεσία' : 'Ινδία' , 'Ημερομηνία έναρξης' : '06/23/2023' , 'Προϋπολογισμός' : 9000 } , ignore_index = Αληθής )
καμπάνια = Καμπάνια. προσαρτώ ( { 'Campaign_Name' : «στρατόπεδο MSales» , 'Τοποθεσία' : 'Ιταλία' , 'Ημερομηνία έναρξης' : '01/24/2023' , 'Προϋπολογισμός' : 1200 } , ignore_index = Αληθής )
Τυπώνω ( καμπάνια )

Παραγωγή :

Τρεις σειρές προσαρτώνται η μία μετά την άλλη με 3, 4 και 5 δείκτες στο υπάρχον DataFrame.

Χρησιμοποιώντας το Pandas.Concat

Η συνάρτηση pandas.concat() συνενώνει δύο ή περισσότερα DataFrames κατά μήκος των γραμμών ή των στηλών. Επομένως, πρέπει να μετατρέψουμε το λεξικό στο DataFrame και να περάσουμε δύο DataFrame σε αυτή τη συνάρτηση.

Σύνταξη :

Προσθήκη λεξικού στο υπάρχον DataFrame:

τα πάντα. συγκατ ( [ Existing_DataFrame , Μεταμορφωμένο_Λεξικό ] , άξονας = 0 , ignore_index , verify_integrity )
  1. Εάν άξονας = 0, η συνένωση γίνεται κατά μήκος των σειρών. Η συνένωση γίνεται κατά μήκος των στηλών εάν έχει οριστεί Εφαρμόζεται η απαραίτητη κεφαλαιοποίηση αφού πρόκειται για υπότιτλο. Προστέθηκε απαραίτητο άρθρο για συντομία.στο 1.
  2. Το ignore_index (από προεπιλογή = False): Αυτή η παράμετρος χρησιμοποιείται όταν προσθέτετε τις σειρές στο DataFrame που έχει ήδη σειρές. Εάν είναι 'False', προσαρτώνται επίσης οι υπάρχοντες δείκτες σειρών. Εάν είναι 'True', οι σειρές επισημαίνονται από 0 έως n-1.
  3. Μπορούμε να ελέγξουμε για τους διπλότυπους δείκτες χρησιμοποιώντας την παράμετρο verify_integrity (από προεπιλογή = False). Εάν οι δείκτες είναι διπλοί και το verify_integrity έχει οριστεί σε 'True', επιστρέφει το 'ValueError: Τα ευρετήρια έχουν επικαλυπτόμενες τιμές'.

Παράδειγμα 1: Προσθήκη ενός ενιαίου λεξικού

Δημιουργήστε ένα Pandas DataFrame με τέσσερις στήλες – “Campaign_Name”, “Location”, “StartDate” και “Budget” – και τρεις σειρές. Χρησιμοποιώντας τη συνάρτηση pandas.concat(), προσθέστε ένα λεξικό (DataFrame) ως σειρά σε αυτό το DataFrame.

εισαγωγή τα πάντα


# Δημιουργία DataFrame - Καμπάνια με 4 στήλες και 3 σειρές
καμπάνια = τα πάντα. Πλαίσιο δεδομένων ( [ [ 'Marketing Camp' , 'Ινδία' , '01/12/2023' , 8000 ] ,
[ 'Sales Camp' , 'Ιταλία' , '01/25/2022' , 10000 ] ,
[ 'Άλλο στρατόπεδο' , 'ΗΠΑ' , '17/04/2023' , 2000 ] ] ,
στήλες = [ 'Campaign_Name' , 'Τοποθεσία' , 'Ημερομηνία έναρξης' , 'Προϋπολογισμός' ] )
Τυπώνω ( καμπάνια , ' \n ' )

dictionary_from_DataFrame = τα πάντα. Πλαίσιο δεδομένων ( [ { 'Campaign_Name' : 'Σέρβις Κατασκήνωση' , 'Τοποθεσία' : 'ΗΠΑ' , 'Ημερομηνία έναρξης' : '17/04/2023' , 'Προϋπολογισμός' : 1000 } ] )

# Προσθήκη μονής σειράς
καμπάνια = τα πάντα. συγκατ ( [ καμπάνια , dictionary_from_DataFrame ] , άξονας = 0 )
Τυπώνω ( καμπάνια , ' \n ' )

Παραγωγή :

Μπορούμε να δούμε ότι το λεξικό προσαρτάται στο DataFrame 'Campaign'. Ο δείκτης αυτής της νέας σειράς είναι 0, καθώς το ευρετήριο δεν αγνοείται.

Παράδειγμα 2: Προσθήκη πολλών λεξικών

Χρησιμοποιήστε το προηγούμενο DataFrame και προσθέστε τρία λεξικά (DataFrame) αγνοώντας το ευρετήριο.

εισαγωγή τα πάντα


# Δημιουργία DataFrame - Καμπάνια με 4 στήλες και 3 σειρές
καμπάνια = τα πάντα. Πλαίσιο δεδομένων ( [ [ 'Marketing Camp' , 'Ινδία' , '01/12/2023' , 8000 ] ,
[ 'Sales Camp' , 'Ιταλία' , '01/25/2022' , 10000 ] ,
[ 'Άλλο στρατόπεδο' , 'ΗΠΑ' , '17/04/2023' , 2000 ] ] ,
στήλες = [ 'Campaign_Name' , 'Τοποθεσία' , 'Ημερομηνία έναρξης' , 'Προϋπολογισμός' ] )
Τυπώνω ( καμπάνια , ' \n ' )

dictionary_from_DataFrame = τα πάντα. Πλαίσιο δεδομένων ( [ { 'Campaign_Name' : 'Tech Camp' , 'Τοποθεσία' : 'ΗΠΑ' , 'Ημερομηνία έναρξης' : '17/05/2023' , 'Προϋπολογισμός' : 1000 } ,
{ 'Campaign_Name' : 'Κοινωνικές υπηρεσίες' , 'Τοποθεσία' : 'Ιαπωνία' , 'Ημερομηνία έναρξης' : '17/04/2023' , 'Προϋπολογισμός' : 200 } ,
{ 'Campaign_Name' : 'Sales Camp' , 'Τοποθεσία' : 'ΗΠΑ' , 'Ημερομηνία έναρξης' : '18/04/2023' , 'Προϋπολογισμός' : 500 } ] )

# Προσθήκη πολλαπλών σειρών
καμπάνια = τα πάντα. συγκατ ( [ καμπάνια , dictionary_from_DataFrame ] , άξονας = 0 , ignore_index = Αληθής )
Τυπώνω ( καμπάνια , ' \n ' )

Παραγωγή :

Μπορούμε να δούμε ότι τρία λεξικά έχουν προσαρτηθεί στο DataFrame 'Campaign'. Οι δείκτες αυτών των λεξικών είναι 3, 4 και 5 αφού η παράμετρος ignore_index έχει οριστεί σε 'False'.

συμπέρασμα

Τα μεμονωμένα/πολλά λεξικά προστίθενται στο DataFrame χρησιμοποιώντας τις συναρτήσεις pandas.DataFrame.append() και pandas.concat(). Οι δείκτες των νέων σειρών μπορούν να είναι μοναδικοί ορίζοντας την παράμετρο ignore_index σε 'True' στη συνάρτηση pandas.concat(). Ενώ χρησιμοποιείτε τη συνάρτηση pandas.DataFrame.append(), ορίστε την παράμετρο ignore_index σε 'True'. Διαφορετικά, εμφανίζεται το TypeError.