Pandas Sum-søjle

Pandas Sum Sojle



'Denne artikel vil demonstrere, hvordan man summerer alle eller bestemte kolonner i en Pandas DataFrame ved hjælp af Python. Funktionen DataFrame.sum() vil blive brugt sammen med et par nyttige parametre i de mange eksempler på denne øvelse.'

Når denne vejledning er slut, ved du måske, hvordan du:







    • Find summen af ​​datarammesøjlen i Pandas.
    • Tilføjelse af datarammekolonnerne
    • Tilføj kolonner til en Pandas-dataramme, der opfylder den angivne betingelse.
    • Bestem summen efter gruppering af data fra datarammen.

Hvordan bestemmer man summen af ​​datarammekolonner?

Funktionen 'dataframe.sum()' i Pandas returnerer den samlede sum for den angivne akse. Hvis input er en akse i indekset, tilføjer funktionen hver kolonnes værdier individuelt og gør derefter det samme for hver kolonne, og returnerer en serie, der gemmer summen af ​​data/værdier i hver kolonne. Derudover understøtter den beregning af datarammens sum ved at ignorere de manglende værdier.



Syntaks: DataFrame.sum(axis = Ingen, skipna = Ingen, niveau = Ingen, numeric_only = Ingen, min_antal = 0, **kwargs)



Hvor,





akse: {kolonner (1), indeks (0)}

bestille: Ignorer NA/nul-værdier ved beregning af resultatet.



niveau: Hvis den angivne akse er hierarkisk (et multiindeks), skal du tælle til et bestemt indeksniveau, før du konverterer til en serie.

kun numerisk: Bare float-, int- og booleske kolonner er acceptable. Hvis ingen, prøv at bruge alt; hvis ikke, kun numeriske data. For serier, ikke implementeret.

min_count: Antallet af mulige værdier, der kræves for at fuldføre operationen. Resultatet vil være NA, hvis der er færre ikke-NA-værdier til stede end min_count.

Vender tilbage: DataFrame (hvis niveau angivet) eller serie.

Eksempel # 01: Bestem summen af ​​en datarammekolonne og alle kolonner

Vi har krævet en dataramme først med de gyldige datatyper, dvs. int, float osv., kolonne eller kolonner, som vi kan finde summen af ​​data for. Datarammen vil blive oprettet ved at bruge funktionen pd.DataFrame() .


Vi har oprettet den nødvendige dataramme fra en python-ordbog inde i pd.DataFrame()-funktionen. I den ovenfor oprettede dataramme er der fire kolonner 'Navn', 'dag1', 'dag2' og 'dag3'. Ud af fire kolonner er de tre kolonner, dvs. 'dag1', 'dag2' og 'dag3' numeriske kolonner med dataværdierne (4, 4, 3, 2, 4, 6, 5, 3), (2, 4, 5, 2, 3, 4, 6, 2) og (7, 4, 3, 5, 6, 2, 1, 4). Vi kan kun finde summen for disse tre kolonner. Summen for både serier (dvs. en kolonne) og en hel dataramme kan bestemmes ved hjælp af sum() metoden. Lad os begynde med at lære, hvordan man summerer alle data i en Pandas-kolonne.


For at bestemme summen brugte vi sum()-metoden i kolonnen 'day2'. Funktionen har returneret sumværdien af ​​28. I lighed med dette kan vi bestemme summen af ​​hver Dataframe-kolonne. Blot at bruge sum() metoden på tværs af hele datarammen vil opnå dette.


Som det kan ses, er summen af ​​kolonne 'dag1' 31; for 'dag2' er sumværdien 28, hvorimod sumværdien for kolonne 'dag3' er 32.

Eksempel # 02: Brug af sum()-funktionen til at summere datarammekolonneværdierne sammen

Som du kan se fra outputtet fra det foregående eksempel, returnerede funktionen ikke de faktiske datarammekolonnedata, der udgjorde summen. Men ved at tildele metoden 'DataFrame.sum()' til en DataFrame-kolonne, kan du få adgang til hver kolonne i DataFrame, inklusive sumkolonnen. Først opretter vi en anden dataramme til dette eksempel.


Ved at bruge pd.DataFrame() er vores dataramme blevet oprettet. Vi har lavet datarammen med tre kolonner: vare, pris og moms. Kolonneelementet, der indeholder strengværdierne ('pen', 'markør', 'lineal', 'viskelæder', 'blyant', 'clipboard', 'hæftemaskine', 'stifter'), kolonneprisen, der gemmer værdierne (20, 15, 10, 3, 5, 30, 35, 10), og kolonnen 'afgift' består af værdier (8, 5, 3, 3, 4, 10, 5, 2). Lad os nu lægge værdierne for pris- og afgiftskolonnen sammen og gemme resultaterne i en ny kolonne ved at beholde de originale datarammekolonner.


