切割后的因子抓取功能

时间:2013-07-11 19:09:40

标签: r

当我用另一个向量剪切一个向量时,我得到了很多这样的因素:(0,100),(100,200)等等。有没有办法得到这些因子中的一个,然后采取上限或下限?

ex:for(100,200)我想要一些方法来抓住100和200。

编辑:

> v <- cut(c(3,4,6,8), c(1,4,5,9,12))  
> v  
[1] (1,4] (1,4] (5,9] (5,9]  
  Levels: (1,4] (4,5] (5,9] (9,12]  
  > v[1]  
  [1] (1,4]  
  Levels: (1,4] (4,5] (5,9] (9,12]

我想要一些方法,当给出v [1]时,得到数字1和4。

2 个答案:

答案 0 :(得分:2)

v <- cut(c(3,4,6,8), c(1,4,5,9,12))
levels(v)
#[1] "(1,4]"  "(4,5]"  "(5,9]"  "(9,12]"

as.numeric(sub('.([^,]+),.*', '\\1', levels(v)))
#[1] 1 4 5 9

as.numeric(sub('.*,(.*).', '\\1', levels(v)))
#[1]  4  5  9 12

答案 1 :(得分:2)

strsplit(gsub("\\[|\\]|\\(", "", as.character(v[1]) ) , ",")[[1]]

#[1] "1" "4"