0
mapデータのリストをkeys and valuesに変換しようとしています。しかし、私はそれを変換するために問題に直面して、私は以下のコードで試してみましたが、私は私の要件を満足させていません。R:データフレームからのキー値ペアで出力を生成できません
{
"ResponseCode": [
[
["Choose to and fro flights"],
{
"1": ["200"],
"R_C_seconds": ["15:31:36", "15:31:37"],
"R_C_Count": [9, 1]
}
],
[
["Details"],
{
"1": ["200"],
"R_C_seconds": ["15:31:37", "15:31:38", "15:31:39"],
"R_C_Count": [2, 5, 1]
},
{
"1": ["Non HTTP response code: org.apache.http.NoHttpResponseException"],
"R_C_seconds": ["15:31:37"],
"R_C_Count": [2]
}
]
]
}
しかしIamは、以下に指定でJSON出力を除く:私は上記のコードのため
> df <- data.frame(sec = c('15:31:36',"15:31:37",'15:31:37','15:31:37','15:31:38','15:31:39'),
label = c("Choose to and fro flights","Choose to and fro flights","Details","Details","Details","Details"),
responseCode = c(200,200,200,'Non HTTP response code: org.apache.http.NoHttpResponseException','200','200'),
Counting = c(9,1,2,2,5,1))
> purList1 <- lapply(split(df, df$label), function(x) split(x, x$responseCode,drop = T))
> output <- toJSON(
list(ResponseCode =
lapply(names(purList1),function(x){
ss = purList1[[x]]
tt = lapply(names(ss),function(y){
items = ss[[y]][c("sec","Counting")]
sub = data.frame(R_C_seconds = as.vector(items$sec),
R_C_Count = as.vector(items$Counting)
)
c(as.vector(unlist(data.frame(y))), as.vector(sub))
})
c(as.vector(x), as.vector(tt))
})
)
,pretty = T)
Genereated Optput以下画像におけるショーなどのデータを必要としますフォーマットキー値のペア。
あなたは@yutannihilationありがとうございます。 – user7462639
最初は 'jsonlite :: toJSON(purList1、dataframe =" column "、pretty = TRUE)'を試していますが、 'dataframe'というパラメータを使用していませんので、lenghtyコードを書いています。 そして、上記のコード 'jsonlite :: toJSON(purList1、dataframe =" column "、pretty = TRUE)を使用している場合、'すべての列を取得しますが、 'second、コード。 もう一度ありがとうございます。 – user7462639
私は、それが長いことが妥当であることがわかります。詳細をありがとう:) – yutannihilation