logo

Python | Pandas DataFrame.set_index()

I denne artikkelen vil vi diskutere Pandas DataFrame.set_index() i Python. Python skiller seg ut som et utmerket språk for dataanalyse, hovedsakelig på grunn av dets enestående økosystem av datasentriske pakker. Blant disse pakkene, Pandaer spiller en betydelig rolle i å forenkle import og analyse av data.

Pandas DataFrame.set_index() Syntaks

Syntaks: DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)

Parametere:



  • nøkler: Kolonnenavn eller en liste over kolonnenavn.
  • miste: En boolsk verdi som, hvis True, dropper kolonnen som brukes for indeksen.
  • legge til: Hvis True, legger den angitte kolonnen til den eksisterende indekskolonnen.
  • på plass: Hvis True, gjøres endringene i selve DataFrame.
  • verify_integrity: Hvis True, sjekker den nye indekskolonnen for duplikater.

Hva er Pandas DataFrame.set_index() ?

Pandas dataramme. set_index() metoden brukes til å tilordne en liste, serie eller en annen dataramme som indeksen til en gitt dataramme. Det er spesielt nyttig når du kombinerer flere datarammer, noe som gjør det enkelt å endre indeksen. Mens en indekskolonne kan spesifiseres under opprettelse av dataramme, gir set_index() en fleksibel måte å endre indeksen på senere. I hovedsak lar den deg angi en liste-, serie- eller dataramme som indeksen til en dataramme. Men noen ganger er en dataramme laget av to eller flere datarammer, og senere kan indeksen endres ved hjelp av denne metoden.

For å laste ned CSV-filen som brukes, klikk Her.

Pandas DataFrame.set_index() Eksempler

Nedenfor er riktige illustrasjoner av eksemplene for Pandas DataFrame.set_index().

  • Pandaer Sett Indeks til Kolonne
  • Flere indekskolonne
  • Setter en singel Flytende kolonne som indeks
  • Innstilling tre kolonner som Multiindeks
  • Pandas Set Index of Specific Column

Pandaer Sett Indeks til Kolonne

I dette eksemplet endrer vi indekskolonnen, Fornavn-kolonnen har blitt gjort til indekskolonnen i Data Frame.

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

>

>

Produksjon : Før operasjon –

Etter operasjonen –

Som vist i utdatabildene var indekskolonnen tidligere en serie med tall, men senere har den blitt erstattet med Fornavn.

Pandaer Sett Index til Multiple Index Column

I dette eksemplet vil to kolonner bli laget som indekskolonne. Slipp-parameter brukes til å slette kolonnen og legg til parameter brukes til å legge til beståtte kolonner til den allerede eksisterende indekskolonnen.

Python3


annet hvis java



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

>

>

Produksjon:

Som vist i utdatabildet har dataene 3 indekskolonner.

Pandas Dataframe Index Sette en singel Flytende kolonne som indeks

I dette eksemplet bruker kodebiten nedenfor Pandas-biblioteket til å lage en DataFrame kalt 'df' fra en nestet liste over elevdata. Den setter 'Agg_Marks'-kolonnen som indeksen og viser den resulterende DataFrame med kolonnene 'Navn', 'Alder', 'By' og 'Land'.

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>

>

>

Utgang:

 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>

I eksemplet ovenfor setter vi kolonnen ' Agg_Marks ' som en indeks av datarammen.

Pandas datarammeindeksinnstilling tre kolonner som Multiindeks

I dette eksemplet bruker koden nedenfor Pandaer til å lage en DataFrame 'df' fra elevdata, med kolonnene 'Navn', 'Alder', 'By', 'Land', 'Agg_Marks' og 'ID'. Den bruker funksjonen 'set_index()' for å etablere en indeks på flere nivåer ved å bruke 'Navn', 'By' og 'ID', og viser deretter den resulterende DataFrame.

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>

>

>

Utgang:

 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>

I eksemplet ovenfor setter vi kolonnene ' Navn ', ' By ', og ' ID ' som multiindeks for datarammen.

Pandas Set Index of Specific Column

I dette eksemplet viser koden nedenfor hvordan du bruker Pandas til å lage en DataFrame, angi en spesifikk kolonne ('Navn' i dette tilfellet) som indeksen ved å brukeset_index()>metoden, og viser deretter både de originale og modifiserte DataFrames. Deinplace=True>parameter sikrer at endringene blir brukt direkte på DataFrame uten behov for ny tilordning.

Python3




rutenettoppsett

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

>

>

Utgang:

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>