Tengo una hoja de cálculo como esta:
Locality 2005 2006 2007 2008 2009
ABBOTSFORD 427000 448000 602500 600000 638500
ABERFELDIE 534000 600000 735000 710000 775000
AIREYS INLET459000 440000 430000 517500 512500
No quiero intercambiar manualmente la columna con la fila. ¿Podría ser posible usar pandas leyendo datos en una lista como esta:
data['ABBOTSFORD']=[427000,448000,602500,600000,638500]
data['ABERFELDIE']=[534000,600000,735000,710000,775000]
data['AIREYS INLET']=[459000,440000,430000,517500,512500]
Respuestas:
Sí, con set_index puede hacer
Locality
su índice de fila.Si
inplace=True
no se proporciona,set_index
devuelve el marco de datos modificado como resultado.Ejemplo:
fuente
Puede cambiar el índice como ya se explicó usando
set_index
. No necesita intercambiar manualmente filas con columnas, hay undata.T
método transpose ( ) en pandas que lo hace por usted:luego puede obtener los valores de la columna del marco de datos y transformarlos en una lista:
fuente
Puede establecer el índice de la columna usando el parámetro index_col disponible mientras lee una hoja de cálculo en Pandas.
Aquí está mi solución:
En primer lugar, importe pandas como pd:
import pandas as pd
Lea el nombre del archivo usando pd.read_excel () (si tiene sus datos en una hoja de cálculo) y establezca el índice en 'Localidad' especificando el parámetro index_col.
df = pd.read_excel('testexcel.xlsx', index_col=0)
En esta etapa, si obtiene un error 'sin módulo llamado xlrd', instálelo usando
pip install xlrd
.Para una inspección visual, lea el marco de datos
df.head()
que imprimirá el siguiente resultadoAhora puede obtener los valores de las columnas deseadas del marco de datos e imprimirlo
fuente