logo

Python | Pandas DataFrame.set_index()

I den här artikeln kommer vi att diskutera Pandas DataFrame.set_index() i Python. Pytonorm framstår som ett utmärkt språk för dataanalys, till stor del på grund av dess enastående ekosystem av datacentrerade paket. Bland dessa paket, Pandas spelar en viktig roll för att förenkla import och analys av data.

Pandas DataFrame.set_index() Syntax

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

Parametrar:



  • nycklar: Kolumnnamn eller en lista med kolumnnamn.
  • släppa: Ett booleskt värde som, om det är sant, tar bort kolumnen som används för indexet.
  • bifoga: Om sant, läggs den angivna kolumnen till den befintliga indexkolumnen.
  • på plats: Om det är sant, görs ändringarna i själva DataFrame.
  • verify_integrity: Om det är sant, kontrollerar den nya indexkolumnen för dubbletter.

Vad är Pandas DataFrame.set_index()?

Pandas dataram. set_index() metod används för att tilldela en lista, serie eller annan dataram som index för en given dataram. Det är särskilt användbart när du kombinerar flera dataramar, vilket möjliggör enkel modifiering av indexet. Medan en indexkolumn kan specificeras under skapandet av en dataram, erbjuder set_index() ett flexibelt sätt att ändra indexet senare. I huvudsak låter det dig ställa in en lista, serie eller dataram som index för en dataram. Men ibland är en dataram gjord av två eller flera dataramar och därför kan senare index ändras med denna metod.

För att ladda ner den använda CSV-filen, klicka Här.

Pandas DataFrame.set_index() Exempel

Nedan är korrekta illustrationer av exemplen för Pandas DataFrame.set_index().

  • Panda ställer in index på kolumn
  • Flera indexkolumn
  • Att sätta en singel Flytpelare som index
  • Miljö tre kolumner som MultiIndex
  • Pandas Set Index of Specific Column

Panda ställer in index på kolumn

I det här exemplet ändrar vi indexkolumnen, kolumnen Förnamn har gjorts till indexkolumnen för Data Frame.

Python3




hur man hittar blockerade nummer på Android

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

>

>

Produktion : Före operation –

Efter operationen –

Som visas i utdatabilderna var indexkolumnen tidigare en serie av nummer men senare har den ersatts med Förnamn.

Panda ställer in index på flera indexkolumner

I det här exemplet kommer två kolumner att göras som indexkolumn. Släppparametern används för att släppa kolumnen och läggparametern används för att lägga till passerade kolumner till den redan befintliga indexkolumnen.

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

>

>

Produktion:

Som visas i utdatabilden har data 3 indexkolumner.

Pandas Dataframe Index Ställa in en singel Flytpelare som index

I det här exemplet använder kodavsnittet nedan Pandas-biblioteket för att skapa en DataFrame med namnet 'df' från en kapslad lista med elevdata. Den ställer in kolumnen 'Agg_Marks' som index och visar den resulterande DataFrame med kolumnerna 'Namn', 'Ålder', 'Stad' och '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>

>

>

Utgång:

 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 exemplet ovan ställer vi in ​​kolumnen ' Agg_Marks ' som ett index för dataramen.

Pandas Dataframe Index Inställning tre kolumner som MultiIndex

I det här exemplet använder koden nedan Pandas för att skapa en DataFrame 'df' från elevdata, med kolumnerna 'Namn', 'Ålder', 'Stad', 'Land', 'Agg_Marks' och 'ID'. Den använder funktionen `set_index()` för att upprätta ett index på flera nivåer med 'Namn', 'Stad' och 'ID', och visar sedan den resulterande 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>

>

>

Utgång:

 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 exemplet ovan ställer vi in ​​kolumnerna ' namn ', ' Stad ', och' ID ' som multiindex för dataramen.

Pandas Set Index of Specific Column

I det här exemplet visar koden nedan hur man använder Pandas för att skapa en DataFrame, ställ in en specifik kolumn ('Namn' i det här fallet) som index med hjälp avset_index()>metod och visar sedan både den ursprungliga och modifierade DataFrames. Deinplace=True>parametern säkerställer att ändringarna tillämpas direkt på DataFrame utan behov av omtilldelning.

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

>

>

Utgång:

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>