you values pass must lists index from_records from dicts dict create all python dictionary pandas dataframe

python - values - pandas dataframe from_records



Convertir la lista de diccionarios a Dataframe (3)

En pandas 16.2, tuve que hacer pd.DataFrame.from_records(d) para que esto funcione.

Tengo una lista de diccionarios como este:

[{''points'': 50, ''time'': ''5:00'', ''year'': 2010}, {''points'': 25, ''time'': ''6:00'', ''month'': "february"}, {''points'':90, ''time'': ''9:00'', ''month'': ''january''}, {''points_h1'':20, ''month'': ''june''}]

y quiero convertir esto en un DataFrame pandas como este:

month points points_h1 time year 0 NaN 50 NaN 5:00 2010 1 february 25 NaN 6:00 NaN 2 january 90 NaN 9:00 NaN 3 june NaN 20 NaN NaN

Nota: El orden de las columnas no importa.

En última instancia, el objetivo es escribir esto en un archivo de texto y esta parece ser la mejor solución que pude encontrar. ¿Cómo puedo convertir la lista de diccionarios en un marco de datos de pandas como se muestra arriba?


Suponiendo que d es tu lista de dictados, simplemente:

pd.DataFrame(d)


También puede usar pd.DataFrame.from_dict(d) como:

In [8]: d = [{''points'': 50, ''time'': ''5:00'', ''year'': 2010}, ...: {''points'': 25, ''time'': ''6:00'', ''month'': "february"}, ...: {''points'':90, ''time'': ''9:00'', ''month'': ''january''}, ...: {''points_h1'':20, ''month'': ''june''}] In [12]: pd.DataFrame.from_dict(d) Out[12]: month points points_h1 time year 0 NaN 50.0 NaN 5:00 2010.0 1 february 25.0 NaN 6:00 NaN 2 january 90.0 NaN 9:00 NaN 3 june NaN 20.0 NaN NaN