Câu hỏi này là về cơ chế chung để chuyển đổi bất kỳ tập hợp các cấu trúc dữ liệu không đồng nhất hoặc không đồng nhất vào một khung dữ liệu. Điều này có thể đặc biệt hữu ích khi xử lý việc nhập nhiều tài liệu JSON hoặc với một tài liệu JSON lớn, là một mảng từ điển.R: Làm phẳng JSON chung thành dữ liệu.frame
Có một số câu hỏi SO xử lý thao tác cấu trúc JSON lồng nhau sâu và chuyển chúng thành các khung dữ liệu sử dụng chức năng như plyr
, lapply
, v.v. cách tiếp cận để xử lý các tập hợp các cấu trúc dữ liệu JSON phức tạp. Trong Python và Ruby, tôi đã được phục vụ tốt bằng cách triển khai một tiện ích phẳng cấu trúc dữ liệu chung sử dụng đường dẫn đến nút lá trong cấu trúc dữ liệu làm tên của giá trị tại nút đó trong cấu trúc dữ liệu phẳng. Ví dụ: giá trị my_data[['x']][[2]][['y']]
sẽ xuất hiện dưới dạng result[['x.2.y']]
.
Nếu một bộ sưu tập các cấu trúc dữ liệu này có thể không hoàn toàn đồng nhất, thì để khám phá tên của tất cả các cột dataframe có thể, ví dụ bằng cách lấy tất cả các khóa/tên của các giá trị trong các cấu trúc dữ liệu được làm phẳng riêng lẻ.
Điều này có vẻ giống như một mô hình phổ biến và vì vậy tôi tự hỏi liệu có ai đó đã xây dựng nó cho R. Nếu không, tôi sẽ xây dựng nó, nhưng với cấu trúc dữ liệu dựa trên lời hứa duy nhất của R, tôi đánh giá cao lời khuyên một cách tiếp cận thực hiện để giảm thiểu sự heap thrashing.
Huh? Quá nhiều tiếng Anh cho tôi (dù sao) để hiểu. Đề nghị cung cấp một số đầu vào có thể tái sản xuất với một số (có lẽ) mã chậm tạo ra kết quả bạn muốn và đi từ đó. Có lẽ chỉ là tôi không biết JSON. Bạn có thể cung cấp thứ gì đó có thể dán vào một phiên R mới để tải xuống một số dữ liệu JSON từ đâu đó để chứng minh câu hỏi của bạn không? [Làm thế nào để tạo ra một ví dụ tái sản xuất tốt] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) –