Jorge Cimentada
2016-Oct-07 16:06 UTC
[R] Error creating named character vectors from column names in data frame.
Hi everyone, I was hoping someone would explain why this doesn't work. c("a" = "b") # named character vector class("a") # character class("b") # character c(names(mtcars)[1] = names(mtcars[2]) # error class(names(mtcars)[1]) # character class(names(mtcars)[2]) # character Thanks, Jorge Cimentada [[alternative HTML version deleted]]
Jorge Cimentada
2016-Oct-07 16:20 UTC
[R] Error creating named character vectors from column names in data frame.
I'm sorry, there was a typo. The result is still the same: c("a" = "b") # named character vector class("a") # character class("b") # character c(names(mtcars)[1] = names(mtcars)[2]) # error class(names(mtcars)[1]) # character class(names(mtcars)[2]) # character Thanks, Jorge Cimentada [[alternative HTML version deleted]]
Bert Gunter
2016-Oct-07 17:34 UTC
[R] Error creating named character vectors from column names in data frame.
I think you have R semantics confused. What do you think c("a" = "b") means? Note that:> c("a" = "b")a "b"> aError: object 'a' not found And of course: class("a") # character class("b") # character but this has *nothing* to do with the line immediately above it. Have you gone through any basic R tutorials? There are many good ones on the web. Cheers, Bert Bert Gunter "The trouble with having an open mind is that people keep coming along and sticking things into it." -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) On Fri, Oct 7, 2016 at 9:06 AM, Jorge Cimentada <cimentadaj at gmail.com> wrote:> Hi everyone, > > I was hoping someone would explain why this doesn't work. > > c("a" = "b") # named character vector > class("a") # character > class("b") # character > > c(names(mtcars)[1] = names(mtcars[2]) # error > class(names(mtcars)[1]) # character > class(names(mtcars)[2]) # character > > > Thanks, > Jorge Cimentada > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at 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.
Jorge Cimentada
2016-Oct-07 17:44 UTC
[R] Error creating named character vectors from column names in data frame.
Hi Bert, Yes, I'm aware of the difference between a and "a" but in terms of object classes I don't see the difference between "a" and names(mtcars)[1]. They're both strings. However, for creating a named character vector, this works: c("a" = "b) But this doesn't c(names(mtcars)[1] = "b") For example: df <- data.frame("a" = 1:5) c("a" = "b") c(names(df)[1] = "b") # error But identical(names(df)[1], "a") That was my initial question. [[alternative HTML version deleted]]