从字符串向量中获取子字符串
Getting a sub string from a vector of strings
我有一个字符串向量
ids <- c("NM_006690.2_PROBE1","333212.1_PROBE1","7602049CB1_PROBE1","NM_018065.1_PROBE1","1539036CB1_PROBE1","NM_021019.1_PROBE1","1440608CB1_PROBE1","NM_031270.1_PROBE1","613678CB1_PROBE1")
这里已经有很多讨论:extract a substring in R according to a pattern。
我想删除 dot(.)
之后的所有内容,并想删除 PROBE
之前的 _
之后的所有内容。我通过
成功删除了 .
read.table(text = ids, sep = ".", as.is = TRUE, fill=TRUE)$V1
我现在想在 613678CB1_PROBE1
等情况下删除 PROBE 之前的 _
并且我想要的输出是 613678CB1
。怎么做。
输出:
"NM_006690", "333212" , "7602049CB1" "NM_018065","1539036CB1" "NM_021019" "1440608CB1" "NM_031270","613678CB1")
注意:有两个_
,一个附在NM
,另一个附在PROBE
。我希望删除所有内容 _PROBE
你只想要这个吗?
ids <- c("NM_006690.2_PROBE1", "333212.1_PROBE1" , "7602049CB1_PROBE1" , "NM_018065.1_PROBE1",
"1539036CB1_PROBE1", "NM_021019.1_PROBE1", "1440608CB1_PROBE1", "NM_031270.1_PROBE1",
"613678CB1_PROBE1")
ids <- read.table(text = ids, sep = ".", as.is = TRUE, fill=TRUE)$V1
library(stringr)
ids <- str_replace(ids, "_PROBE1", "")
这给你这个:
"NM_006690" "333212" "7602049CB1" "NM_018065" "1539036CB1" "NM_021019" "1440608CB1" "NM_031270" "613678CB1"
你好像在问:
gsub("\..*|_PROBE.*", "", ids)
演示:
gsub("\..*|_PROBE.*", "", ids)
# [1] "NM_006690" "333212" "7602049CB1" "NM_018065" "1539036CB1"
# [6] "NM_021019" "1440608CB1" "NM_031270" "613678CB1"
我有一个字符串向量
ids <- c("NM_006690.2_PROBE1","333212.1_PROBE1","7602049CB1_PROBE1","NM_018065.1_PROBE1","1539036CB1_PROBE1","NM_021019.1_PROBE1","1440608CB1_PROBE1","NM_031270.1_PROBE1","613678CB1_PROBE1")
这里已经有很多讨论:extract a substring in R according to a pattern。
我想删除 dot(.)
之后的所有内容,并想删除 PROBE
之前的 _
之后的所有内容。我通过
.
read.table(text = ids, sep = ".", as.is = TRUE, fill=TRUE)$V1
我现在想在 613678CB1_PROBE1
等情况下删除 PROBE 之前的 _
并且我想要的输出是 613678CB1
。怎么做。
输出:
"NM_006690", "333212" , "7602049CB1" "NM_018065","1539036CB1" "NM_021019" "1440608CB1" "NM_031270","613678CB1")
注意:有两个_
,一个附在NM
,另一个附在PROBE
。我希望删除所有内容 _PROBE
你只想要这个吗?
ids <- c("NM_006690.2_PROBE1", "333212.1_PROBE1" , "7602049CB1_PROBE1" , "NM_018065.1_PROBE1",
"1539036CB1_PROBE1", "NM_021019.1_PROBE1", "1440608CB1_PROBE1", "NM_031270.1_PROBE1",
"613678CB1_PROBE1")
ids <- read.table(text = ids, sep = ".", as.is = TRUE, fill=TRUE)$V1
library(stringr)
ids <- str_replace(ids, "_PROBE1", "")
这给你这个:
"NM_006690" "333212" "7602049CB1" "NM_018065" "1539036CB1" "NM_021019" "1440608CB1" "NM_031270" "613678CB1"
你好像在问:
gsub("\..*|_PROBE.*", "", ids)
演示:
gsub("\..*|_PROBE.*", "", ids)
# [1] "NM_006690" "333212" "7602049CB1" "NM_018065" "1539036CB1"
# [6] "NM_021019" "1440608CB1" "NM_031270" "613678CB1"