将字符串添加到变量名称

时间:2013-08-30 10:32:42

标签: r

我有一个变量a=0.01

然后我创建一个矩阵b<-matrix(data=NA,ncol=2,nrow=9)

我想通过将a中存储的值添加到其名称来重命名此矩阵。

结果应为b_0.01

2 个答案:

答案 0 :(得分:3)

我敢打赌,有更优雅的方式来实现你所需要的,但这似乎有效:

assign(x = paste("b", a, sep = "_"), value = b)

编辑以下@ Roland的评论:

rm(b)

请注意,我从狭义上讲解你的问题。正如@Roland和@Paul Hiemstra所指出的那样,工作流程可能还有更多的一般方面也可以考虑。

答案 1 :(得分:3)

您可以使用assign完成此操作:

a = 0.01
b = matrix(data=NA,ncol=2,nrow=9)
assign(sprintf('b_%s', a), b)
b_0.01

一般来说,我会避免像这样创建数据对象。相反,我会使用list来创建,存储和操作对象组。