Pandas kategorisk

Pandas kategorisk
De kategoriske variablene som brukes i statistikk er representert av Pandas datatype kategorisk. Sanntidsdata inneholder vanligvis tekstkolonner med repeterende data. Det er alltid noe repetisjon i funksjonene som kjønn, blodtype og koder. De kan tas som eksempler på kategorisk. Det er bare et fast og begrenset antall eller utvalg av mulige verdier for kategoriske variabler. Kategoriske data kan ha en ordre i tillegg til fast lengde, men de kan ikke utføre numeriske operasjoner. I denne opplæringen lærer vi hvordan du lager kategorisk i pandaer og endrer forskjellige datatyper til kategorisk.

Når skal du bruke kategorisk?

I de følgende scenariene kan vi bruke kategorisk datatype:

  • En strengvariabel med bare noen få forskjellige verdier. For å spare minne, kan variabelen gjøres til en kategorivariabel.
  • Den logiske ordrevariabelen ("en", "to" og "tre") og en variabel med leksikalsk ordre er ikke de samme. Sortering og minimum/maksimum vil benytte den logiske ordren i motsetning til den leksikale ordren hvis problemet konverteres til en kategori og kategoriene får en ordre.
  • Andre Python -biblioteker bør behandle kolonnene som kategoriske variabler (for eksempel for å bruke passende statistiske plotttyper eller funksjoner).

Hvordan lage Pandas kategoriske?

Det er et bredt spekter av måter å skape kategorisk i pandaer. Noen funksjoner og attributter for å lage kategorier i pandaer vil bli diskutert i følgende eksempler:

Eksempel nr. 1: Opprette kategorisk bruk av Pandas -serien

En kategorisk kan opprettes i pandaer ved hjelp av PD.serie () funksjon. For å lage en serie, vil vi først importere Pandas -modulen.

Vi har brukt en liste over strenger ["ASD", "123", "def", "456"] inne i PD.Serie () funksjon som et argument. Vi spesifiserte også parameteren "DType" til "kategori" for å lagre dataene som kategorisk. La oss se kategorisk ved å skrive ut variabelen "String".

Som vi ser i utgangen, blir serien vår konvertert til kategorisk ved å spesifisere dtype = 'kategori'.

Eksempel nr. 2: Opprette kategorisk DataFrame i pandaer

Ved å bruke pandaer.DataFrame (dtype = ”kategori”), kategoriske data kan konstrueres. Akkurat som serie, er dtype -attributtet til DataFrame () -funksjonen satt til “kategori” for å lage en kategorisk DataFrame. Ved å sette dtype = ”kategori” i DataFrame -konstruktøren, kan alle kolonnene i datarammen gjøres kategorisk under eller etter bygging. La oss lage et eksempel på DataFrame for å vise forskjellen mellom vanlige og kategoriske Dataframes.

For å lage vår dataaFrame “DF”, importerte vi først Pandas og Numpy -moduler for å bruke funksjonene og funksjonene sine. Etter å ha importert modulene, har vi laget en ordbok "data" med to nøkler, "Col1" og "Col2". "Data" -ordboken blir deretter sendt til PD.DataFrame () -funksjonen for å lage “DF” DataFrame.

Det er en vanlig pandas dataaframe med kolonner som lagrer numeriske data. For å bestemme datatypene til kolonner i "DF" DataFrame, vil DTYPES -attributtet bli brukt.

Datatypen til kolonnene 'Col1' og 'Col2' er “INT64”. Nå vil vi vise deg hvordan du oppretter en kategorisk dataFrame med de samme kolonnetikettene og verdiene.

Som sett i denne DataFrame, har vi spesifisert dtype til 'kategori'. La oss sjekke datatypene til denne DataFrame:

Som vist er datatypen til denne dataaframes kolonner 'kategori'. Så dette er en kategorisk dataaframe.

Eksempel nr. 3: Opprette kategorisk ved hjelp av AstType () -funksjonen

Et Pandas -objekt kan konverteres til en bestemt dype ved bruk av “DataFrame.astype () ”-metode. I tillegg gir AstType () -metoden muligheten til å endre enhver passende eksisterende kolonne til en kategoritype. Når vi er pålagt å konvertere datatypen til en spesifikk kolonne med DataFrame til en annen datatype, DataFrame.astype () -funksjonen kan brukes. Først vil vi lage et eksempel på DataFrame. Så vil vi konvertere DataFrame -kolonnene til kategorisk.

Vi har laget vår dataaframe ved å passere ordboken inne i PD.DataFrame () fungerer som et argument.

Som det ble sett i forrige DataFrame “DF” er det tre kolonner, A, B og C, lagringsverdier [1, 3, 5, 7], [2.1, 4.2, 8.3, 16.4], og [“John”, “Tim”, henholdsvis "Clay", "Mike"]. For å bestemme datatypen til hver kolonne, bruker vi DTYPES -attributtet.

Datatypen på kolonnen “A” er 'INT64', mens datatypene til kolonnen “B” og “C” er henholdsvis "Float64" og "Objekt". Nå vil vi bruke AstType () -funksjonen for å endre datatypen til spesifikke kolonner.

Inne i DF.AstType () -funksjonen, vi har passert Python -ordboken som inneholder etikettene til kolonnene “A” og “C” som nøkler, og datatype “kategori” er spesifisert som verdien for begge kolonnens etiketter. La oss sjekke om datatypene endres til kategorien eller ikke.

Legg merke til at kolonnene “A” og “C” er blitt konvertert til kategori.

Eksempel 4: Bruke den kategoriske () -funksjonen for å lage kategorisk

Vi kan lage kategoriske variabler i pandaer ved å bruke kategorisk () -funksjonen. Først vil vi se på syntaksen til funksjonen () og deretter bruke den til å lage kategorisk.

Syntaks:

Pandas.Kategorisk (val, kategorier = ingen, bestilt = ingen, dtype = ingen)

Parametere:

kategorier: Indekslignende. De særegne kategoriene for kategorisk. Kategoriene antas å være forskjellige verdier av 'verdiene' hvis de ikke er spesifisert.

Bestilt (valgfritt): Hvis denne kategoriske anses å være en bestilt kategorisk. Hvis det er sant, vil den kategoriske utgangen bli sortert. Når den er sortert, respekterer en bestilt kategorisk attributtets ordre.

Dtype: Kategorisk Dype. En forekomst å bruke for kategorisk.
La oss nå lage Pandas kategorisk ved hjelp av PD.Kategorisk () -funksjon. Først vil vi importere Pandas -modulen for å lage vår kategoriske.

Som det kan sees, har vi laget to kategorier, 'Cat1' og 'Cat2', ved å passere en liste over verdier inne i parentesene til kategorisk () -funksjonen. Du vil legge merke til i utgangen som kategorisk “CAT1” består av 3 kategorier [1, 3, 4, 6], mens kategorisk "Cat2" består av 6 kategorier ['A', 'D', 'G', 'J' , 'S', 'W'].

La oss nå sjekke utgangen ved å spesifisere 'bestilt' parameter til 'True'.

Som du kan observere, ved å spesifisere bestilt = sant, er den kategoriske utgangen nå sortert [1 < 3 < 4 < 6].

La oss nå prøve et annet eksempel når parameteren "kategorier" er spesifisert.

Inne i PD.Kategorisk () -funksjon, listen ['1', '2', '3', '2', '1', '4', '2'] blir gitt til å konverteres til kategorisk, mens listen ['3 ',' 1 ',' 2 '] er spesifisert som "kategorier" -parameteren. La oss skrive ut den kategoriske "katten" for å se utdataene.

Som et resultat vil enhver verdi som ikke eksisterer i kategorilisten, bli betraktet som NAN. Fra "val" -listen er verdien '4' ikke til stede i "kategorier" argumentlisten, så den regnes som nan.

Du kan også utføre forskjellige funksjoner med kategorisk som å gi nytt navn til kategoriene, legge til nye kategorier, slette kategorier osv.

Konklusjon

I denne opplæringen har vi sett de statistikkene kategoriske variabler er representert med en datatype i pandaer kalt kategorisk. En kategorisk variabel har et fast, typisk begrenset sett med mulige verdier. Etter å ha gått gjennom denne opplæringen, kan du være kjent med kategorisk i pandaer og kan være i stand til å skape kategorisk på egen hånd. Vi implementerte noen få eksempler i denne opplæringen for å lære deg hvordan du lager kategorisk ved hjelp av serier, dataframes kolonner, AstType () -funksjonen, og ved å bruke kategorisk () -funksjonen.