logo

Verschil tussen loc() en iloc() in Panda's DataFrame

Panda's bibliotheek van Python is erg handig voor het manipuleren van wiskundige gegevens en wordt veel gebruikt op het gebied van machinaal leren. Het omvat vele methoden voor de goede werking ervan. plaats() En iloc() zijn een van die methoden. Deze worden gebruikt bij het segmenteren van gegevens uit de Panda's DataFrame . Ze helpen bij de gemakkelijke selectie van gegevens uit het DataFrame in Python . Ze worden gebruikt bij het filteren van de gegevens op basis van bepaalde voorwaarden.

Verschil tussen loc() en iloc() in Panda's DataFrame

Hier zullen we het verschil zien tussen de functie loc() en iloc() in Pandas DataFrame. Om het verschil tussen deze twee te zien en te vergelijken, zullen we een voorbeeld van een dataframe maken dat we in de hele paragraaf zullen gebruiken. De werking van beide methoden wordt uitgelegd in de voorbeelddataset auto’s.



python3




theelepel versus eetlepel





# 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)>

>

>

Uitvoer

 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()-functie

De loc()-functie is een op labels gebaseerde gegevensselectiemethode, wat betekent dat we de naam moeten doorgeven van de rij of kolom die we willen selecteren. Deze methode omvat het laatste element van het doorgegeven bereik, in tegenstelling tot iloc(). loc() kan de booleaanse gegevens accepteren, in tegenstelling tot iloc(). Veel bewerkingen kunnen worden uitgevoerd met de methode loc(), zoals

Voorbeeld 1: Gegevens selecteren volgens bepaalde voorwaarden

In dit voorbeeld gebruikt de code deloc>functie om rijen uit het DataFrame te selecteren en weer te geven waarbij het merk ‘Maruti’ is en de kilometerstand groter is dan 25, waarbij relevante informatie wordt weergegeven over Maruti-auto’s met een hoge kilometerstand.

python3




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

laatste trefwoord in Java

>

>

Uitvoer

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

Voorbeeld 2: Een bereik van rijen selecteren uit het dataframe

In dit voorbeeld gebruikt de code deloc>functie om rijen met indices variërend van 2 tot en met 5 uit het DataFrame te extraheren en weer te geven, waardoor informatie wordt verstrekt over een specifiek bereik van auto's in de dataset.

python3


int een tekenreeks java



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

>

>

Uitvoer

 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>

Voorbeeld 3: De waarde van elke kolom bijwerken

In dit voorbeeld gebruikt de code deloc>functie om de 'Kilometerstand'-waarden bij te werken naar 22 voor auto's in het DataFrame waarvan het productiejaar vóór 2015 ligt. Het gewijzigde DataFrame wordt vervolgens weergegeven en weerspiegelt de wijzigingen die zijn aangebracht in de Kilometerstand-kolom.

python3




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

>

>

Uitvoer

 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()-functie

De iloc() functie is een geïndexeerde selectiemethode, wat betekent dat we een geheeltallige index in de methode moeten doorgeven om een ​​specifieke rij/kolom te selecteren. Deze methode omvat niet het laatste element van het bereik dat erin wordt doorgegeven, in tegenstelling tot loc(). iloc() accepteert de booleaanse gegevens niet, in tegenstelling tot loc(). Bewerkingen die worden uitgevoerd met iloc() zijn:

Voorbeeld 1: Rijen selecteren met behulp van gehele indices

In dit voorbeeld gebruikt de code deiloc>functie om specifieke rijen met indices 0, 2, 4 en 7 uit het DataFrame te extraheren en weer te geven, waarbij informatie over geselecteerde auto's in de dataset wordt getoond.

python3




variabel globaal javascript

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

>

>

typoscript pijlfunctie

Uitvoer

 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>

Voorbeeld 2: Gelijktijdig een bereik van kolommen en rijen selecteren

In dit voorbeeld gebruikt de code deiloc>functie om een ​​subset van het DataFrame te extraheren en weer te geven, inclusief rijen 1 tot en met 4 en kolommen 2 tot en met 4. Dit biedt informatie over een specifieke reeks auto's en hun relevante attributen in de dataset.

python3




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

>

>

Uitvoer

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