Pandas lager kolonne basert på tilstand

Pandas lager kolonne basert på tilstand
Python er det mest brukte kodingsspråket på Data Science Arena. En faktor for sin fremtredende rolle er mange Python -biblioteker for dataanalyse. Disse bibliotekene gir teknikker for å utføre dataoperasjoner som er raske, modulære og effektive. Pandas og Numpy er to kjente Python-moduler for dataanalyse og manipulasjon.

Å generere nye kolonner fra eksisterende eksistiske kolonner i et datasett er en vanlig operasjon i dataforarbeidingsstadiet. Det er også et viktig aspekt ved funksjonsteknikk. I noen tilfeller er nye kolonner konstruert som svar på forhold på eksisterende kolonner. Pandas og Numpy gir en rekke alternativer for denne oppgaven.

I dette innlegget vil vi se på forskjellige tilnærminger for å konstruere en ny kolonne avhengig av forholdene til eksisterende kolonner.

Metoder for å lage en kolonne basert på forhold i pandaer

Pandas -teknikkene som vi skal bruke i denne artikkelen er gitt nedenfor:

  • Listeforståelsesteknikk
  • Dataramme.Bruk () -funksjon
  • Dataramme.Kart () Funksjon

I denne leksjonen vil vi bruke disse metodene og forklare hvordan du implementerer alle tre måter i pandaer.

Eksempel 01: Bruke listeforståelsesteknikken

Den første tilnærmingen vi bruker her for å lage en kolonne basert på tilstanden til eksisterende kolonner er "listeforståelse". Vi lærer denne metoden med et praktisk eksempel. La oss begynne koden.

Vi bruker "Spyder" -verktøyet for implementering og utførelse av Python -eksemplene i denne artikkelen. Vi åpner en ny Python -fil i "Spyder" for å begynne å skrive Python -skriptet. Koden vår begynner med å importere det nødvendige biblioteket, "Pandas som PD" her. Deretter oppretter vi en dataaframe ved å bruke “PD.DataFrame () ”-funksjon. Vi initialiserer denne DataFrame med to kolonner “Navn” og “Age”.

Kolonnen "Navn" lagrer fem navn som er "Elsa", "Emma", "Alaxandar", "Ron" og "Sasha". Mens "alder" -kolonnen lagrer samme lengde på heltallverdier som er "28", "19", "26", "19" og "31". Vi lagrer dette DataFrame i et DataFrame -objekt Vi opprettet “Info”. Denne DataFrame kan nås av objektet "Info". I den siste linjen påberopes “print ()” -metoden for å vise den nyopprettede DataFrame.

For utførelse av koden ovenfor, trykk på "Kjør fil" -knappen eller trykk på "Shift+Enter" -tastene. Utgangen som vises på terminalen viser en dataaFrame med 2 kolonner, hver lagring av 5 verdier.

Nå vil vi generere en annen kolonne basert på en betingelse på den tidligere opprettede kolonnen. Vi oppretter en annen kolonne “can_vote” i "info" dataaframe for å sjekke hvem som kan stemme i valget i år. Vi bruker en betingelse og bruker listeforståelsesmetoden, hvis personens alder er 18 år eller over for ham å stemme. Vi bruker en variabel “A” som er hvilken som helst verdi fra "alder" -kolonnen, da vi sjekker forholdene basert på personens alder. Tilstanden blir "sann" hvis alderen er lik eller større enn "18" ellers gir tilstanden "falsk"; der "a" er noen verdi i "alder" -kolonnen i "informasjonen" dataaframe.

Den første verdien av "alder" -kolonnen lagres i "A" som er "28" og tilstanden vil bli sjekket. Ettersom "28" er større enn "18", gir tilstanden "sann" og den første verdien av "alder" -kolonnen blir "sann". Denne operasjonen vil fortsette å gjenta seg til alle verdiene er sjekket for den spesifiserte tilstanden. Deretter bruker vi metoden “Print ()” for å vise DataFrame med en ny kolonne basert på tilstanden.

Når vi kjører skriptet, viser det både forrige DataFrame med to kolonner og det oppdaterte DataFrame med 3 kolonner. I utgangsbildet nedenfor kan du se at de eneste 4th Registrering har en verdi mindre enn 18, så i kolonnen "can_vote" er verdien "falsk" mens alle de andre postene oppfyller den spesifiserte tilstanden og dermed er verdsatt som "sann".

Eksempel 02: Bruke Pandas DataFrame.Bruk () -funksjon

