R提取数据框名称并更改新列

时间:2019-03-01 10:27:24

标签: r stringr

我有一个t.test的数据框,其中有两列:对象及其p.value:

`t.test>1sd` <- tibble( 
object = c('obj1','obj2','obj3'),
p.value= c(0.45,0.34,0.02)
)

> `t.test>1sd`
# A tibble: 3 x 2
object p.value
<chr>    <dbl>
1 obj1      0.45
2 obj2      0.34
3 obj3      0.02

现在我想添加第三列。新列中的值应包含数据框名称的一部分。我想从datraframe名称t.test>1sd中提取>1sd。 (在这种情况下,> 1sd是特殊边界) 但是我有更多具有不同边界的数据框(> 2sd,> 3sd等) 因此,我需要一个将t.test>1sd

分开的解决方案

这是我想要的输出:

> `t.test>1sd`
# A tibble: 3 x 2
object p.value    boundary
<chr>    <dbl>      <chr> 
1 obj1      0.45    >1sd
2 obj2      0.34    >1sd
3 obj3      0.02    >1sd

在stringr-package中有解决方案吗? 有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

根据LAP str_extract('t.test>1sd', '\\>[:digit:]{1}sd')的建议,应该可以解决问题。