R: Achatamento genérico de JSON para data.frame

Esta questão é sobre um mecanismo genérico para converter qualquer coleção de estruturas de dados não-cíclicas homogêneas ou heterogêneas em um dataframe. Isso pode ser particularmente útil ao lidar com a ingestão de muitos documentos JSON ou com um documento JSON grande que é uma matriz de dicionários.

Há várias perguntas sobre SO que tratam da manipulação de estruturas JSON profundamente aninhadas e as transformam em quadros de dados usando funcionalidades comoplyr, lapplyTodas as perguntas e respostas que eu encontrei são sobre casos específicos em oposição a oferecer uma abordagem geral para lidar com coleções de estruturas de dados JSON complexas.

Em Python e Ruby, fui bem-sucedido ao implementar um utilitário genérico de nivelamento de estrutura de dados que usa o caminho para um nó folha em uma estrutura de dados como o nome do valor nesse nó na estrutura de dados nivelada. Por exemplo, o valormy_data[['x']][[2]][['y']] apareceria comoresult[['x.2.y']].

Se tivermos uma coleção dessas estruturas de dados que podem não ser totalmente homogêneas, a chave para fazer um achatamento bem-sucedido em um dataframe seria descobrir os nomes de todas as possíveis colunas de dataframe, por exemplo, unindo todas as chaves / nomes dos dados. valores nas estruturas de dados aplainadas individualmente.

Isso parece um padrão comum e, por isso, estou pensando se alguém já construiu isso para R. Se não, eu construí-lo-ei, mas, dadas as estruturas de dados baseadas em promessas exclusivas de R, gostaria de receber conselhos sobre uma abordagem de implementação que minimiza a sobrecarga do heap.

questionAnswers(4)

yourAnswerToTheQuestion