I would try something like x = get(myvarname) attr(x, "foo") = "bar" assign(varname, x)
HTH, Peter On Wed, Oct 10, 2018 at 9:15 PM Marc Girondot via R-help < r-help@r-project.org> wrote: > Hello everybody, > > Has someone the solution to set attribute when variable is known by name ? > > Thanks a lot > > Marc > > Let see this exemple: > > # The variable name is stored as characters. > > varname <- "myvarname" > assign(x = varname, data.frame(A=1:5, B=2:6)) > attributes(myvarname) > > $names > [1] "A" "B" > $class > [1] "data.frame" > $row.names > [1] 1 2 3 4 5 > > # perfect > > attributes(get(varname)) > > # It works also > > $names > [1] "A" "B" > $class > [1] "data.frame" > > $row.names > [1] 1 2 3 4 5 > > attributes(myvarname)$NewAtt <- "MyAtt" > > # It works > > attributes(get(varname))$NewAtt2 <- "MyAtt2" > Error in attributes(get(varname))$NewAtt2 <- "MyAtt2" : > impossible de trouver la fonction "get<-" > > # Error... > > ______________________________________________ > 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. > [[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.