使用 str_replace_all 函数 R 替换向量中的一项

replacing a term in vector using str_replace_all function R

我正在尝试用句点 . 替换向量中的连字符 -

> samples_149_vector 
$Patient.ID
  [1] MB-0020 MB-0100 MB-0115 MB-0158 MB-0164 MB-0174 MB-0179 MB-0206
  [9] MB-0214 MB-0238 MB-0259 MB-0269 MB-0278 MB-0333 MB-0347 MB-0352
 [17] MB-0372 MB-0396 MB-0399 MB-0400 MB-0401 MB-0420 MB-0424 MB-0446
 [25] MB-0464 MB-0476 MB-0481 MB-0489 MB-0494 MB-0495 MB-0500 MB-0502

以下代码

library(stringr)
str_replace_all(samples_149_vector, "-", ".")

生成以下错误:

> str_replace_all(samples_149_vector, "-", ".")
[1] "1:149"                                                           
[2] "function (length = 0) \n.Internal(vector(\"character\", length))"
Warning message:
In stri_replace_all_regex(string, pattern, fix_replacement(replacement),  :
  argument is not an atomic vector; coercing

有什么想法吗?我尝试了很多事情和组合,但强制原子向量消息似乎再次出现

您可以尝试使用转义符,因为在使用正则表达式匹配模式时,"." 用于匹配任何字符吗?要创建正则表达式,您需要使用 "\."

str_replace_all(samples_149_vector, "-", "\.")