Lahendatud: filtreerige pandades kõik veerud

Viimane uuendus: 09/11/2023

Andmeanalüüsi maailmas võib suurte andmekogumite käsitlemine olla hirmutav ülesanne. Selle protsessi üks olulisi osi on andmete filtreerimine asjakohase teabe saamiseks. Pythoni puhul tuleb meile appi võimas teek Pandas . Selles artiklis arutame, kuidas filtreerida kõiki veerge Pandas DataFrame'is . Tutvustame samm-sammult koodi ja pakume põhjaliku ülevaate teekidest ja funktsioonidest, mida saab sarnaste probleemide lahendamiseks kasutada.

Tutvustame pandasid

on avatud lähtekoodiga teek, mis pakub Pythoni programmeerimiskeele jaoks hõlpsasti kasutatavaid andmestruktuure ja andmeanalüüsi tööriistu. See mängib olulist rolli andmeteaduse ökosüsteemis ja on muutunud iga Pythoniga töötava andmeteadlase või analüütiku jaoks hädavajalikuks tööriistaks. Oma funktsioonide hulgas pakuvad pandad kahte peamist andmestruktuuri: DataFrame ja Series . DataFrame on kahemõõtmeline tabel märgistatud telgedega (read ja veerud), samas kui Series on ühemõõtmeline märgistatud massiiv.

Selles artiklis keskendume panda DataFrame'i mis tahes veerus esinevate konkreetsete väärtuste filtreerimisele. Selleks kasutame funktsiooni panda .isin() koos tõeväärtuse maskeerimisega.

DataFrame'i filtreerimine

DataFrame'i filtreerimiseks pandades toimige järgmiselt.

1. Importige pandade teek
2. Looge DataFrame või laadige see failist
3. Määratlege väärtused, mida soovite filtreerida
4. Rakendage filter, kasutades funktsiooni ".isin()" ja tõeväärtuslikku maskeerimist
5. Kuvage filtreeritud DataFrame

Sukeldume koodi, et mõista, kuidas see töötab.

import pandas as pd

# Creating a DataFrame
data = {'Column1': [1, 2, 3, 4, 5],
        'Column2': [10, 20, 30, 40, 50],
        'Column3': ['A', 'B', 'A', 'B', 'A']}
df = pd.DataFrame(data)

# Define the values to filter
filter_values = [1, 3, 5, 'A']

# Apply the filter using .isin() and boolean masking
filtered_df = df[df.isin(filter_values).any(axis=1)]

# Display the filtered DataFrame
print(filtered_df)

Selles näites impordime esmalt pandade teegi ja loome kolme veeruga DataFrame'i. Määratleme väärtused, mida tahame filtreerida (1, 3, 5 ja 'A') ja rakendame filtrit funktsiooni .isin() abil koos tõeväärtusliku maskeerimisega. Funktsioon „any(axis=1)” kontrollib, kas rea mis tahes väärtus vastab filtreerimiskriteeriumidele. Lõpuks prindime filtreeritud DataFrame'i.

Funktsioon .isin() ja tõeväärtusmask

Pandade funktsioon .isin() on mitmekülgne tööriist andmete filtreerimiseks loendi või väärtuste komplekti põhjal. See tagastab sama kujuga tõeväärtusega DataFrame'i, mis näitab, millised elemendid antud loendis või komplektis esinevad. Meie puhul edastame filtreerida soovitavate väärtuste loendi.

Boole'i ​​maskeerimine on pandades kasutatav meetod andmete elemendipõhiseks filtreerimiseks. See seisneb tõeväärtusmaski (tõene ja vale väärtuste massiiv) rakendamises andmestruktuurile selle elementide filtreerimiseks. Meie probleemi kontekstis kasutame soovitud väärtusi sisaldavate ridade hankimiseks tõeväärtuslikku maskeerimist koos funktsiooniga .isin().

Pandade teegi, DataFrame'i struktuuride ja funktsiooni .isin() selge arusaamaga saame tõhusalt filtreerida mis tahes panda DataFrame'i. Need tehnikad võimaldavad meil hõlpsalt uurida suuri andmekogumeid ja hankida väärtuslikke teadmisi, muutes pandad Pythonis andmeanalüüsi jaoks populaarseks raamatukoguks.

Seonduvad postitused: