楼主: zhiyouwo
775 2

[问答] 请教程序 [推广有奖]

  • 2关注
  • 2粉丝

副教授

57%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
4.6505
学术水平
1 点
热心指数
3 点
信用等级
0 点
经验
5715 点
帖子
200
精华
0
在线时间
1591 小时
注册时间
2009-10-31
最后登录
2024-5-21

5论坛币
请教一个R程序问题
给定初始P值;
While(|b1-a1|+…+|b6-a6|>0.001)
{
fit=function f(x, p);
fit1=[a1, a2,a3,a4,a5,a6]
b1=a1,b2=a2,b3=a3,b4=a4,b5=a5,b6=a6; #保存计算的六个参数
fit2=function g(x, a1,a2,a3,a4,a5,a6).###利用fit1计算的六个参数来计算p值
p=fit2
}
完成上面的循环后,保留最后一次的结果:即p, a1, a2,a3,a4,a5,a6
输出p, a1, a2,a3,a4,a5,a6


最佳答案

关键词:function while fit CTI Fun 程序
沙发
nuomin 发表于 2015-4-9 10:45:27 |只看作者 |坛友微信交流群
  1. fitt <- function(x,p){

  2.     return(p)
  3. }

  4. gfit <- function(x,p){
  5.     return(p)
  6. }

  7. dista <- function(pa,pb){
  8.     dista <- sum(abs(pa-pb))
  9.     return(dista)   
  10. }
  11. output <- numeric(7)
  12. pa <- numeric(6)
  13. repeat{
  14.     p <- fitt(x,pa)
  15.     pb <- gfit(x,pa)
  16.     if(dista(pa,pb)>0.001) {
  17.         output <<-c(p,pa)
  18.         break
  19.     }
  20.     pa <- pb
  21. }
复制代码
已有 1 人评分论坛币 收起 理由
admin_kefu + 30 热心帮助其他会员

总评分: 论坛币 + 30   查看全部评分

使用道具

藤椅
zhiyouwo 发表于 2015-4-10 10:37:33 |只看作者 |坛友微信交流群
nuomin 发表于 2015-4-9 10:45
十分感谢

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-22 00:02