[R] Split

Val v@|kremk @end|ng |rom gm@||@com
Tue Sep 22 20:55:33 CEST 2020


HI All,

I am trying to create   new columns based on another column string
content. First I want to identify rows that contain a particular
string.  If it contains, I want to split the string and create two
variables.

Here is my sample of data.
F1<-read.table(text="ID1  ID2  text
A1 B1   NONE
A1 B1   cf_12
A1 B1   NONE
A2 B2   X2_25
A2 B3   fd_15  ",header=TRUE,stringsAsFactors=F)
If the variable "text" contains this "_" I want to create an indicator
variable as shown below

F1$Y1 <- ifelse(grepl("_", F1$text),1,0)


Then I want to split that string in to two, before "_" and after "_"
and create two variables as shown below
x1= strsplit(as.character(F1$text),'_',2)

My problem is how to combine this with the original data frame. The
desired  output is shown   below,


ID1 ID2  Y1   X1    X2
A1  B1    0   NONE   .
A1  B1   1    cf        12
A1  B1   0  NONE   .
A2  B2   1    X2    25
A2  B3   1    fd    15

Any help?
Thank you.



More information about the R-help mailing list