colsplit in r:将一列分成两列

时间:2015-05-05 18:01:36

标签: r split reshape2

我有一个csv文件(" sumCounts")加载到r中,其中包含一个名为" transcript"的列。此列中的一行示例如下所示:

TR43890 | c0_g1_i1

我想将此列拆分为两列,名为" transcript"和#34;同种型"沿着烟斗" |"字符。

sumCounts <- colsplit(transcript, "|", c("transcript", "isoform"))

我一直收到以下错误:str_split_fixed(string,pattern,n = length(names))中的错误:object&#39; transcript&#39;找不到

1 个答案:

答案 0 :(得分:1)

您的问题没有包含足够的信息来了解这是否有效,但我假设您的数据被读入名为sumCounts的数据对象,并且您希望将一个名为transcript的列分成两个。如果是这样的话那么Hadley Wickham的tidyr套餐会做你想要的:

install.packages("tidyr")
require(tidyr)

#sumCounts <- read.csv("sumCounts.csv")

## Toy example:
sumCounts <- data.frame(
  "transcript"=c(
    "TR43890|c0_g1_i1", 
    "TR43890|c0_g1_i1", 
    "TR43890|c0_g1_i1"
  )
)

##  Note that the sep= argument requires a regular expression, for which
##    the pipe argument is a special character and must be escaped:
separate(sumCounts, transcript, c("transcript", "isoform"), sep="\\|")