Another option is to use the colsplit() function (in the reshape package): testdata <- data.frame(sp = c("GenusA_SpeciesC_Tree", "GenusA_SpeciesF_Tree", "GenusB_SpeciesA_Shrub"), stringsAsFactors=FALSE)
library(reshape) testdata <- cbind(testdata, colsplit(testdata$sp, split="_", names=c("Genus", "Species", "Type"))) -Ista On Tuesday 01 June 2010 10:10:22 am Ivan Calandra wrote: > Hi, > > I don't know if it would help you since your goal is not really clear to > > me, but here are some thoughts: > > x <- c("GenusA_SpeciesC_Tree", "GenusA_SpeciesF_Tree", > > "GenusB_SpeciesA_Shrub") > > > test <- strsplit(x, "_") > > test > > [[1]] > [1] "GenusA" "SpeciesC" "Tree" > [[2]] > [1] "GenusA" "SpeciesF" "Tree" > [[3]] > [1] "GenusB" "SpeciesA" "Shrub" > > > lapply(test, "[", 1) > > [[1]] > [1] "GenusA" > [[2]] > [1] "GenusA" > [[3]] > [1] "GenusB" > > > df <- data.frame(Genus=unlist(lapply(test,"[",1)), > > Species=unlist(lapply(test,"[",2)), Veget=unlist(lapply(test,"[",3))) > > > df > > Genus Species Veget > 1 GenusA SpeciesC Tree > 2 GenusA SpeciesF Tree > 3 GenusB SpeciesA Shrub > > There are probably better and nicer ways to do each step. > > HTH, > Ivan > > Le 6/1/2010 11:45, Joël Baumann a écrit : > > Hello! > > > > I have the following problem: > > > > I have a file in R that has in the first row three informations in one > > row that I would like to in three different rows. > > > > The first row looks like this: > > > > GenusA_SpeciesC_Tree > > GenusA_SpeciesF_Tree > > GenusB_SpeciesA_Shrub > > ... > > > > I tried with strsplit and and substring but I don't get any solution. > > I know I can do this in Excel, but in R would be much nicer! > > > > Thanks for helping me. > > > > Joël Baumann > > > > ______________________________________________ > > 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. ______________________________________________ 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.