0

我有一个变量a=0.01

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

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

结果应该是b_0.01

4

2 回答 2

3

我敢打赌,有更优雅的方法可以实现您的需求,但这似乎可行:

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

按照@Roland 的评论进行编辑:

rm(b)

请注意,我在狭义上回答您的问题。正如@Roland 和@Paul Hiemstra 所指出的,工作流程中可能还有更一般的方面值得考虑。

于 2013-08-30T10:49:28.287 回答
3

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

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

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

于 2013-08-30T10:49:36.693 回答