设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2128|回复: 6
打印 上一主题 下一主题

[RMXP发布] 【丧心病狂】回归方程计算

[复制链接]

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

跳转到指定楼层
1
发表于 2014-7-4 14:34:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
RUBY 代码复制
  1. =begin
  2. 使用方法:按F11插入脚本编辑器Main前面,用脚本self.hgfc(y)即可···(PS:self和y为数组)
  3. 即插即用,麻麻再也不用担心我的学习啦!
  4. =end
  5. def hgfc(y) # 回归方程(必须用print,否则会p num => nil)
  6.   xn=self.size
  7.   yn=y.size
  8.   if xn!=yn
  9.     raise ArgumentError.new("NaN")
  10.   end
  11.   xx=0
  12.   xy=0
  13.   xl=0
  14.   yl=0
  15.   for i in 0...xn
  16.     xx+=self[i]**2
  17.     xy+=self[i]*y[i]
  18.     xl+=self[i]
  19.     yl+=y[i]
  20.   end
  21.   xl/=xn
  22.   yl/=yn
  23.   b=(xy-xn*xl*yl)/(xx-xn*xl**2).to_f
  24.   a=yl-b*xl
  25.   if a>=0
  26.     a="+"+a.to_s
  27.   end
  28.   if b==1
  29.     b=""
  30.   end
  31.   num="回归方程为y="+b.to_s+"x"+a.to_s
  32. end


脚本用途:用于计算回归方程···

关于回归方程:回归方程是根据样本资料通过回归分析所得到的反映一个变量(依变量)对另一个或一组变量(自变量)的回归关系的数学表达式。回归直线方程用得比较多,可以用最小二乘法求回归直线方程中的a,b,从而得到回归直线方程。
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
菜鸟飞呀飞 该用户已被删除
2
发表于 2014-7-4 19:09:45 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

3
 楼主| 发表于 2014-7-4 19:24:06 | 只看该作者
菜鸟飞呀飞 发表于 2014-7-4 19:09
主要是干什么用的? - -

计算数学问题里的回归方程···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
151 小时
注册时间
2012-2-4
帖子
114
4
发表于 2014-7-5 06:06:20 | 只看该作者
。。。QAQ这貌似没用吧。。

评分

参与人数 1星屑 +5 收起 理由
zhouzhuofan1 + 5 = =

查看全部评分

=
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

5
 楼主| 发表于 2014-7-5 06:46:22 | 只看该作者
qq1353826915 发表于 2014-7-5 06:06
。。。QAQ这貌似没用吧。。

做作业的时候可以拿来用···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3583
在线时间
3065 小时
注册时间
2011-11-17
帖子
980
6
发表于 2014-7-7 23:07:11 | 只看该作者
over = false
for i in 0..9999999
        for j in 0..999999
                if(....&&....)
                        over = true
                        break
                end
        end
        break if(over == true)
end
p ......
你要相信计算机的速度

点评

大部分带优化的编译器都会直接把没有意义的循环优化掉的,不过RUBY估计不会去优化  发表于 2014-7-25 22:28
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

7
 楼主| 发表于 2014-7-7 23:14:45 | 只看该作者
yagami 发表于 2014-7-7 06:07
over = false
for i in 0..9999999
        for j in 0..999999

这个真的能用在xp里面吗······@taroxd   

点评

我没看明白这个(....&&....)···  发表于 2014-7-8 10:44
别再秀你智商低啦  发表于 2014-7-8 10:35
P的时候怎么来P···  发表于 2014-7-8 08:25
可以  发表于 2014-7-8 06:17
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-22 07:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表