24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1381  |  回复: 7

翻身仗

新虫 (正式写手)

[求助] 如何用for循环依次调用不同的函数呢已有3人参与

比如,第一次调用 cdfln3( ), 第二次调用cdfgev( ),等等
for循环如何实现?
func <- c (  'cdfln3', 'cdfgev', ........     )
for ( i in 1:5 ) {   func   }
这样应该不行吧
回复此楼
我是来学习的
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1014511134

专家顾问 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
想这样的话,加个判断?不行吗?
2楼2018-07-06 12:12:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1036554

新虫 (初入文坛)

感觉可以用函数指针数组

发自小木虫Android客户端
3楼2018-07-06 13:00:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cleveryun

金虫 (著名写手)

博客:https://www.orzzone.com
4楼2018-07-08 14:15:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bcsnow

铁杆木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
for 里面判断,或者 i作参数,在函数里面判断
5楼2018-07-09 08:49:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lvchengrui

专家顾问 (正式写手)

【答案】应助回帖

> myfun <- function(x, y) {x + y}
> funs <- c("rnorm", "runif", "dnorm", "myfun"
> paras <- list(list(5, 1, 1),
+               list(5, 1, 2),
+               list(seq(0.01,0.99,0.25)),
+               list(2,3))
> for (i in 1:length(funs)) {
+   res <- do.call(funs, paras[])
+   print(res)
+ }
[1] 1.1676517 2.4706755 0.3297969 0.8477372 1.0756599
[1] 1.626650 1.310351 1.006046 1.814608 1.608650
[1] 0.3989223 0.3856834 0.3502919 0.2988724
[1] 5
gps
6楼2018-09-22 21:34:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lvchengrui

专家顾问 (正式写手)

【答案】应助回帖

myfun <- function(x, y) {x + y}
funs <- c("rnorm", "runif", "dnorm", "myfun"
paras <- list(list(5, 1, 1),
              list(5, 1, 2),
              list(seq(0.01,0.99,0.25)),
              list(2,3))
for (i in 1:length(funs)) {
  res <- do.call(funs, paras[])
  print(res)
}
gps
7楼2018-09-22 21:35:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lvchengrui

专家顾问 (正式写手)

【答案】应助回帖

醉了,代码没法正常显示
gps
8楼2018-09-22 21:37:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 翻身仗 的主题更新
信息提示
请填处理意见