如何在r

时间:2018-05-15 13:30:32

标签: r substring text-extraction

说我有一个字符串:

{"id":"35","value":"0.2"},{"id":"1462","value":"0.2"},
{"id":"1109","value":"0.2"},{"id":"220","value":"0.2"},
{"id":"211","value":"0.1"}

我需要在每个{}

中提取子字符串

比在标题中创建具有id的列和与id对应的数字,如:

35  1462 1109 220 211
----------
0.2  0.2 0.2  0.2 0.1

1 个答案:

答案 0 :(得分:1)

我们可以在jsonlite paste[使用]d1 <- jsonlite::fromJSON(paste0('[', str1, ']')) 分别在开头和结尾使用

setNames(as.data.frame.list(d1$value), d1$id)
#   35 1462 1109 220 211
#1 0.2  0.2  0.2 0.2 0.1

它将是一个2列数据集,可以通过

转换为4列
fromJSON

假设我们有多个字符串,然后将这些字符串折叠为单个字符串并应用str2 <- c(str1, str1) d1 <- jsonlite::fromJSON(paste0("[", paste(str2, collapse=",\n"), "]"))

str1 <- '{"id":"35","value":"0.2"},{"id":"1462","value":"0.2"},{"id":"1109","value":"0.2"},{"id":"220","value":"0.2"},{"id":"211","value":"0.1"}'

数据

SXSSFWorkbook