user35131
user35131

Reputation: 1134

Rbind not working when including dynamic variable through assign function

My line of code is

df1<-rbind(df1,assign(paste(x,"_name_",_Date,sep=""),Result))

Basically

assign(paste(x,"_name_",_Date,sep=""),Result)

is the same as

df2

When i do

df1<-rbind(df1,df2)

it works but this needs to be dynamic and constantly changing as i do these updates weekly.

Upvotes: 2

Views: 203

Answers (1)

akrun
akrun

Reputation: 887501

We need get to return the value from the object name string i.e. assign only assign it to an object and it doesn't return the value.

rbind(df1, {
       nm1 <- paste(x,"_name_",_Date,sep="")
       assign(nm1, Result)
       get(nm1)})

Using a small reproducible example

rbind(head(iris), {
       nm1 <- 'newobj'
       assign(nm1, tail(iris))
       get(nm1)})
#    Sepal.Length Sepal.Width Petal.Length Petal.Width   Species
#1            5.1         3.5          1.4         0.2    setosa
#2            4.9         3.0          1.4         0.2    setosa
#3            4.7         3.2          1.3         0.2    setosa
#4            4.6         3.1          1.5         0.2    setosa
#5            5.0         3.6          1.4         0.2    setosa
#6            5.4         3.9          1.7         0.4    setosa
#145          6.7         3.3          5.7         2.5 virginica
#146          6.7         3.0          5.2         2.3 virginica
#147          6.3         2.5          5.0         1.9 virginica
#148          6.5         3.0          5.2         2.0 virginica
#149          6.2         3.4          5.4         2.3 virginica
#150          5.9         3.0          5.1         1.8 virginica
 

Upvotes: 1

Related Questions