Som det kan bemærkes sammen med den nye kolonne 'total', returneres de oprindelige kolonner i den givne dataramme også af funktionen. Kolonnen 'total' gemmer summen af ​​værdierne af kolonnerne 'pris' og 'afgift' mod hver 'vare'-data.

Eksempel # 03: Brug af funktionen sum() til at bestemme summen af ​​specificerede datarammekolonner

For at summere de flere kolonner i datarammen sammen, kan vi angive en liste med etiketterne for kolonner og derefter anvende sum()-metoden på listen for at finde summen. Som tidligere eksempler vil vi først oprette datarammen.


Vi har lavet vores dataramme med fire kolonner 'elever', 'mærker1', 'mærker2' og 'mærker3'. Kolonnen 'studerende' gemmer dataene ('Larry', 'James', 'Rob', 'Arya', 'Max', 'Ben', 'Gwen', 'Bill'), og kolonnen 'marks1', der gemmer værdier (8, 9, 6, 8, 10, 7, 9, 9), mens kolonnerne 'marks2' og 'marks3' gemmer de numeriske værdier (6, 6, 8, 6, 7, 9, 10, 9 hhv. (7, 6, 9, 7, 8, 7, 10, 10).


Først har vi oprettet et listeobjekt med kolonneetiketter 'elever', 'mærker1' og 'mærker3'. Derefter anvendes sum() metoden på listen. Funktionen har kun opsummeret værdierne for kolonnerne marks1 og marks3, fordi kolonnen 'elever' er ikke-numerisk, så funktionen sum() kan ikke finde summen for værdierne af kolonnen 'elever'. Vi har gemt summen af ​​værdierne for kolonnerne 'marks1' og 'marks3' i kolonnen 'sum'.

Eksempel # 04: Tilføj kolonner af Pandas dataramme, der opfylder en specificeret betingelse

I dette eksempel tilføjer vi værdierne for specificerede kolonner, hvis de opfylder den angivne betingelse.


Der er 5 kolonner i den nyoprettede dataramme, dvs. 'virksomhed', 'uge1_salg', 'uge2_salg', 'uge3_salg' og 'afdelinger'. Lad os nu antage, at vi ikke ønsker at tilføje værdien af ​​den sidste kolonne, når vi tilføjer eller finder summen af ​​værdierne af de givne datarammerækker. Lad os sige, at vi bare ville tilføje kolonneværdierne med ordet 'uge' i deres etiketter. En listeforståelse kan oprettes for at afgøre, om ordet 'uge' er til stede i en kolonneetiket eller ej.


Nu har vi hentet kolonnerne med ordet 'uge' i deres etiketter. Vi kan opsummere de kolonner, der indeholder ordet 'uge' ved at bruge argumentet axis=1 i sum()-funktionen.


På denne måde kan vi sikkert opsummere data på tværs af kolonner rækkevis uden at inkludere kolonner, vi ikke ønsker.

Eksempel # 5: Bestem summen efter gruppering af data i datarammen

Vi kan også finde summen af ​​datarammekolonner efter at have grupperet dataene i en eller flere kolonner. groupby()-metoden vil blive brugt til at gruppere dataene i kategorier inde i kolonnen. Lad os oprette en dataramme, så vi kan gruppere dataene i en af ​​dens kolonner.


Nu vil vi gruppere dataene i kolonnen 'alder' og summere værdierne af kolonnerne 'score1' og 'score2' for hver kategori i gruppen.


Vi kan se, at opsummering af data i datarammen efter først at have grupperet dataværdierne efter alder resulterer i en kolonnevis sum afhængigt af aldersgrupperne.

Konklusion

I denne tutorial forsøgte vi at lære dig, hvordan du beregner summen på tværs af datarammer ved hjælp af Pandas sum-metoden. Vi har diskuteret række- og kolonnevise tilføjelse af værdier i eksemplerne i dette indlæg. Derudover lærte du, hvordan du tilføjer kolonner betinget, og hvordan du summerer værdierne efter gruppering af kolonnen i datarammen. Nu er du muligvis i stand til at summere kolonnerne i datarammen sammen eller selv summere værdierne i datarammekolonnen.