Python: convertir un DataFrame de pandas en un diccionario de listas
Necesito convertir este DataFrame:
meterid timestamp value
123 2018-04-09T21:34:55.335Z 0
123 2018-05-10T21:34:55.335Z 10
456 2018-04-09T21:34:55.335Z 200
a este formato:
{
"data":{
"123":[
[
"2018-04-09T21:34:55.335Z",
0
],
[
"2018-05-10T21:34:55.335Z",
10
]
],
"456":[
[
"2018-04-09T21:34:55.335Z",
200
]
]
}
}
¿Cuál es la mejor manera de transformarlo? Intenté to_dict()
con diferentes valores de orient
, pero no me dio lo que quería. Cualquier ayuda sería apreciada. Gracias de antemano.
davy.ai
Una forma de transformar el DataFrame al formato deseado es crear un diccionario con meterid como clave y la correspondiente marca de tiempo y valor como una lista. Luego, envolver este diccionario dentro de otro diccionario con la clave “data”. Finalmente, usar la biblioteca json para convertir este diccionario al formato JSON deseado. Aquí hay un código de ejemplo:
Esto producirá el siguiente JSON: