楼主: 中国梦丶
868 4

[问答] r做循环 [推广有奖]

  • 2关注
  • 0粉丝

硕士生

60%

还不是VIP/贵宾

-

威望
0
论坛币
26 个
通用积分
2.7005
学术水平
0 点
热心指数
5 点
信用等级
0 点
经验
23645 点
帖子
136
精华
0
在线时间
131 小时
注册时间
2016-10-27
最后登录
2023-10-7

楼主
中国梦丶 发表于 2017-8-31 20:22:36 来自手机 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
f<-list()
length(f)<-1511
for(i in 1:1511)
f[[i]]<-function(r)gamma(sigma[i])+2
其中sigma是个向量,这里我想根据sigma的每个值生成1511个函数,但是运行后f这个列表里每个元素都是一样的,这是为什么,每个元素都是function(r) gamma(sigma[i])+2有没有大神知道这是怎么回事
二维码

扫码加我 拉你入群

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

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


沙发
中国梦丶 发表于 2017-8-31 20:23:41 来自手机
中国梦丶 发表于 2017-8-31 20:22
f<-list()
length(f)<-1511
for(i in 1:1511)
for循环下面的变量名是f[],上面没打上

藤椅
z644070039 发表于 2017-9-2 09:55:57
我猜可能你是想写一个闭包,如

f<-function(y) {function(r) gamma(sigma[y])+2}

板凳
中国梦丶 发表于 2017-9-2 12:25:50 来自手机
中国梦丶 发表于 2017-8-31 20:22
f&amp;lt;-list()
length(f)&amp;lt;-1511
for(i in 1:1511)
在函数里i好像不起作用

报纸
katymeala 发表于 2017-9-6 15:53:02
function定义在外头,赋个值,然后for里面运行,记得加()

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

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