楼主: xiaxia94
3828 4

[问答] R语言中assign函数在循环中出现的问题 [推广有奖]

  • 0关注
  • 0粉丝

已卖:1份资源

讲师

26%

还不是VIP/贵宾

-

威望
0
论坛币
24 个
通用积分
53.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
23038 点
帖子
219
精华
0
在线时间
95 小时
注册时间
2014-8-29
最后登录
2019-8-19

楼主
xiaxia94 学生认证  发表于 2018-10-5 20:37:51 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

代码如下:

for(i in 13:36){

  assign(paste0("plot", i),ggplot(data = DOI, aes(x = origin_lat, y = DOI[,i], color = species))+

    geom_smooth(method = "lm", formula = y~I(x*x)+x)+

    geom_point()+guides(color = FALSE)+

    labs(title = "", x = "", y = names(DOI)))

  }


然后得到的结果是,总共14张图,变量名为plot13~36,每张图都是i=36的时候的数据做出的图,而纵坐标的label却是i=13~36。

但是如果我单独赋值i的话,运行前面代码中ggplot部分,就是正常的:

ggplot(data = DOI, aes(x = origin_lat, y = DOI[,i], color = species))+

    geom_smooth(method = "lm", formula = y~I(x*x)+x)+

    geom_point()+guides(color = FALSE)+

    labs(title = "", x = "", y = names(DOI))


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:assign sign R语言 Formula Species

沙发
newbbs 在职认证  发表于 2018-10-8 07:50:32
请运行体会下面的代码你就会明白: for (i in 1:3){ assign(paste("a", i, sep = ""), i:10) }

转自:http://pgccoin.io/post/details/5bba0b25c5cef376fb0779c0

藤椅
xiaxia94 学生认证  发表于 2018-10-10 10:28:24
newbbs 发表于 2018-10-8 07:50
请运行体会下面的代码你就会明白: for (i in 1:3){ assign(paste("a", i, sep = ""), i:10) }

转自:ht ...
万分感谢回答!发完贴后自己也发现了这个问题,没想到居然是把变量代入的!

板凳
xiaxia94 学生认证  发表于 2018-10-10 10:28:35
newbbs 发表于 2018-10-8 07:50
请运行体会下面的代码你就会明白: for (i in 1:3){ assign(paste("a", i, sep = ""), i:10) }

转自:ht ...
万分感谢回答!发完贴后自己也发现了这个问题,没想到居然是把变量代入的!

报纸
千车麦穗 发表于 2019-12-10 09:24:34
我也遇到了这个问题,还是没太理解,请问你怎么解决的呢,谢谢

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-25 10:57