Den andre teknikken vi vil diskutere her er Pandas “Dataframe.Bruk () ”-funksjon for å lage en tilstandsbasert kolonne.

Dataframe generert i foregående eksempel vil bli brukt til denne demonstrasjonen. Vi har “Info” DataFrame som inneholder to kolonner “Navn” og “Alder”, som hver har 5 poster. Etter å ha skrevet ut "informasjonen" DataFrame, jobber vi deretter med å lage en ny kolonne i denne DataFrame. Her har vi definert en funksjon “can_vote” med “alder” som parameter. Den første "hvis" -tilstanden starter som sier at hvis alderen er større og lik 18, returnerer en "sann" verdi. Hvis tilstanden ikke stemmer overens, vil den returnere "falsk". Denne funksjonen vil sjekke hver post i alderskolonnen og matche den med den spesifiserte tilstanden til hver post er sammenlignet. Nå må vi lage en kolonne basert på tilstanden som er "can_vote" og tilordne den utgangen ved å kalle “DataFrame.Bruk () ”-funksjon.

Vi gir funksjonen vi definerte ovenfor “can_vote” som en parameter til “.Bruk () ”-metode. Det vil ta verdien fra "alder" -kolonnen og sjekke den i "can_vote" -funksjonen og lagre resultatet i en ny kolonne "can_vote". Til slutt bruker vi metoden “Print ()” for å skrive ut utfallet.

Utgangsbildet nedenfor viser den nyopprettede kolonnen i DataFrame “Info” som har 4 “sanne” verdier og en “falsk” verdi basert på den spesifiserte tilstanden.

Eksempel 03: Bruke Pandas DataFrame.Kart () Funksjon

Vår siste metode for å lage en kolonne basert på tilstand er å bruke Pandas “DataFrame.kart () ”-funksjon.

Vi importerte først biblioteket “Pandas som PD” i Python -filen vår. Når Pandas -funksjonene er aktivert, begynner vi å skrive hovedkoden. Vi oppretter DataFrame ved å bruke “PD.DataFrame () ”-metode og initialisere DataFrame med to kolonner“ Dato ”og“ Event ”. Kolonnen “Dato” lagrer datatiden som er “15/8/2022”, “16/9/2022”, “15/10/2022”, “15/11/2022”, og “16/12/2022 ”.

Mens "Event" -kolonnen lagrer 5 strengverdier som er "tegneserier", "spill", "tegneserier", "gåter" og "spill". Vi har lagret denne DataFrame i et DataFrame -objekt “Data”. Kaller “print ()” -metoden med DataFrame -objektet “Data” som parameter, vil vise den nyopprettede DataFrame på terminalen.

Når vi trykker på "Kjør fil" -knappen, vil den utføre Python -filen. Utgangen DataFrame vises på terminalen som har to kolonner “Dato” og “Event”.

Nå oppretter vi en annen kolonne ved å bruke en tilstand på de eksisterende kolonnene. Vi lager en ordbok "plist" og setter hver begivenhets pris i den som inkluderer "tegneserier: 1500", "spill: 800" og "gåter: 1200". Legg deretter til en ny kolonne "Pris" i "Data" DataFrame og tilordne den verdien av å kartlegge postene til "Event" -kolonnen med "Plist" -ordboken.

For dette formålet bruker vi “DataFrame.kart () ”-funksjon. DataFrame med kolonnenavnet “Data ['Price']” er skrevet med “.kart () ”-funksjonen og navnet på ordboken“ plist ”leveres mellom selene. Så denne funksjonen vil kartlegge "hendelsen" med "plisten", når en verdi samsvarer med den vil resultere i den nye kolonnen "pris".

Utgangsbildet viser begge DataFrames. Den andre DataFrame har en ny kolonne lagt til som setter inn hver post basert på tilstandskampen.

Konklusjon

Dagens leksjon er basert på å lage kolonnen basert på en spesifisert tilstand. Vi har forklart deg konseptet med å lage en ny kolonne fra eksisterende. Pandas gir oss en rekke metoder for å oppnå ønsket utfall. I denne opplæringen har vi brukt noen av Pandas -funksjonene “DataFrame.Apply () ”,“ DataFrame.kart () ”og“ listeforståelse ”. Hver teknikk blir utdypet med en praktisk eksempelkode implementert på Python i "Spyder" -verktøyet. Vi tror virkelig at fullt fokusert praksis med å lære Pandas -konseptet vil gjøre deg til en mester i det.