Questo articolo dimostrerà come sommare tutte o particolari colonne in un telaio di dati di Pandas usando Python. Il frame dati.La funzione Sum () verrà utilizzata insieme ad alcuni parametri utili nei numerosi esempi di questo tutorial.
Il frame dati.La funzione di somma () in panda restituisce la somma totale per l'asse specificato. Se l'ingresso è un asse dell'indice, la funzione aggiunge i valori di ciascuna colonna individualmente. Quindi fa lo stesso per ogni colonna, restituendo una serie che memorizza la somma dei dati/valori in ciascuna colonna. Inoltre, supporta il calcolo della somma del telaio dati ignorando i valori mancanti.
Sintassi
panda.DataFrame_Object.somma (axis = nessuno, skipna = nessuno, level = nessuno, numeric_only = nessuno, min_count = 0, ** kwargs)
Parametri
Ritorno
DataFrame (se specificato dal livello) o serie.
DataFrame
Per tutti gli esempi, utilizzeremo la seguente "analisi" di dati. Contiene 12 file con 5 colonne.
Panda di importazione
# Crea dati di dati utilizzando gli elenchi
Analisi = panda.DataFrame ([[23, "Sravan", 1000,34,56],
[23, "Sravan", 700,11,0],
[23, "Sravan", 20,4,2],
[21, "Siva", 400,32,45],
[21, "Siva", 100.456,78],
[23, "Sravan", 00,90,12],
[21, "Siva", 400,32,45],
[20, 'Sahaja', 120,1,67],
[23, "Sravan", 00,90,12],
[22, "Suryam", 450,76,56],
[22, "Suryam", 40,0,1],
[22, "Suryam", 12,45,0]
], colonne = ['id', 'name', 'point3', 'point1', 'point2'])
# Visualizza il telaio di dati - Analisi
Stampa (analisi)
Produzione
ID Nome Punti3 Points1 Points2
0 23 Sravan 1000 34 56
1 23 Sravan 700 11 0
2 23 Sravan 20 4 2
3 21 Siva 400 32 45
4 21 Siva 100 456 78
5 23 Sravan 0 90 12
6 21 Siva 400 32 45
7 20 Sahaja 120 1 67
8 23 Sravan 0 90 12
9 22 Suryam 450 76 56
10 22 Suryam 40 0 1
11 22 Suryam 12 45 0
Qui, le colonne "Id", "Points3", "Points2" e "Points1" sono numeriche e assicurati di dover caricare il telaio di dati per tutti gli esempi che stiamo discutendo in questo tutorial.
Scenario 1: somma di tutte le colonne
Possiamo applicare direttamente Sum () sul frame dati per restituire la somma dei valori in ciascuna colonna.
panda.DataFrame_Object.somma()
Esempio
# Restituisci la somma dei valori in tutte le colonne
Stampa (analisi.somma())
Produzione
ID 264
Nome Sravansravansravansivasivasravansivasahajasrav ..
Punti3 3242
Punti1 871
Punti2 374
Spiegazione
Puoi vedere che viene restituita la somma dei valori in ciascuna colonna.
Scenario 2: somma di colonna particolare
Se si desidera restituire la somma dei valori in una colonna particolare, è necessario specificare il nome della colonna e l'oggetto dati.
panda.Dataframe_object ['colonna'].somma()
Esempio
Restituiamo la somma dei valori nelle colonne "Points1", "Points2" e "Points3" separatamente.
# Restituisci la somma dei valori nella colonna Points1
Stampa (Analysis ['Points1'].somma())
# Restituisci la somma dei valori nella colonna Point2
Print (Analysis ['Points2'].somma())
# Restituisci la somma dei valori nella colonna Points3
Print (Analysis ['Points3'].somma())
Produzione
871
374
3242
Spiegazione
Scenario 3: somma attraverso le righe
Se si desidera restituire la somma dei valori in ogni riga, è necessario specificare il parametro dell'asse nella funzione Sum () e impostarlo su 1.
panda.Dataframe_object [[colonna/s…]].somma (asse = 1)
Esempio
Restituiamo la somma dei valori di "Points1", "Points2" e "Points3" in tutte le righe e archiviano il risultato nella colonna "Somma".
# Restituisci la somma dei valori in ogni riga
Analysis ['Sum'] = Analysis [['Points1', 'Points2', 'Points3']].somma (asse = 1)
Stampa (analisi)
Produzione
ID Nome Punti3 punti1 Punti2 Somma
0 23 Sravan 1000 34 56 1090
1 23 Sravan 700 11 0 711
2 23 Sravan 20 4 2 26
3 21 Siva 400 32 45 477
4 21 Siva 100 456 78 634
5 23 Sravan 0 90 12 102
6 21 Siva 400 32 45 477
7 20 Sahaja 120 1 67 188
8 23 Sravan 0 90 12 102
9 22 Suryam 450 76 56 582
10 22 Suryam 40 0 1 41
11 22 Suryam 12 45 0 57
Spiegazione
Ora, la nuova colonna - 'Sum' detiene la somma di tre punti.
Possiamo anche aggiungere tra le righe senza usare Sum (). Usando l'operatore "+", possiamo ottenere la funzionalità precedente.
Esempio
Panda di importazione
# Crea dati di dati utilizzando gli elenchi
Analisi = panda.DataFrame ([[23, "Sravan", 1000,34,56],
[23, "Sravan", 700,11,0],
[23, "Sravan", 20,4,2],
[21, "Siva", 400,32,45],
[21, "Siva", 100.456,78],
[23, "Sravan", 00,90,12],
[21, "Siva", 400,32,45],
[20, 'Sahaja', 120,1,67],
[23, "Sravan", 00,90,12],
[22, "Suryam", 450,76,56],
[22, "Suryam", 40,0,1],
[22, "Suryam", 12,45,0]
], colonne = ['id', 'name', 'point3', 'point1', 'point2'])
# Aggiungi valori nelle colonne Points1 e Points2 e memorizza il risultato nella colonna '2 Aggiunto'
Analysis ['2 aggiunto'] = analisi ['point1']+analisi ['point2']
# Aggiungi valori in Points1, Points2 e Points2Columns e memorizza il risultato nella colonna "3 aggiunta"
Analysis ['3 aggiunto'] = analisi ['point1']+Analysis ['point2']+Analysis ['point3']
Stampa (analisi)
Produzione
Nome ID Punti3 punti1 Punti2 2 Aggiunti 3 Aggiunti
0 23 Sravan 1000 34 56 90 1090
1 23 Sravan 700 11 0 11 711
2 23 Sravan 20 4 2 6 26
3 21 Siva 400 32 45 77 477
4 21 Siva 100 456 78 534 634
5 23 Sravan 0 90 12 102 102
6 21 Siva 400 32 45 77 477
7 20 Sahaja 120 1 67 68 188
8 23 Sravan 0 90 12 102 102
9 22 Suryam 450 76 56 132 582
10 22 Suryam 40 0 1 1 41
11 22 Suryam 12 45 0 45 57
Scenario 4: Sum () con GroupBy ()
Se si desidera restituire la somma dei valori per i singoli gruppi, è necessario utilizzare GroupBy () con Sum (). Quindi GroupBy () viene utilizzato per raggruppare i valori della colonna in una colonna particolare e Sum () restituirà la somma in ciascun gruppo.
panda.DataFrame_Object.GroupBy ('Grouping_column').somma()
Esempio
Raggruppiamo le righe in base alla colonna del nome e restituiamo la somma dei valori in ciascun gruppo per tutte le colonne.
Panda di importazione
# Crea dati di dati utilizzando gli elenchi
Analisi = panda.DataFrame ([[23, "Sravan", 1000,34,56],
[23, "Sravan", 700,11,0],
[23, "Sravan", 20,4,2],
[21, "Siva", 400,32,45],
[21, "Siva", 100.456,78],
[23, "Sravan", 00,90,12],
[21, "Siva", 400,32,45],
[20, 'Sahaja', 120,1,67],
[23, "Sravan", 00,90,12],
[22, "Suryam", 450,76,56],
[22, "Suryam", 40,0,1],
[22, "Suryam", 12,45,0]
], colonne = ['id', 'name', 'point3', 'point1', 'point2'])
# raggruppa le righe in base alla colonna del nome e alla somma di restituzione dei valori in ciascun gruppo per tutte le colonne
Stampa (analisi.GroupBy ('Nome').somma())
Produzione
Punti ID3 punti1 punti2
nome
Sahaja 20 120 1 67
Siva 63 900 520 168
Sravan 115 1720 229 82
Suryam 66 502 121 57
Spiegazione
Quindi ci sono 4 gruppi nella colonna "Nome". Per ciascun gruppo, la somma di ID, Points3, Points1 e Points2 viene restituita.
Conclusione
Abbiamo cercato di insegnarti come calcolare la somma attraverso i telai di dati utilizzando il metodo Pandas Sum (). Abbiamo discusso dell'aggiunta di valori di riga e colonna negli esempi di questo post. Inoltre, hai imparato come aggiungere colonne condizionatamente e come sommare i valori dopo aver raggruppato la colonna del frame dati. Ora, potresti essere in grado di sommare insieme le colonne del Frame dati o sommare i valori all'interno della colonna DataFrame da solo.