logo

Forskjellen mellom loc() og iloc() i Pandas DataFrame

Pandas-biblioteket til Python er veldig nyttig for manipulering av matematiske data og er mye brukt innen maskinlæring. Den omfatter mange metoder for at den skal fungere ordentlig. plass() og iloc() er en av disse metodene. Disse brukes til å kutte data fra Pandas DataFrame . De hjelper til med praktisk valg av data fra DataFrame i Python . De brukes til å filtrere dataene i henhold til noen forhold.

Forskjellen mellom loc() og iloc() i Pandas DataFrame

Her vil vi se forskjellen mellom loc() og iloc() funksjon i Pandas DataFrame. For å se og sammenligne forskjellen mellom disse to, vil vi lage en eksempeldataramme som vi vil bruke i hele avsnittet. Virkningen av begge disse metodene er forklart i prøvedatasettet av biler.



python3




grå kode





# importing the module> import> pandas as pd> > # creating a sample dataframe> data>=> pd.DataFrame({>'Brand'>: [>'Maruti'>,>'Hyundai'>,>'Tata'>,> >'Mahindra'>,>'Maruti'>,>'Hyundai'>,> >'Renault'>,>'Tata'>,>'Maruti'>],> >'Year'>: [>2012>,>2014>,>2011>,>2015>,>2012>,> >2016>,>2014>,>2018>,>2019>],> >'Kms Driven'>: [>50000>,>30000>,>60000>,> >25000>,>10000>,>46000>,> >31000>,>15000>,>12000>],> >'City'>: [>'Gurgaon'>,>'Delhi'>,>'Mumbai'>,> >'Delhi'>,>'Mumbai'>,>'Delhi'>,> >'Mumbai'>,>'Chennai'>,>'Ghaziabad'>],> >'Mileage'>: [>28>,>27>,>25>,>26>,>28>,> >29>,>24>,>21>,>24>]})> > # displaying the DataFrame> display(data)>

>

>

Produksjon

 Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 28 1 Hyundai 2014 30000 Delhi 27 2 Tata 2011 60000 Mumbai 25 3 Mahindra 2015 25000 Delhi 26 4 Maruti 2012 10000 Mumbai 28 5 Hyundai 2016 46000 Delhi 29 6 Renault 2014 31000 Mumbai 24 7 Tata 2018 15000 Chennai 21 8 Maruti 2019 12000 Ghaziabad 24>

Python loc() funksjon

De loc() funksjon er etikettbasert datavalgmetode som betyr at vi må sende inn navnet på raden eller kolonnen som vi ønsker å velge. Denne metoden inkluderer det siste elementet i området som sendes i den, i motsetning til iloc(). loc() kan godta de boolske dataene i motsetning til iloc(). Mange operasjoner kan utføres ved å bruke loc()-metoden som

Eksempel 1: Velge data i henhold til noen betingelser

I dette eksemplet bruker kodenloc>funksjon for å velge og vise rader fra DataFrame der merket er 'Maruti' og kjørelengden er større enn 25, og viser relevant informasjon om Maruti-biler med høy kjørelengde.

python3




# selecting cars with brand 'Maruti' and Mileage>25> display(data.loc[(data.Brand>=>=> 'Maruti'>) & (data.Mileage>>25>)])>

>

>

Produksjon

 Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 28 4 Maruti 2012 10000 Mumbai 28>

Eksempel 2: Velge et område med rader fra DataFrame

I dette eksemplet bruker kodenloc>funksjon for å trekke ut og vise rader med indekser fra 2 til 5 (inklusive) fra DataFrame, og gir informasjon om et spesifikt utvalg av biler i datasettet.

python3

maven repository




# selecting range of rows from 2 to 5> display(data.loc[>2>:>5>])>

>

>

Produksjon

streng til char
 Brand Year Kms Driven City Mileage 2 Tata 2011 60000 Mumbai 25 3 Mahindra 2015 25000 Delhi 26 4 Maruti 2012 10000 Mumbai 28 5 Hyundai 2016 46000 Delhi 29>

Eksempel 3: Oppdatering av verdien av en hvilken som helst kolonne

I dette eksemplet bruker kodenloc>funksjon for å oppdatere 'Kilometerstand'-verdiene til 22 for biler i DataFrame der produksjonsåret er før 2015. Den modifiserte DataFrame vises deretter, og reflekterer endringene som er gjort i kolonnen Kilometerstand.

python3




# updating values of Mileage if Year <2015> data.loc[(data.Year <>2015>), [>'Mileage'>]]>=> 22> display(data)>

>

>

q3 måneder

Produksjon

 Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 22 1 Hyundai 2014 30000 Delhi 22 2 Tata 2011 60000 Mumbai 22 3 Mahindra 2015 25000 Delhi 26 4 Maruti 2012 10000 Mumbai 22 5 Hyundai 2016 46000 Delhi 29 6 Renault 2014 31000 Mumbai 22 7 Tata 2018 15000 Chennai 21 8 Maruti 2019 12000 Ghaziabad 24>

Python iloc() funksjon

De iloc() funksjon er en indeksert basert selekteringsmetode som betyr at vi må sende en heltallsindeks i metoden for å velge en spesifikk rad/kolonne. Denne metoden inkluderer ikke det siste elementet i området som sendes i den i motsetning til loc(). iloc() godtar ikke de boolske dataene i motsetning til loc(). Operasjoner utført med iloc() er:

Eksempel 1: Velge rader ved å bruke heltallsindekser

I dette eksemplet bruker kodeniloc>funksjon for å trekke ut og vise spesifikke rader med indeksene 0, 2, 4 og 7 fra DataFrame, som viser informasjon om utvalgte biler i datasettet.

python3




# selecting 0th, 2nd, 4th, and 7th index rows> display(data.iloc[[>0>,>2>,>4>,>7>]])>

>

>

streng til char java

Produksjon

 Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 28 2 Tata 2011 60000 Mumbai 25 4 Maruti 2012 10000 Mumbai 28 7 Tata 2018 15000 Chennai 21>

Eksempel 2: Velge en rekke kolonner og rader samtidig

I dette eksemplet bruker kodeniloc>funksjon for å trekke ut og vise et undersett av DataFrame, inkludert rad 1 til 4 og kolonne 2 til 4. Dette gir informasjon om et spesifikt utvalg av biler og deres relevante attributter i datasettet.

python3




# selecting rows from 1 to 4 and columns from 2 to 4> display(data.iloc[>1>:>5>,>2>:>5>])>

>

>

Produksjon

 Kms Driven City Mileage 1 30000 Delhi 27 2 60000 Mumbai 25 3 25000 Delhi 26 4 10000 Mumbai 28>