Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
要从R中的向量中删除某些值吗_R_Regex_Gsub - Fatal编程技术网

要从R中的向量中删除某些值吗

要从R中的向量中删除某些值吗,r,regex,gsub,R,Regex,Gsub,我有以下形式的向量: a注意,gsub只删除字符向量项中的文本,而不删除项目本身。在这种情况下,您需要类似于grep的解决方案 您可以使用简单的模式来标识这些项目: ^\[\d+]$ 看 详细信息 ^-字符串的开头 \[-a[字符 \d+-1+位 ]-文字] $-字符串结束 然后,将其与grep命令一起使用与invert=TRUE选项一起使用,以仅保留与此正则表达式不匹配的项,并使用value=TRUE获取值而不是索引 见: >一个grep(“^\\\[\\d+]$”,a,invert=T

我有以下形式的向量:


a注意,
gsub
只删除字符向量项中的文本,而不删除项目本身。在这种情况下,您需要类似于
grep
的解决方案

您可以使用简单的模式来标识这些项目:

^\[\d+]$

详细信息

  • ^
    -字符串的开头
  • \[
    -a
    [
    字符
  • \d+
    -1+位
  • ]
    -文字
    ]
  • $
    -字符串结束
然后,将其与
grep
命令一起使用
invert=TRUE
选项一起使用,以仅保留与此正则表达式不匹配的项,并使用
value=TRUE
获取值而不是索引

见:

>一个grep(“^\\\[\\d+]$”,a,invert=TRUE,value=TRUE)
[1] "\"0\""

是否要将它们置空或从字符向量中删除?请阅读
gsub
的文档,错误消息是不言自明的。@WiktorStribiżew我想删除它们。如果您发布生成该向量的代码,即
a,将非常有用?
remove<- gsub("[0:9]", a)
Error in gsub("[0:9]", a) : argument "x" is missing, with no default
^\[\d+]$
> a <- c("[1]", "\"0\"")
> grep("^\\[\\d+]$", a, invert=TRUE, value=TRUE)
[1] "\"0\""