我有一个对象res_list,它包含我想用函数提取的数据。
res_list $具有以下可能性:Cearly,Rearly,Clate,Rlate,Cfollow,Rfollow。
我想创建一个函数,通过利用我在R中创建的数据对象的“名称”,以迭代的方式从所有不同的res_list $可能性中提取数据。
这些对象的名称如下:
signi_BTM_Cearly2
signi_BTM_Clate2
.
.
.
signi_BTM_Rfollow2
基本上,我只是想告诉我正在创建的函数只采用“Cearly”,“Clate”,......“Rfollow”表名的一部分。所以我可以检索我需要的数据。
我知道这是一个非常简单的任务,我无法弄明白。
谢谢大家的时间,
以下简单使用gsub
也可以帮到你。
val3<-c("signi_BTM_Cearly2","signi_BTM_Clate2")
gsub(".*_|\\d+$","",val3)
输出如下。
[1] "Cearly2" "Clate2"
我们可以使用sub
来捕获_
之后的字符,然后是字符串末尾的一个或多个数字(\\d+
),并替换为捕获组的反向引用($
)
\\1
sub(".*_([A-Za-z]+)\\d+$", "\\1", str1)
#[1] "Cearly" "Clate" "Rfollow"