Hi Sverre, On Mon, Jul 11, 2011 at 12:48 PM, Sverre Stausland <john...@fas.harvard.edu> wrote: > Dear helpers, > > how can I extract only the values from a row in a data frame? Using > [X,] doesn't do the trick: > >> data.frame(letters[1:10],letters[11:20])->my.data >> my.data[1,] > letters.1.10. letters.11.20. > 1 a k > > I would like to be able to extract only the values "a" and "k" without > getting the row names and column names with them. I'm asking because I > want to assign the character values from a row as the names of the > columns of the data frame.
You're confusing display with value. R extracts the first row only, but when it is *printed to the screen* it has all the other parts shown to help the viewer. They aren't really part of the value extracted. But I bet you tried it before asking, and it didn't work, so you assumed it was the display values that messed up your attempt. I think you've actually run into R's default behavior: character columns are stored as factors unless you specify otherwise. So try this: > my.data <- data.frame(letters[1:10],letters[11:20], stringsAsFactors=FALSE) > my.other.data <- data.frame(1:5, 1:5) > colnames(my.other.data) <- my.data[1,] > my.other.data a k 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 Sarah -- Sarah Goslee http://www.functionaldiversity.org ______________________________________________ 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.