0

使用数据是刚刚在这里提出的一个问题,我想使用tidyrusing传播数据extract()

df<-read.table(header=T,text=
                "id m1      m2     m3
 P001.st   60.00   2.0     1
 P003.nd   14.30   2.077   1
 P003.rt   29.60   2.077   1
 P006.st   10.30   2.077   1
 P006.nd   79.30   2.077   1
 P008.nd    9.16   2.077   1")

df %>% 
  extract(id, c("id2", "var"), c("(P00.)\\.(..)"))

这是基于 hadley here的回答。

但我得到了错误:

Error in drop && length(x) == 1L : invalid 'x' type in 'x && y'

我通常不使用正则表达式,但想开始使用,所以如果有人可以帮助我了解我失败的地方,我将不胜感激。

谢谢!

4

1 回答 1

3

可能您的脚本也在加载magrittr 加载tidyr,但您忘了提及。

所以你实际上是在引用magrittr::extract而不是tidyr::extract.

你可以

  1. 加载magrittr 加载tidyr;或者
  2. tidyr::extract明确引用。

两者都必须工作。

于 2017-01-02T20:17:45.660 回答