我是R的新手,我正在练习将JSon转换为R,然后转换为CSV或Excel。我从https://mtgjson.com/下载了整个Magic the Gathering卡片集来练习。我使用此代码将其放入"列表",但我喜欢它在数据框或表中。
json_file<- rjson::fromJSON(file= "C://Users/ahalman/Desktop/AllCards.json")
我试过了:
as.data.frame(json_file)
但是我收到一条错误消息:&#34;错误(函数(...,row.names = NULL,check.rows = FALSE,check.names = TRUE,: 参数意味着不同的行数:13,10,14,15,11,12,16,19,9,8,6,7,18,4,17,21,23,20,22和#34;
我认为这会修复它,正如我在另一个Stack Overflow页面上看到的那样,但无论它做什么,它都没有工作:
json_file <- lapply(json_file, function(x) {
x[sapply(x, is.null)] <- NA
unlist(x)
})
任何帮助都会很棒。一旦它采用数据帧格式,我就明白了!
答案 0 :(得分:0)
我相信这就是答案:
df<- stringi::stri_list2matrix(json_file, byrow = TRUE)
这适用于前几列,但事情开始变得混乱。不知道为什么。
我想我终于搞清楚了:
newdf<- stringi::stri_list2matrix(json_file, byrow = TRUE, fill = "")