需要使用一个自动生成名称的值

时间:2018-11-03 12:58:39

标签: r

我正在使用

assign( paste("ship", b, sep = ""),c())

作为向量,我要保存矩阵中某些元素的坐标。

现在我想使用向量,例如,第一个向量命名为ship1,我想向该向量添加元素,但是我不能使用append和paste(“ ship”,b,sep =“ ”),因为出现此错误

Error in paste("barco", b, sep = "") <- append(paste("barco", b, sep = ""),  : 
target of assignment expands to non-language object

我的问题是:如何在不专门使用ship1的情况下使用我的向量,因此能够使用通用方法填充所有其他“ ship b”向量

1 个答案:

答案 0 :(得分:1)

您需要get

b = 1
VName = paste("ship", b, sep = "")
assign(VName,c())
assign(VName, append(get(VName), 1:3))
get(VName)
[1] 1 2 3

但是请参阅@MauritsEvers有关使用assign的评论