[R] split strings in a vector and convert it to a data.frame

Jorge Ivan Velez
2010-02-09T23:51:04Z

Hi Martin,

Here is a sugestion:

string <- c("xy_100_ab",
"xy_101_ab","xy_102_ab","xy_103_ab")
out <- data.frame( do.call( rbind, strsplit( string, '_' ) ) )
names(out) <- paste('column',1:3,sep="")
out

HTH,
Jorge

On Tue, Feb 9, 2010 at 6:46 PM, Martin Batholdy <> wrote:

> hi,
>
> I have a vector full of strings like;
>
>
> xy_100_ab       xy_101_ab       xy_102_ab       xy_103_ab
>
>
> I want to seperate each string in three pieces and the separator should be
> the "_"
>
> at the end I want a data.frame like:
>
> column1 column2 column3
> xy              100                     ab
> xy              101                     ab
> xy              102                     ab
> xy              103                     ab
>
>
> I tried strsplit but I couldn't figure out how to convert the list I
get
> into a data.frame.
>
> I just need a function like read.table. But it seems that read.table only
> can handle files, not vectors...
> ______________________________________________
> R-help@r-project.org mailing list
> 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.
>

	[[alternative HTML version deleted]]