如何动态命名变量?

如何动态命名变量?

是否可以动态创建新的变量名?

我希望将数据帧从列表中读取到末尾有数字的新变量中。像orca 1,orca 2,orca 3.

如果我尝试像

paste("orca",i,sep="")=list_name[[i]]

我知道这个错误

target of assignment expands to non-language object

还有别的办法吗?


30秒到达战场
浏览 692回答 3
3回答

肥皂起泡泡

使用assign:assign(paste("orca", i, sep = ""), list_name[[i]])

莫回无

在我看来,你最好用一个列表,而不是用orca1,&nbsp;orca2等等.。那就是orca[1],&nbsp;orca[2], ...通常,您只需要用一个数字来区分变量,因为这个数字是以后访问它们的一种方便的方法。orca&nbsp;<-&nbsp;list()orca[1]&nbsp;<-&nbsp;"Hi"orca[2]&nbsp;<-&nbsp;59否则,assign就是你想要的。

萧十郎

不要制作数据帧。保留列表,命名它的元素,但不要附加它。这样做的最大原因是,如果在执行过程中生成变量,那么以后几乎总是需要迭代每个变量才能执行有用的操作。在那里,您将再次被迫遍历您在飞行中创建的每个名称。命名列表中的元素并遍历名称要容易得多。就附件而言,它在R中的编程实践真的很糟糕,如果你不小心的话,可能会导致很多麻烦。
打开App,查看更多内容
随时随地看视频慕课网APP