使用rjsonio将json转换为datatable

时间:2016-09-06 11:19:25

标签: json r jsonlite

我已经通过标准API正确格式化了JSON。

API每次获取数据时,基本上都会返回一个JSON对象数组。

喜欢这个:

[
{}, 
{}, 
{}
]

我使用JSON编辑器检查JSON数据的结构,看起来很完美。 我需要将其转换为CSV,所以尝试了这个:

freshDeskRaw <- fromJSON(freshDeskTickets)
tmp <- lapply(freshDeskRaw , function(u) 
  lapply(u, function(x) if(is.null(x)) NA else x)
)
tmp <- lapply( tmp, as.data.frame)
tmp <- do.call( rbind, tmp )

目前

tmp <- lapply( tmp, as.data.frame)

,我收到一个错误:

  

tmp&lt; - lapply(tmp,as.data.frame)   错误(函数(...,row.names = NULL,check.rows = FALSE,check.names = TRUE,:参数意味着行数不同:0,1

我该如何解决这个问题?什么看起来不对?我试过用

as.data.frame(tmp),但仍然会遇到同样的错误。

1 个答案:

答案 0 :(得分:0)

问题可能是上面的JSON产生空列表和

is.null(list())
# [1] FALSE

尝试

is.null(x) || (is.list(x) && length(x) == 0)