En este artículo, analizaremos Pandas DataFrame.set_index() en Python. Pitón destaca como un lenguaje excelente para el análisis de datos, en gran parte debido a su excelente ecosistema de paquetes centrados en datos. Entre estos paquetes, pandas juega un papel importante en la simplificación de la importación y el análisis de datos.
Sintaxis de Pandas DataFrame.set_index()
Sintaxis: DataFrame.set_index (claves, soltar = Verdadero, agregar = Falso, inplace = Falso, verificar_integridad = Falso)
Parámetros:
- llaves: Nombre de columna o una lista de nombres de columnas.
- gota: Un valor booleano que, si es Verdadero, elimina la columna utilizada para el índice.
- adjuntar: Si es Verdadero, agrega la columna especificada a la columna de índice existente.
- en su lugar: Si es Verdadero, los cambios se realizan en el propio DataFrame.
- Verificar integridad: Si es Verdadero, busca duplicados en la nueva columna de índice.
¿Qué es Pandas DataFrame.set_index()?
El marco de datos de Pandas. establecer_índice() El método se utiliza para asignar una lista, serie u otro marco de datos como índice de un marco de datos determinado. Es particularmente útil cuando se combinan múltiples marcos de datos, lo que permite modificar fácilmente el índice. Si bien se puede especificar una columna de índice durante la creación del marco de datos, set_index() proporciona una forma flexible de cambiar el índice más adelante. En esencia, le permite configurar una lista, una serie o un marco de datos como índice de un marco de datos. Pero a veces un marco de datos está formado por dos o más marcos de datos y, por lo tanto, el índice posterior se puede cambiar utilizando este método.
Para descargar el archivo CSV utilizado, haga clic en Aquí.
Ejemplos de Pandas DataFrame.set_index()
A continuación se muestran ilustraciones adecuadas de los ejemplos de Pandas DataFrame.set_index().
- Pandas establece el índice en la columna
- Columna de índice múltiple
- Establecer un solo Columna flotante como índice
- Configuración tres columnas como Índice múltiple
- Pandas establece el índice de una columna específica
Pandas establece el índice en la columna
En este ejemplo, estamos cambiando la columna de índice, la columna de nombre se ha convertido en la columna de índice del marco de datos.
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()> |
>
>
np significa
Producción : Antes de la operación –
Después de la operación –
Como se muestra en las imágenes de salida, antes la columna de índice era una serie de números, pero luego fue reemplazada por el nombre.
Pandas establece el índice en una columna de índice múltiple
En este ejemplo, se crearán dos columnas como columna de índice. El parámetro Eliminar se usa para eliminar la columna y el parámetro Agregar se usa para agregar columnas pasadas a la columna de índice ya existente.
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()> |
c número aleatorio
>
>
Producción:
Como se muestra en la imagen de salida, los datos tienen 3 columnas de índice.
Índice de marco de datos de Pandas Estableciendo un único Columna flotante como índice
En este ejemplo, el siguiente fragmento de código utiliza la biblioteca Pandas para crear un DataFrame llamado 'df' a partir de una lista anidada de datos de estudiantes. Establece la columna 'Agg_Marks' como índice y muestra el DataFrame resultante con las columnas 'Nombre', 'Edad', 'Ciudad' y 'País'.
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> |
>
>
Producción :
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>
En el ejemplo anterior, configuramos la columna ' marcas_agg 'como índice del marco de datos.
Configuración del índice del marco de datos de Pandas tres columnas como Índice múltiple
En este ejemplo, el siguiente código utiliza Pandas para crear un DataFrame 'df' a partir de los datos de los estudiantes, con las columnas 'Nombre', 'Edad', 'Ciudad', 'País', 'Agg_Marks' e 'ID'. Emplea la función `set_index()` para establecer un índice de varios niveles usando “Nombre”, “Ciudad” e “ID”, y luego muestra el DataFrame resultante.
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> |
tipos de bucle for
>
>
Producción :
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>
En el ejemplo anterior, configuramos las columnas ' Nombre ‘, ‘ Ciudad ', y ' IDENTIFICACIÓN 'como índice múltiple del marco de datos.
Pandas establece el índice de una columna específica
En este ejemplo, el siguiente código demuestra cómo usar Pandas para crear un DataFrame, establezca una columna específica ('Nombre' en este caso) como índice usando elset_index()>
y luego muestra los DataFrames originales y modificados. Elinplace=True>
El parámetro garantiza que los cambios se apliquen directamente al DataFrame sin necesidad de reasignación.
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)> |
>
>
Producción :
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>