V tem članku bomo razpravljali o Pandas DataFrame.set_index() v Pythonu. Python izstopa kot odličen jezik za analizo podatkov, predvsem zaradi izjemnega ekosistema paketov, osredotočenih na podatke. Med temi paketi Pande igra pomembno vlogo pri poenostavitvi uvoza in analiziranja podatkov.
Sintaksa Pandas DataFrame.set_index().
Sintaksa: DataFrame.set_index(ključi, drop=True, append=False, inplace=False, verify_integrity=False)
Parametri:
niz podniz java
- ključi: Ime stolpca ali seznam imen stolpcev.
- spusti: Logična vrednost, ki, če je True, izpusti stolpec, uporabljen za indeks.
- pripni: Če je True, podani stolpec doda obstoječemu indeksnemu stolpcu.
- na mestu: Če je True, se spremembe izvedejo v samem DataFrame.
- verify_integrity: Če je True, preveri, ali so v novem indeksnem stolpcu dvojniki.
Kaj je Pandas DataFrame.set_index()?
Podatkovni okvir Pandas. set_index() metoda se uporablja za dodelitev seznama, serije ali drugega podatkovnega okvira kot indeksa danega podatkovnega okvira. Še posebej je uporaben pri kombiniranju več podatkovnih okvirov, kar omogoča enostavno spreminjanje indeksa. Medtem ko je stolpec indeksa mogoče določiti med ustvarjanjem podatkovnega okvira, set_index() ponuja prilagodljiv način za kasnejšo spremembo indeksa. V bistvu vam omogoča, da nastavite seznam, serijo ali podatkovni okvir kot indeks podatkovnega okvira. Toda včasih je podatkovni okvir sestavljen iz dveh ali več podatkovnih okvirov, zato je kasnejši indeks mogoče spremeniti s to metodo.
Za prenos uporabljene datoteke CSV kliknite Tukaj.
Pandas DataFrame.set_index() Primeri
Spodaj so ustrezne ilustracije primerov za Pandas DataFrame.set_index().
- Pandas Nastavite indeks na stolpec
- Stolpec z več indeksi
- Nastavitev singla Plavajoči stolpec kot indeks
- Nastavitev trije stolpci kot MultiIndex
- Pandas nastavi indeks določenega stolpca
Pandas Nastavite indeks na stolpec
V tem primeru spreminjamo indeksni stolpec, stolpec Ime je postal indeksni stolpec podatkovnega okvira.
Python3
# importing pandas package> import> pandas as pd> # making data frame from csv file> data> => pd.read_csv(> 'employees.csv'> )> # setting first name as index column> data.set_index(> 'First Name'> , inplace> => True> )> # display> data.head()> |
>
>
Izhod : Pred operacijo –
Po operaciji –
Kot je prikazano na izhodnih slikah, je bil prej indeksni stolpec niz številk, pozneje pa je bil nadomeščen z imenom.
Pandas Nastavite indeks na stolpec z več indeksi
V tem primeru bosta dva stolpca narejena kot indeksni stolpec. Parameter Drop se uporablja za izbris stolpca, parameter append pa se uporablja za dodajanje posredovanih stolpcev že obstoječemu stolpcu indeksa.
Python3
# importing pandas package> import> pandas as pd> # making data frame from csv file> data> => pd.read_csv(> 'employees.csv'> )> # setting first name as index column> data.set_index([> 'First Name'> ,> 'Gender'> ], inplace> => True> ,> > append> => True> , drop> => False> )> # display> data.head()> |
niz nizov c programiranje
>
>
Izhod:
Kot je prikazano na izhodni sliki, imajo podatki 3 indeksne stolpce.
Pandas Dataframe Index Nastavitev ene same Plavajoči stolpec kot indeks
V tem primeru spodnji delček kode uporablja knjižnico Pandas za ustvarjanje DataFrame z imenom 'df' iz ugnezdenega seznama podatkov študentov. Nastavi stolpec »Agg_Marks« kot indeks in prikaže nastali DataFrame s stolpci »Ime«, »Starost«, »Mesto« in »Država«.
Python3
# importing pandas library> import> pandas as pd> # creating and initializing a nested list> students> => [[> 'jack'> ,> 34> ,> 'Sydeny'> ,> 'Australia'> ,> 85.96> ],> > [> 'Riti'> ,> 30> ,> 'Delhi'> ,> 'India'> ,> 95.20> ],> > [> 'Vansh'> ,> 31> ,> 'Delhi'> ,> 'India'> ,> 85.25> ],> > [> 'Nanyu'> ,> 32> ,> 'Tokyo'> ,> 'Japan'> ,> 74.21> ],> > [> 'Maychan'> ,> 16> ,> 'New York'> ,> 'US'> ,> 99.63> ],> > [> 'Mike'> ,> 17> ,> 'las vegas'> ,> 'US'> ,> 47.28> ]]> # Create a DataFrame object> df> => pd.DataFrame(students,> > columns> => [> 'Name'> ,> 'Age'> ,> 'City'> ,> 'Country'> ,> 'Agg_Marks'> ],> > index> => [> 'a'> ,> 'b'> ,> 'c'> ,> 'd'> ,> 'e'> ,> 'f'> ])> # here we set Float column 'Agg_Marks' as index of data frame> # using dataframe.set_index() function> df> => df.set_index(> 'Agg_Marks'> )> # Displaying the Data frame> df> |
>
>
Izhod:
Name Age City Country Agg_Marks 85.96 jack 34 Sydeny Australia 95.20 Riti 30 Delhi India 85.25 Vansh 31 Delhi India 74.21 Nanyu 32 Tokyo Japan 99.63 Maychan 16 New York US 47.28 Mike 17 las vegas US>
V zgornjem primeru smo nastavili stolpec ' Agg_Marks ' kot indeks podatkovnega okvira.
Nastavitev indeksa podatkovnega okvira Pandas trije stolpci kot MultiIndex
V tem primeru spodnja koda uporablja Pandas za ustvarjanje DataFrame 'df' iz podatkov študentov s stolpci 'Name', 'Age', 'City', 'Country', 'Agg_Marks' in 'ID'. Uporablja funkcijo `set_index()` za vzpostavitev indeksa na več ravneh z uporabo 'Ime', 'Mesto' in 'ID', nato pa prikaže nastali podatkovni okvir.
Python3
# importing pandas library> import> pandas as pd> # creating and initializing a nested list> students> => [[> 'jack'> ,> 34> ,> 'Sydeny'> ,> 'Australia'> ,> 85.96> ,> 400> ],> > [> 'Riti'> ,> 30> ,> 'Delhi'> ,> 'India'> ,> 95.20> ,> 750> ],> > [> 'Vansh'> ,> 31> ,> 'Delhi'> ,> 'India'> ,> 85.25> ,> 101> ],> > [> 'Nanyu'> ,> 32> ,> 'Tokyo'> ,> 'Japan'> ,> 74.21> ,> 900> ],> > [> 'Maychan'> ,> 16> ,> 'New York'> ,> 'US'> ,> 99.63> ,> 420> ],> > [> 'Mike'> ,> 17> ,> 'las vegas'> ,> 'US'> ,> 47.28> ,> 555> ]]> # Create a DataFrame object> df> => pd.DataFrame(students,> > columns> => [> 'Name'> ,> 'Age'> ,> 'City'> ,> 'Country'> ,> 'Agg_Marks'> ,> 'ID'> ],> > index> => [> 'a'> ,> 'b'> ,> 'c'> ,> 'd'> ,> 'e'> ,> 'f'> ])> # Here we pass list of 3 columns i.e 'Name', 'City' and 'ID'> # to dataframe.set_index() function> # to set them as multiIndex of dataframe> df> => df.set_index([> 'Name'> ,> 'City'> ,> 'ID'> ])> # Displaying the Data frame> df> |
seja je potekla
>
>
Izhod:
Age Country Agg_Marks Name City ID jack Sydeny 400 34 Australia 85.96 Riti Delhi 750 30 India 95.20 Vansh Delhi 101 31 India 85.25 Nanyu Tokyo 900 32 Japan 74.21 Maychan New York 420 16 US 99.63 Mike las vegas 555 17 US 47.28>
V zgornjem primeru smo nastavili stolpce ' Ime ', ' Mesto ', in ' ID ' kot multiIndex podatkovnega okvira.
Pandas nastavi indeks določenega stolpca
V tem primeru spodnja koda prikazuje, kako uporabiti Pandas za ustvarjanje DataFrame, nastavite določen stolpec ('Ime' v tem primeru) kot indeks z uporaboset_index()>
in nato prikaže izvirni in spremenjeni DataFrames. Theinplace=True>
parameter zagotavlja, da se spremembe uporabijo neposredno v DataFrame brez potrebe po ponovni dodelitvi.
Python3
import> pandas as pd> # Creating a sample DataFrame> data> => {> 'Name'> : [> 'Geek1'> ,> 'Geek2'> ,> 'Geek3'> ],> > 'Age'> : [> 25> ,> 30> ,> 35> ],> > 'City'> : [> 'New York'> ,> 'San Francisco'> ,> 'Los Angeles'> ]}> df> => pd.DataFrame(data)> # Displaying the original DataFrame> print> (> 'Original DataFrame:'> )> print> (df)> # Using set_index() to set 'Name' column as the index> df.set_index(> 'Name'> , inplace> => True> )> # Displaying the DataFrame after setting the index> print> (> '
DataFrame after set_index:'> )> print> (df)> |
>
>
Izhod:
Original DataFrame: Name Age City 0 Geek1 25 New York 1 Geek2 30 San Francisco 2 Geek3 35 Los Angeles DataFrame after set_index: Age City Name Geek1 25 New York Geek2 30 San Francisco Geek3 35 Los Angeles>