r-将嵌套json转换为数据帧时出错



我有一个dtaframe,其中一列中有嵌套的json。我想把其中一个变成数据帧。json在这里:df[1,]$json,看起来像这样:

{"case": "payment: fraud checking", "params": {}, "answer": {"assistant_check": false}}

我试着这样做:

library(jsonlite)
df[1,]$json %>% 
fromJSON() %>%
as.data.frame()

但它给了我一个错误:

Error in (function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE,  : 
arguments imply differing number of rows: 1, 0

为什么会发生这种情况?我想是因为";params":{}。如何解决?为什么我没有从dong那里得到这个数据帧:

case                 params    answer.assistant_check
payment: fraud checking      NA            FALSE

如果json列不包含任何数组数据,这将适用于您(但如果params在所有行中都为空,则取消它(。

library(dplyr)
library(purrr)
library(jsonlite)
df$json %>%
map_dfr(~unlist(jsonlite::fromJSON(.)))

这对你有帮助吗?

相关内容

  • 没有找到相关文章

最新更新