2
考慮一個基本上爲矩形的數據的嵌套列表。嵌套列表到數據框並返回到嵌套列表
mylst1 <- list(
"system" = list(
"subjectId" = c(101,102,103),
"procedureId" = c(202,202,203)
),
"demographics" = list(
"demo_age" = c(12,22,32),
"demo_gender" = c(1,0,1)
),
"items" = list(
"N" = list(
"n001" = c(1,2,3),
"n002" = c(3,2,1)
),
"E" = list(
"e001" = c(1,2,3),
"e002" = c(3,2,1)
)
)
)
因爲嵌套列表是尷尬的工作,讓我們創建一個數據幀: myDf <- data.frame(mylst1)
到目前爲止好,現在我可以myDf
執行我的所有操作。我們假設我只是過濾了一些觀察結果。問題是,我需要返回相同的嵌套表結構所要求的網絡應用程序,我想送這個數據,但現在當然的數據是這樣的:
> str(myDf)
'data.frame': 3 obs. of 8 variables:
$ system.subjectId : num 101 102 103
$ system.procedureId : num 202 202 203
$ demographics.demo_age : num 12 22 32
$ demographics.demo_gender: num 1 0 1
$ items.N.n001 : num 1 2 3
$ items.N.n002 : num 3 2 1
$ items.E.e001 : num 1 2 3
$ items.E.e002 : num 3 2 1
什麼是最好的解決辦法以原始列表格式獲取這些數據?我正在考慮使用.
作爲每個級別的分隔符,但我不確定如何在實踐中做到這一點。
感謝
一個主要的警告(我相信)是數量myDF中的元素不能更改(不添加或刪除行)。第二個潛在問題是'unlist'會將所有元素強制爲相同類型。 – lmo
@lmo是的,這是對的,我加了關於同一類的假設 – akrun
謝謝!我不知道'relist()'!正如lmo指出的那樣,問題是我現在無法添加或刪除案例。這裏有工作嗎? –