Crea un árbol json desde la lista csv en python
Estoy tratando de construir una jerarquía json a partir de una tabla simple en python.
Los datos vienen en el siguiente aspecto:
id parent name
1 10 test-name-1
2 10 test-name-2
3 5 test-name-3
4 none test-name-4
5 10 test-name-5
6 none test-name-6
7 1 test-name-7
8 1 test-name-8
9 8 test-name-9
10 4 test-name-10
y estoy buscando una salida como esta:
{"$4":{"name":"test-name-4","children":{
"$10":{"name":"test-name-10","children":{
"$1":{"name":"test-name-1","children":{
"$7":{"name":"test-name-7","children":{}},
"$8":{"name":"test-name-8","children":{
"$9":{"name":"test-name-9","children":{}}}}}},
"$2":{"name":"test-name-2","children":{}},
"$5":{"name":"test-name-5","children":{
"$3":{"name":"test-name-3","children":{}}}}}}}},
"$6":{"name":"test-name-6","children":"test-name-6"}}
No tengo idea de cuántas "hojas" habrá o "raíces", o en qué orden entrarán las filas del csv. Mi pregunta es, ¿hay alguna manera de poder recursivamente crear un diccionario / lista desde un nodo secundario? hasta el padre? ¿Cómo puedo producir un árbol jerárquico a partir de las piezas de "hoja" del árbol en python?
¡Gracias por la ayuda!