快速方法在每个服务的代码周围加上引号

问题描述 投票:1回答:2

我有一点问题。当我尝试创建变量时

my_var <- c(17.1, 17.10.1, 17.11, 17.12, 17.13)

它返回一个错误

'错误:意外的数字常量'

我知道我需要把它放在引号中,但是有很多代码。有快速的方法吗?

r double-quotes
2个回答
1
投票

复制数字并在开头和结尾添加引号

"17.1, 17.10.1, 17.11, 17.12, 17.13"

然后在逗号上拆分并删除空格

my_var1 <- trimws(strsplit("17.1, 17.10.1, 17.11, 17.12, 17.13", ",")[[1]])
my_var1
#[1] "17.1"    "17.10.1" "17.11"   "17.12"   "17.13" 

如果您手动应用了引号,这将提供相同的输出

my_var <- c("17.1", "17.10.1", "17.11", "17.12", "17.13")
identical(my_var, my_var1)
#[1] TRUE

1
投票

我们可以使用scan来做到这一点

scan(text = str1, what ="", sep = ",", quiet = TRUE, strip.white = TRUE)
#[1] "17.1"    "17.10.1" "17.11"   "17.12"   "17.13"  

data

str1 <- "17.1, 17.10.1, 17.11, 17.12, 17.13"
© www.soinside.com 2019 - 2024. All rights reserved.