我想從data.frame
格式使用R
中的jsonlite包得到一個嵌套的對象數組(JSON)。讓我舉一個例子如何從一個數據框創建一個嵌套的對象數組
library(jsonlite)
time <- c(1,1,2,2)
ps <- c("p1","p2","p1","p2")
v1 <- c(5,6,7,8)
v2 <- c(10,11,12,13)
df <- data.frame(ps, v1,v2)
toJSON(df)
這裏df
是R
數據幀和我得到的JSON格式的對象數組:
[{"ps":"p1","v1":5,"v2":10},
{"ps":"p2","v1":6,"v2":11},
{"ps":"p1","v1":7,"v2":12},
{"ps":"p2","v1":8,"v2":13}]
不過,我想實現下面的輸出,其中基本上我有一個嵌套的結構。添加類似的另一組參數(時間)在這裏,df
以長格式看起來像
df2 <- data.frame(time,ps, v1,v2)
這是
df2
time ps v1 v2
1 1 p1 5 10
2 1 p2 6 11
3 2 p1 7 12
4 2 p2 8 13
我的最終輸出我想實現(以JSON)格式
[{
"time": "1"
"all_ps":[
{
"ps":"p1",
"v1":5,
"v2":10
},
{
"ps":"p2",
"v1":6,
"v2":11
}]
},
{
"time": "2"
"all_ps":[
{
"ps":"p1",
"v1":5,
"v2":10
},
{
"ps":"p2",
"v1":6,
"v2":11
}]
}
]
其中all_ps
就像一個額外的結構或分組。給出了這個all_ps
,但是我不知道如何將它添加到數據幀中以獲得所需的輸出。如何使用jsonlite在R
中實現此目的?
我可以問你我怎麼可以調整,使得數字代碼調用toJson之後值不會用雙引號引起來?即「v2」:11而不是「v2」:「11」 – math
目前無權訪問R。 data.frame是否已經在正確的數據類型中?如果已經存在,您可能需要明確構建您的all_ps。 – chinsoon12