从R中的字符串有效地提取多个数字

时间:2015-12-01 12:52:48

标签: regex r string parsing

假设我有字符串

x <-  "   1.1325  -0.9022  -0.1832  -0.5479   0.1236  -0.6556  -1.0599  -0.8881  -0.2136"

我希望提取浮点数以此向量作为输出:

c(1.1325, -0.9022, -0.1832, -0.5479, 0.1236, -0.6556, -1.0599, -0.8881, -0.2136)

我设法实现的目标是:

na.omit(as.numeric(strsplit(samp, split = "  ")[[1]]))

我的问题:有更有效的方法吗?

1 个答案:

答案 0 :(得分:4)

我们可以使用scan

scan(text=x, what=numeric(), quiet=TRUE)
#[1]  1.1325 -0.9022 -0.1832 -0.5479  0.1236 -0.6556 -1.0599 -0.8881 -0.2136