R 如何将df转换为数字为数字的json文件
我正在尝试将数据帧转换为json格式。这是我的数据帧,称为x:R 如何将df转换为数字为数字的json文件,r,R,我正在尝试将数据帧转换为json格式。这是我的数据帧,称为x: structure(list(Desc = c("Web", "Mobile", "TV", "Store"), Total = c(223786915, 42053151, 232299534, 26317530), Name = c("Total Login", "Total Login", "Total Login", "Total Login")), .Names = c("Desc", "Total", "Name"
structure(list(Desc = c("Web", "Mobile", "TV", "Store"), Total = c(223786915,
42053151, 232299534, 26317530), Name = c("Total Login", "Total Login",
"Total Login", "Total Login")), .Names = c("Desc", "Total", "Name"
), row.names = c(NA, 4L), class = "data.frame")
这就是功能:
servers <- split(x,x$Name)
dumFun <- function(x){
sData <- servers[x][[1]]
if(nrow(sData) >0){
# create appropriate list
dumList <- unname(apply(sData[,c(1,as.numeric(2))], 1, function(y) unname(as.list(y))))
return(toJSON(list(name = x, data = dumList)))
}
}
jsData <- lapply(names(servers), dumFun)
jsInd <- sapply(jsData, is.null)
p<-paste(jsData[!jsInd], collapse = ',')
p<-paste('[', p, ']')
serversjsonlite
做你想做的事吗
例如,您可以执行jsonlite::toJSON(x)
res
res <- jsonlite::toJSON(x, pretty=TRUE)
cat(res)
[
{
"Desc" : "Web",
"Total" : 223786915,
"Name" : "Total Login"
},
{
"Desc" : "Mobile",
"Total" : 42053151,
"Name" : "Total Login"
},
{
"Desc" : "TV",
"Total" : 232299534,
"Name" : "Total Login"
},
{
"Desc" : "Store",
"Total" : 26317530,
"Name" : "Total Login"
}
]