Hello,

You could try a character class instead of one character (the tab char).
There are two character classes that you can try, [:blank:] and [:space:], see ?regex.

strsplit(as.character(daT1), "[[:blank:]]+")

Then form the final result. I have changed rbind to cbind, it seemed more appropriate (?).

s <- strsplit(as.character(daT1), "[[:blank:]]+")
x <- lapply(s, function(.s) .s[!grepl("[[:alpha:]]+", .s)])
daT3 <- as.data.frame(do.call(cbind, x))
daT3


Hope this helps,

Rui Barradas

Às 12:54 de 09/09/19, Marna Wagley escreveu:
Hi R User,
I was trying to split a column by tabs, I tried to split with several ways,
but I could not split it. Is there any possibilities?

The data example and the code I used
daT1<-c("Column number             1    2    3    4    5    6    7    8
  9   10   10   10   10   10   10   10",
"comes from position       1    7    2    6    3    5   15    9    4    8
10   11   12   13   14   16"
)
daT2 <- data.frame(do.call('rbind',
strsplit(as.character(daT1),'\t',fixed=T)))
colnames(daT2)
daT2

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to