HOWTO · Pandas
Establecer columnas como índice en Pandas Dataframe
Este tutorial demuestra cómo establecer columnas como índice en un Pandas DataFrame con la función set_index() y utilizando el parámetro index_col cuando se lee un archivo.
En esta página
Normalmente, en un Pandas DataFrame, tenemos números de serie desde 0 hasta la longitud del objeto como índice por defecto. También podemos hacer que una columna específica de un dataframe sea su índice. Para ello, podemos usar el set_index() proporcionado en pandas, y también podemos especificar el índice de la columna mientras importamos un dataframe de un archivo excel o CSV.
Usando set_index() para hacer la columna como el índice en Pandas DataFrame
set_index() puede aplicarse a listas, series o cuadros de datos para alterar su índice. Para los Dataframes, set_index() también puede hacer múltiples columnas como su índice.
Ejemplo:
import pandas as pd
import numpy as np
colnames = ["Name", "Time", "Course"]
df = pd.DataFrame(
[["Jay", 10, "B.Tech"], ["Raj", 12, "BBA"], ["Jack", 11, "B.Sc"]], columns=colnames
)
print(df)
Resultado:
Name Time Course
0 Jay 10 B.Tech
1 Raj 12 BBA
2 Jack 11 B.Sc
La sintaxis para hacer columnas como índice:
dataframe.set_index(Column_name, inplace=True)
Hacer una sola columna como índice usando set_index():
import pandas as pd
import numpy as np
colnames = ["Name", "Time", "Course"]
df = pd.DataFrame(
[["Jay", 10, "B.Tech"], ["Raj", 12, "BBA"], ["Jack", 11, "B.Sc"]], columns=colnames
)
df.set_index("Name", inplace=True)
print(df)
Resultado:
Time Course
Name
Jay 10 B.Tech
Raj 12 BBA
Jack 11 B.Sc
Hacer varias columnas como índice:
import pandas as pd
import numpy as np
colnames = ["Name", "Time", "Course"]
df = pd.DataFrame(
[["Jay", 10, "B.Tech"], ["Raj", 12, "BBA"], ["Jack", 11, "B.Sc"]], columns=colnames
)
df.set_index(["Name", "Course"], inplace=True)
print(df)
Resultado:
Time
Name Course
Jay B.Tech 10
Raj BBA 12
Jack B.Sc 11
Usando el parámetro index_col en read_excel o read_csv para establecer la columna como el índice en Pandas DataFrame
Mientras leemos un dataframe de un archivo excel o CSV, podemos especificar la columna que queremos como el índice del DataFrame.
Ejemplo:
import pandas as pd
import numpy as np
df = pd.read_excel("data.xlsx", index_col=2)
print(df)
Resultado:
Name Time
Course
B.Tech Mark 12
BBA Jack 10
B.Sc Jay 11