seleccionar data create crear columnas array python pandas numpy

data - pandas python



Creación de un DataFrame de Pandas a partir de una matriz Numpy: ¿cómo especifico la columna de índice y los encabezados de columna? (2)

Estoy de acuerdo con Joris; parece que deberías estar haciendo esto de manera diferente, como con los arreglos de grabación numpy . Modificando la "opción 2" de esta gran respuesta , podrías hacerlo así:

import pandas import numpy dtype = [(''Col1'',''int32''), (''Col2'',''float32''), (''Col3'',''float32'')] values = numpy.zeros(20, dtype=dtype) index = [''Row''+str(i) for i in range(1, len(values)+1)] df = pandas.DataFrame(values, index=index)

Tengo una matriz Numpy que consiste en una lista de listas, que representa una matriz 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 tenga Row1 y Row2 como valores de índice, y Col1, Col2 como valores de encabezado

Puedo especificar el índice de la siguiente manera:

df = pd.DataFrame(data,index=data[:,0]),

sin embargo, no estoy seguro de cómo asignar mejor los encabezados de columna.


DataFrame especificar data , index y columns al constructor de DataFrame , como en:

>>> pd.DataFrame(data=data[1:,1:], # values ... index=data[1:,0], # 1st column as index ... columns=data[0,1:]) # 1st row as the column names

editar : como en el comentario de @joris, es posible que necesite cambiar a np.int_(data[1:,1:]) arriba para tener el tipo de datos correcto.