Etter å ha fullført denne opplæringen, vil du vite:
Hvordan finne om det eksisterer en substring eller uttrykk i strengverdien i pandaer?
For å avgjøre om en streng består av en bestemt substring eller ikke, er det flere funksjoner som vi kan gjøre for å gjøre det.
Eksempel 1: Kontroller om den spesifiserte substringen er inkludert i strengdata ved bruk av In Operator
I Python kan in -operatøren brukes med iterable typer som lister og strenger. Det brukes til å avgjøre om et element er til stede i den iterable eller ikke. Et funnet element er indikert av at operatøren kommer tilbake. Hvis ikke, returnerer det falskt. In -operatøren er den raskeste og mest pytoniske tilnærmingen for å avgjøre om en streng inkluderer en substring i python. Operatøren gjør det klart for hver leser av koden din hva du prøver å oppnå.
Pandas -serien er opprettet ved hjelp av PD.Serie () -funksjon etter import av Pandas -modulen. Serien vår består av strengverdier “Floor”, “Our”, “Cancel”, “Sure”, “Tour”, “Store”, “Bore” og “Evil”. Nå vil vi bruke in -operatøren for å finne om den spesifiserte substringen eksisterer i strengverdiene til Pandas -serien eller ikke. For å iterere over hver verdi av Pandas -serien, vil "For" -løkken bli brukt, som sett i skriptet nedenfor.
Ved å bruke in -operatøren fikk vi resultatene i form av ekte og usant. "Sann" indikerer tilstedeværelsen av en substring for strengverdiene, og "falsk" indikerer fraværet av en substring. Vi kan også bruke in -operatøren med Pandas -listen og DataFrame -kolonner som inneholder strengverdier. La oss prøve i operatøren på en DataFrame -kolonne. For å lage DataFrame, bruker vi Pandas PD.DataFrame () -funksjon.
Først har vi laget en Python-ordbok "DIC" bestående av nøkkelverdipar. Så passerte vi "DIC" -ordboken inne i PD.Dataramme(). Vi har laget vår dataaframe med tre kolonner, jeg.e., id, navn og kurs. Vi tar sikte på å finne om det eksisterer understrenger i strengkolonnen eller ikke, så vi vil bare fokusere på strengkolonner. Det er to strengkolonner i DataFrame “Name” og “Column” som har strengverdiene (“Davidson”, “Hendery”, “Henderson”, “Jason”, “Kim”, “Jenson”, “Jackson”, “Carl ”) Og (“ Python ”,“ Amazon ”,“ Economics ”,“ Business ”,“ Languages ”,“ Database ”,“ Designing ”,“ Tegning ”).
Vi har spesifisert kolonnen "Navn", som er iterert av for Loop for å sjekke om underlaget "Son" er til stede i strengverdiene til kolonnens navn eller ikke. Funksjonen genererer resultatet ved å sjekke hver verdi inne i kolonnen.
Eksempel nr. 2: Filtrer en streng hvis substringen er til stede
In -operatøren vil bli brukt til å filtrere listen, serien eller DataFrame ved å trekke ut strengverdiene hvis substringen er til stede. For å oppnå dette, vil vi iterere gjennom hvert element i objektet ved hjelp av en for loop iterator for å se om en substring er til stede. Hvis listeelementene består av substringen, vil strengene bli lagt til en annen liste. La oss først opprette et listeobjekt
Først har vi laget en liste som inneholder elementene som strengverdier “Banana”, “Apple”, “Nature”, “Analyze”, “Fish”, “Name”, “Shirt”, “Analog”. Deretter opprettes en tom liste "filtrert" for å lagre de resulterende verdiene. Vi har brukt in -operatøren for å bestemme tilstedeværelsen av underlagene. Appendfunksjonen brukes til å legge ut utgangsstrengene (der substringen var til stede) i den tomme strengen "filtrert". Vi fikk fire verdier, jeg.e., “Banana”, “Analyser”, “Navn”, “Analog” som inneholder substring “NA”. La nå dette med en DataFrame -kolonne. Vi vil bruke DataFrame som vi har laget i eksempel nr. 1.
Denne gangen vil vi sjekke for kurskolonnen.
Vi har spesifisert kurskolonnen som skal itereres over av for Loop for å sjekke om underlaget “ON” er inkludert i kurskolonnen til DataFrame. Verdiene som substringen eksisterer, er lagt til en tom liste "filtrert" som vi har skrevet ut som en utgang.
Seriene.STR ”-funksjon kan oppnå seriens verdier som strenger og utføre forskjellige operasjoner. For å sjekke om et mønster eller regex er til stede i en indeks eller en seriestreng, kan vi bruke "-serien.str.inneholder () ”-funksjon i pandaer. Avhengig av om et spesifisert mønster eller regex er til stede i en serie eller indeksstrengverdi, returnerer metoden en boolsk indeks eller serie.
Syntaks: Serie.str.Inneholder (Pat, Case = True, Flags = 0, Na = Nan, Regex = True)
Hvor,
klapp: Regelmessig uttrykk eller karaktersekvens.
sak: sak følsom hvis det er satt til sann.
flagg: Flagg som skal føres gjennom RE -modulen, for eksempel RE.Ignorecase.
na: For å fylle de manglende eller nullverdiene.
regex: Pat anses å være et vanlig uttrykk hvis det er sant.
Eksempel 4: Bruk serie.str.inneholder () -funksjon for å bestemme om substringen er til stede i dataene
Først oppretter vi en liste med strengverdier. Sammen med pandaene vil vi også importere re-modulene. Re-modulen tilbyr et sett med effektive vanlige ekspresjonsfunksjoner som lar deg enkelt bestemme om en medfølgende streng samsvarer eller inneholder et bestemt mønster ved hjelp av samsvarsmetoden og bruker søkemetoden.
Vi har laget en liste med PD.Series () Funksjon med strengverdiene “Team_a”, “Team_ab”, “Team_B”, “Team_alpha”, “Team_ACE”, “Team_Stars” og “Team_C”. Vi har også spesifisert en indeks for serien vår "SR" som "Team 1", "Team 2", "Team 3", "Team 4", "Team 5", "Team 6" og "Team 7". La oss nå bruke serien.str.inneholder () -funksjon for å finne om substringen er til stede i strengverdiene på listen.
Inne i str.Inneholder () -funksjonen, vi har spesifisert PAT -parameteren som "Team_a" for å sjekke om Substring “Team_a” er inkludert i strengverdiene på listen. Utgangen viser at et serieobjekt som inneholder boolske verdier returneres av serien.str.inneholder () -funksjon. Der det medfølgende mønsteret finnes i strengen, er det sant; Ellers blir falsk returnert.
Eksempel 5: Bruk serie.str.inneholder () -funksjon for å bestemme om mønsteret er til stede i dataene
Vi vil nå sjekke om det spesifiserte mønsteret eksisterer i strengdataene til det underliggende serieobjektet. La oss lage en streng som inneholder strengverdier.
Vi har laget en serie med verdiene “Mickey”, “Rickon”, “Alex”, “Nick”, “Rov”, “Tim” og “Danny”. For å bestemme om et mønster er inkludert i strengdataene til serieobjektet, vil vi nå bruke “Series.str.inneholder () ”-funksjon.
Vi har spesifisert bane = “i [a-z]” for å finne om det er en strengverdi i serien “S” som har bokstaven “I” etterfulgt av et hvilket som helst lite alfabet.
Konklusjon
I denne opplæringen har vi prøvd å lære hvordan vi kan avgjøre om en streng inkluderer en substring i pandaer. Dette kan gjøres ved hjelp av flere metoder, men vi har diskutert noen få av dem i eksemplene. Vi implementerte eksempler for å lære deg hvordan du kan avgjøre om strengen inneholder den spesifiserte substringen ved hjelp av i operatøren, filtrer en streng hvis substringen er til stede i en serie eller dataaframe, og bruk STR.inneholder () -funksjon for å bestemme om substring eller uttrykk er til stede i dataene.