R: Ogólne spłaszczanie JSON do data.frame

To pytanie dotyczy ogólnego mechanizmu konwertowania dowolnej kolekcji niecyklicznych jednorodnych lub heterogenicznych struktur danych na ramkę danych. Może to być szczególnie przydatne w przypadku pobierania wielu dokumentów JSON lub dużego dokumentu JSON, który jest tablicą słowników.

Istnieje kilka pytań dotyczących SO, które dotyczą manipulowania głęboko zagnieżdżonymi strukturami JSON i przekształcania ich w ramki danych przy użyciu funkcji takich jakplyr, lapplyitd. Wszystkie znalezione przeze mnie pytania i odpowiedzi dotyczą konkretnych przypadków, a nie ogólnego podejścia do obsługi zbiorów złożonych struktur danych JSON.

W Python i Ruby byłem dobrze obsłużony przez zaimplementowanie ogólnego narzędzia do spłaszczania struktury danych, które wykorzystuje ścieżkę do węzła liścia w strukturze danych jako nazwę wartości w tym węźle w spłaszczonej strukturze danych. Na przykład wartośćmy_data[['x']][[2]][['y']] pojawi się jakoresult[['x.2.y']].

Jeśli ktoś ma kolekcję tych struktur danych, które mogą nie być całkowicie jednorodne, kluczem do pomyślnego spłaszczenia do ramki danych byłoby odkrycie nazw wszystkich możliwych kolumn ramek danych, np. Przez połączenie wszystkich kluczy / nazw wartości w indywidualnie spłaszczonych strukturach danych.

Wydaje się, że jest to wspólny wzór i dlatego zastanawiam się, czy ktoś już to zbudował dla R. Jeśli nie, zbuduję go, ale biorąc pod uwagę unikalne struktury danych oparte na obietnicach R, doceniłbym poradę dotyczącą podejścia implementacyjnego minimalizuje hałas sterty.

questionAnswers(4)

yourAnswerToTheQuestion