R中的JSON:数据框不能作为一个

时间:2015-08-20 07:36:43

标签: json r

我使用jsonlite的stream_in()将包含120个JSON对象的文件传输到R中。

R报告df $规则作为数据框,但我似乎无法使用df$rules$tag而不是df$rules[,2]来访问“代码”。

以下是rulesdf的结构:

"rules":{"source":{"rule":"","tag":"tag_1"}}

PS:在写完问题后,我能够将其格式化为数据框(using do.call & rbind.fill)但问题仍然存在,因为这是我想要应用某些条件脚本的更大数据框的一部分。 / p>

重新格式化我的问题:如何根据这个“标签”对json数据框进行子集化?

更新:以上问题已由Jaap建议链接解决。

现在我有另一个问题。我循环遍历许多json对象,提取上面的列表,并希望每个列表都在相同的数据框中,显然对应于同一个变量。 实际上我正在为json对象中的几个列表数组做这个。 这是an example(json对象的一部分)。

1 个答案:

答案 0 :(得分:0)

我认为我并不完全理解预期的结果,但也许这会有所帮助。

library(jsonlite)

sample_nlp <- fromJSON(
  "http://pastebin.com/raw.php?i=yik5Vif4",
  simplifyDataFrame = FALSE
)
# pretend like we have twenty by replicating the sample
nlp_array <- lapply(
  1:20,
  function(x){sample_nlp}
)

search_tags <- "Vyapam"
Filter(
  function(x){
    return(search_tags %in% unname(unlist(x$hashtags)))
  },
  nlp_array
)