2012-04-18 6 views
5

Tengo datos agregados utilizando el marco de datos de pandas. A continuación se muestran algunos datos reales que se muestran y cómo los agregué.datos agregados pandas a una matriz numpy: conversión de estructura de datos

fdf.groupby(['row',col'])['percent'].sum()

http://pastebin.com/R8XWpgtU

Lo que me gustaría hacer es crear una matriz numpy 2d de esta (= filas fila, columnas = col). ¿Alguna forma ingeniosa de hacer esto?

Otra forma hice algo similar fue crear una tabla dinámica

pivot_table(fdf,values='percent',rows='row',cols='col', aggfunc=np.sum)

En este caso quiero convertir esta tabla dinámica a 2d gama numpy. ¿Hay alguna manera de indexar en cada celda de esta tabla? Si es así, probablemente esté bien con la mesa en sí.

Respuesta

6

Probar:

result = fdf.groupby(['row',col'])['percent'].sum() 
result.unstack('col').values 

alternativa:

fdf.pivot_table('percent', rows='row', cols='col', aggfunc='sum').values 
Cuestiones relacionadas