Foxtable(狐表)用户栏目专家坐堂 → [求助]标准差的计算


  共有3983人关注过本帖树形打印复制链接

主题:[求助]标准差的计算

帅哥哟,离线,有人找我吗?
liuruihua
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:781 积分:9870 威望:0 精华:0 注册:2008/9/1 13:47:00
[求助]标准差的计算  发帖心情 Post By:2014/4/27 22:08:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/4/27 22:28:00 [只看该作者]

 

可以参考这里

 

http://www.foxtable.com/help/topics/0545.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/4/27 22:29:00 [只看该作者]

 特殊计算,看这里,希望没有记错 标准差公式

 

For Each r As Row In Tables("表A").Rows
    Dim datas(9) As Integer
    For i As Integer = 0 To datas.length - 1
        datas(i) = 2 ^ (r("log" & i))
    Next
    '求平均值
    Dim x As Double
    For i As Integer = 0 To datas.length - 1
        x = x + datas(i) / datas.length 
    Next
    '求平方差
    Dim s2 As Double
    For i As Integer = 0 To datas.length - 1
        s2 = s2 + (datas(i) - x) ^ 2
    Next
    s2 = s2 / datas.length
    Dim s As Double = math.Sqrt(s2)
    r("标准差") = s
Next

[此贴子已经被作者于2014-4-27 22:30:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/4/27 22:32:00 [只看该作者]

 是这样?

 

For Each r As Row In Tables("表A").Rows
    Dim datas(9) As Integer
    For i As Integer = 0 To datas.length - 1
        datas(i) = 2 ^ (r("log" & i))
    Next
    '求平均值
    Dim x As Double
    For i As Integer = 0 To datas.length - 1
        x = x + datas(i)
    Next
    x = x / datas.length
    '求平方差
    Dim s2 As Double
    For i As Integer = 0 To datas.length - 1
        s2 = s2 + (datas(i) - x) ^ 2
    Next
    s2 = s2 / datas.length
    Dim s As Double = math.Sqrt(s2)
    r("标准差") = s
Next


 回到顶部
帅哥哟,离线,有人找我吗?
liuruihua
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:781 积分:9870 威望:0 精华:0 注册:2008/9/1 13:47:00
  发帖心情 Post By:2014/4/27 23:25:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/4/28 9:31:00 [只看该作者]

以下是引用liuruihua在2014-4-27 23:25:00的发言:

版主的公式还在理解当中,用实际数据检验,发现结果不对。比例在log8和log9这两列中,log8有3个,表示有3个2的8次方,即256,256,256这三个数;log9列有1个,表示有1个2的9次方数,即512。这四个数的标准差为128,套用版主的公式,结果为6.8922。不知我举例说得够不够明晰,请再看看。

 

哦,理解错了,那就改一下这里。

 

For Each r As Row In Tables("表A").Rows
    Dim length As Integer
    For i As Integer = 0 To 9
        length += r("log" & i)
    Next

    Dim datas(length-1) As Integer

    Dim idx As Integer = 0
    For i As Integer = 0 To 9
        For j As Integer = 1 To r("log" & i)
            datas(idx) = 2 ^ i

            idx += 1
        Next
    Next

    '求平均值
    Dim x As Double
    For i As Integer = 0 To datas.length - 1
        x = x + datas(i)
    Next
    x = x / length

    '求平方差
    Dim s2 As Double = 0
    For i As Integer = 0 To datas.length - 1
        s2 = s2 + (datas(i) - x) ^ 2
    Next
    s2 = s2 / length

    Dim s As Double = math.Sqrt(s2)
    r("标准差") = s
Next
 

[此贴子已经被作者于2014-4-28 9:57:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/4/28 9:59:00 [只看该作者]

 回复楼主,重新弄了一下。看6楼。发觉你给的数据不正确吧?

 

 256,256,256,512的标准差,是128?怎么将计算的?难道我的公式记错了,伤不起啊图片点击可在新窗口打开查看不要欺负我小学毕业

[此贴子已经被作者于2014-4-28 10:00:35编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
liuruihua
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:781 积分:9870 威望:0 精华:0 注册:2008/9/1 13:47:00
  发帖心情 Post By:2014/4/28 10:53:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/4/28 11:07:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
liuruihua
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:781 积分:9870 威望:0 精华:0 注册:2008/9/1 13:47:00
  发帖心情 Post By:2014/4/28 14:17:00 [只看该作者]

用户已被锁定

 回到顶部
总数 13 1 2 下一页