【发布时间】:2021-08-27 13:09:35
【问题描述】:
当使用jsonlite 导入一个在其他数组中有一个数组的 json 时,我得到了一个不需要的未命名列表。下面的例子:
myjson=jsonlite::fromJSON('{
"class" : "human",
"type" : [{
"shape":"thin",
"face":[{"eyes":"blues","hair":"brown"}]
}]
}')
str(myjson)
List of 2
$ class: chr "human"
$ type :'data.frame': 1 obs. of 2 variables:
..$ shape: chr "thin"
..$ face :List of 1
.. ..$ :'data.frame': 1 obs. of 2 variables:
.. .. ..$ eyes: chr "blues"
.. .. ..$ hair: chr "brown"
我想访问下面的“眼睛”字段(但是它不起作用):
myjson[["type"]][["face"]][["eyes"]]
NULL
相反,我需要添加“[[1]]”以使其正常工作:
myjson[["type"]][["face"]][[1]][["eyes"]]
[1] "blues"
任何想法如何格式化 json 以摆脱这个未命名的列表?
【问题讨论】: