为了账号安全,请及时绑定邮箱和手机立即绑定

如何动态命名变量?

如何动态命名变量?

30秒到达战场 2019-07-04 15:12:28
如何动态命名变量?是否可以动态创建新的变量名?我希望将数据帧从列表中读取到末尾有数字的新变量中。像orca 1,orca 2,orca 3.如果我尝试像paste("orca",i,sep="")=list_name[[i]]我知道这个错误target of assignment expands to non-language object还有别的办法吗?
查看完整描述

3 回答

?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

使用assign:

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


查看完整回答
反对 回复 2019-07-04
?
莫回无

TA贡献1865条经验 获得超7个赞

在我看来,你最好用一个列表,而不是用orca1orca2等等.。那就是orca[1]orca[2], ...

通常,您只需要用一个数字来区分变量,因为这个数字是以后访问它们的一种方便的方法。

orca <- list()orca[1] <- "Hi"orca[2] <- 59

否则,assign就是你想要的。


查看完整回答
反对 回复 2019-07-04
?
萧十郎

TA贡献1815条经验 获得超12个赞

不要制作数据帧。保留列表,命名它的元素,但不要附加它。

这样做的最大原因是,如果在执行过程中生成变量,那么以后几乎总是需要迭代每个变量才能执行有用的操作。在那里,您将再次被迫遍历您在飞行中创建的每个名称。

命名列表中的元素并遍历名称要容易得多。

就附件而言,它在R中的编程实践真的很糟糕,如果你不小心的话,可能会导致很多麻烦。


查看完整回答
反对 回复 2019-07-04
  • 3 回答
  • 0 关注
  • 687 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信