Python Pandas biblioteka yra labai naudinga manipuliuojant matematiniais duomenimis ir yra plačiai naudojama mašininio mokymosi srityje. Tai apima daugybę būdų, kaip tinkamai veikti. vieta () ir iloc() yra vienas iš tų būdų. Jie naudojami pjaustant duomenis iš Pandas DataFrame . Jie padeda patogiai pasirinkti duomenis iš „DataFrame in“. Python . Jie naudojami filtruojant duomenis pagal tam tikras sąlygas.
Skirtumas tarp loc() ir iloc() Pandas DataFrame
Čia pamatysime skirtumą tarp loc() ir iloc() funkcijų Pandas DataFrame. Norėdami pamatyti ir palyginti skirtumą tarp šių dviejų, sukursime duomenų rėmelio pavyzdį, kurį naudosime visoje pastraipoje. Abiejų šių metodų veikimas paaiškintas pavyzdiniame automobilių duomenų rinkinyje.
Python3
linijinė paieška java
# 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)> |
>
>
Išvestis
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() funkcija
The loc() funkcija yra etiketėmis pagrįstas duomenų atrankos metodas, o tai reiškia, kad turime perduoti norimos pasirinkti eilutės arba stulpelio pavadinimą. Šis metodas apima paskutinį jame perduoto diapazono elementą, skirtingai nei iloc(). loc() gali priimti loginius duomenis, skirtingai nei iloc(). Daugelis operacijų gali būti atliekamos naudojant loc() metodą, pvz
1 pavyzdys: Duomenų pasirinkimas pagal kai kurias sąlygas
Šiame pavyzdyje kodas naudojaloc>funkcija, skirta pasirinkti ir rodyti eilutes iš DataFrame, kur prekės ženklas yra „Maruti“, o rida yra didesnė nei 25, ir rodoma svarbi informacija apie „Maruti“ automobilius, kurių rida yra didelė.
Python3
konvertuoti iš char į int java
# selecting cars with brand 'Maruti' and Mileage>25>> => 'Maruti'>) & (data.Mileage>>> |
>
>
Išvestis
Brand Year Kms Driven City Mileage 0 Maruti 2012 50000 Gurgaon 28 4 Maruti 2012 10000 Mumbai 28>
2 pavyzdys: Eilučių diapazono pasirinkimas iš DataFrame
Šiame pavyzdyje kodas naudojaloc>funkcija „DataFrame“ išgauti ir rodyti eilutes su indeksais nuo 2 iki 5 (imtinai), teikiant informaciją apie konkretų duomenų rinkinio automobilių diapazoną.
Python3
# selecting range of rows from 2 to 5> display(data.loc[>2>:>5>])> |
>
>
Išvestis
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>
3 pavyzdys: Bet kurio stulpelio vertės atnaujinimas
Šiame pavyzdyje kodas naudojaloc>funkcija atnaujinti „Mileage“ reikšmes iki 22 automobiliams „DataFrame“, kurių gamybos metai yra iki 2015 m. Tada rodomas pakeistas „DataFrame“, atspindintis stulpelio „Mileage“ pakeitimus.
Python3
gretimi kampai
# updating values of Mileage if Year <2015> data.loc[(data.Year <>2015>), [>'Mileage'>]]>=> 22> display(data)> |
>
>
Išvestis
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() funkcija
The iloc() funkcija yra indeksuotu pasirinkimo metodas, o tai reiškia, kad mes turime perduoti sveikojo skaičiaus indeksą metodu, kad pasirinktume konkrečią eilutę / stulpelį. Šis metodas neapima paskutinio perduoto diapazono elemento, skirtingai nei loc(). iloc() nepriima loginių duomenų, skirtingai nei loc(). Operacijos, atliekamos naudojant iloc(), yra šios:
1 pavyzdys: Eilučių pasirinkimas naudojant sveikųjų skaičių indeksus
Šiame pavyzdyje kode naudojamasiloc>funkcija iš DataFrame išgauti ir rodyti konkrečias eilutes su indeksais 0, 2, 4 ir 7, rodančias informaciją apie pasirinktus automobilius duomenų rinkinyje.
Python3
10 iš 50.00
# selecting 0th, 2nd, 4th, and 7th index rows> display(data.iloc[[>0>,>2>,>4>,>7>]])> |
>
>
Išvestis
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>
2 pavyzdys: Stulpelių ir eilučių diapazono pasirinkimas vienu metu
Šiame pavyzdyje kodas naudojailoc>funkcija, skirta išgauti ir rodyti duomenų rėmelio poaibį, įskaitant 1–4 eilutes ir 2–4 stulpelius. Tai suteikia informacijos apie konkretų automobilių diapazoną ir atitinkamus jų atributus duomenų rinkinyje.
Python3
# selecting rows from 1 to 4 and columns from 2 to 4> display(data.iloc[>1>:>5>,>2>:>5>])> |
>
java konvertuoti char į int
>
Išvestis
Kms Driven City Mileage 1 30000 Delhi 27 2 60000 Mumbai 25 3 25000 Delhi 26 4 10000 Mumbai 28>