Dear Rui,
The new code works fine for what I wanted. I have another similar column but it looks like
A
percent (10/20/30)
percent (40/20)
percent (60/10/10/5)
percent (80/10)
I want a similar split but delete the percent in the front. The output should look like
A1 A2 A3 A4
10 20 0 30
40 0 0 20
60 10 10 5
80 0 0 10
Could you please make the small change in the code that you gave me. It must be a small edition but I could not figure that out. FYI the code that worked was
fun <- function(X){
xname <- deparse(substitute(X))
s <- strsplit(X, "/")
n <- max(sapply(s, length))
tmp <- numeric(n)
f <- function(x){
x <- as.numeric(x)
m <- length(x)
if(m > 1){
tmp[n] <- x[m]
tmp[seq_len(m - 1)] <- x[seq_len(m - 1)]
}else tmp[1] <- x
tmp
}
res <- do.call(rbind, lapply(s, f))
colnames(res) <- paste(xname, seq_along(s), sep = "")
data.frame(res)
}
fun(A)
Thank you so very much.