使用assign变量创建新变量

时间:2016-03-14 06:36:31

标签: r concatenation cat

我想在r中使用assign variable value创建一个新变量,就像在SAS中使用宏一样。

For example:-

ID<-"RC090015"

my_ID_code<-xyz 

It should be written as my_RC090015_code<-xyz.

所以我的要求是我想使用ID变量为代码泛化目的创建新变量。意味着我只是更改了ID变量值,因此它应该在我使用ID变量的所有其他变量中进行更改。

所以请帮助我r中是否有任何函数包含该ID变量来创建包含ID值的新变量。

先谢谢。

1 个答案:

答案 0 :(得分:0)

我们可以使用assign

assign(paste("my", ID, "code", sep="_"), xyz)
my_RC090015_code
#[1] 24

更新

它也适用于子集数据集

assign(paste("my",ID,"code",sep="_"), 
           SUBSET_DATA_MAIN[Terminal_ID==ID])

my_RC090015_code
#   Terminal_ID val
#1:    RC090015  24
#2:    RC090015  22

数据

xyz <- 24
library(data.table)
SUBSET_DATA_MAIN <- data.table(Terminal_ID= c("RC090015",
       "RC090017", "RC090015"), val= c(24, 23, 22))