Colonna di somma panda

Colonna di somma panda

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

  1. asse: colonne (1), indice (0)
  2. skipna: Ignora i valori Na/null durante il calcolo del risultato.
  3. livello: Se l'asse specificato è gerarchico (un multi-indice), conta a un particolare livello di indice prima di convertirsi in una serie.
  4. numeric_only: Le colonne solo galleggianti, int e booleane sono accettabili. Se nessuno, prova a usare tutto; In caso contrario, solo dati numerici. Per serie, non implementato.
  5. min_count: Il numero di possibili valori richiesti per completare l'operazione. Il risultato sarà NA se ci sono meno valori non Na presenti rispetto a Min_Count.

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

  1. Somma dei valori nella colonna Points1 è 871.
  2. Somma dei valori nella colonna Points2 è 374.
  3. Somma dei valori nella colonna Points3 è 3242.

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

  1. Aggiungi valori nelle colonne Points1 e Points2 e memorizza il risultato in "2 Aggiunti'colonna.
  2. Aggiungi i valori nelle colonne Points1, Points2 e Points3 e memorizza il risultato in "3 Aggiunto'colonna.
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.