1

我有这样的情况:
df

List           Count 
R472_21:345     1   
R47_2:90        1   
R844_21:98      2   
R845_54:123     2   
R975_12:1       2   

我想按以下方式拆分“列表”列的元素:

R472 21 345      
R47  2  90      
..........  

我尝试根据此代码拆分,:但我无法同时拆分_

test <- unlist(strsplit(as.character(df$List), "\\:"))

有什么建议吗?

4

2 回答 2

1

使用 | 在您的模式中使用 OR 进行拆分。所以你在“_”或“:”上分裂。

df <- read.table(header=TRUE, text="List           Count 
  R472_21:345     1   
  R47_2:90        1   
  R844_21:98      2   
  R845_54:123     2   
  R975_12:1       2   ")

strsplit(as.character(df$List), "_|:")

结果:

[[1]]
[1] "R472" "21"   "345" 

[[2]]
[1] "R47" "2"   "90" 

[[3]]
[1] "R844" "21"   "98"  

[[4]]
[1] "R845" "54"   "123" 

[[5]]
[1] "R975" "12"   "1"   
于 2012-10-23T18:17:14.573 回答
0

用于"_|:"您的模式而不是"\:". 但是,您的呼叫unlist将连接所有内容。你可能不想要这个。

于 2012-10-23T18:16:33.620 回答