Creación de un DataFrame de Pandas a partir de un array de Numpy: ¿Cómo especifico la columna índice y las cabeceras de las columnas?
Tengo un array Numpy que consiste en una lista de listas, representando un array bidimensional con etiquetas de fila y nombres de columna como se muestra a continuación:
data = array([['','Col1','Col2'],['Row1',1,2],['Row2',3,4]])
Me gustaría que el DataFrame resultante tuviera Row1 y Row2 como valores de índice, y Col1, Col2 como valores de cabecera
Puedo especificar el índice de la siguiente manera
df = pd.DataFrame(data,index=data[:,0]),
sin embargo, no estoy seguro de la mejor manera de asignar los encabezados de las columnas.
229
3
Tienes que especificar
data
,index
ycolumnas
al constructorDataFrame
, como en:edit: como en el comentario de @joris, puede que tengas que cambiar lo anterior por
np.int_(data[1:,1:])
para tener el tipo de datos correcto.He aquí una solución fácil de entender
Estoy de acuerdo con Joris; parece que deberías hacerlo de otra manera, como con numpy record arrays. Modificando "la opción 2" de esta gran respuesta, podrías hacerlo así: