• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            一般在計(jì)算相關(guān)系數(shù)時(shí)都要遍歷4次數(shù)據(jù),這在數(shù)據(jù)比較多,需要讀寫文件時(shí),顯然是費(fèi)時(shí)的。這里給出Single Pass版本的計(jì)算方法,但是其中的變化依據(jù)還沒有搞懂,希望各位指教:
            偽代碼:

             1 sum_sq_x = 0
             2 sum_sq_y = 0
             3 sum_coproduct = 0
             4 mean_x = x[1]
             5 mean_y = y[1]
             6 for i in 2 to N:
             7     sweep = (i - 1.0/ i
             8     delta_x = x[i] - mean_x
             9     delta_y = y[i] - mean_y
            10     sum_sq_x += delta_x * delta_x * sweep
            11     sum_sq_y += delta_y * delta_y * sweep
            12     sum_coproduct += delta_x * delta_y * sweep
            13     mean_x += delta_x / i
            14     mean_y += delta_y / i 
            15 pop_sd_x = sqrt( sum_sq_x / N )
            16 pop_sd_y = sqrt( sum_sq_y / N )
            17 cov_x_y = sum_coproduct / N
            18 correlation = cov_x_y / (pop_sd_x * pop_sd_y)
            19

            下面是我用C改寫的,這份改寫同時(shí)放在了Wiki上面:
             1#include "stdlib.h"
             2#include "math.h"
             3void SinglePassCorrelation(FILE *file,int N)
             4{
             5    double *x=new double[N+1];
             6    double *y=new double[N+1];
             7    int i;
             8    for(i=1;i<=N;i++)
             9    {
            10        fscanf(file,"%lf %lf",&x[i],&y[i]);
            11        printf("%10.6f %10.6f\n",x[i],y[i]);
            12    }

            13    double sum_sq_x=0;
            14    double sum_sq_y=0;
            15    double sum_coproduct=0;
            16    double mean_x=x[1];
            17    double mean_y=y[1];
            18    double sweep=0;
            19    double delta_x;
            20    double delta_y;
            21    double pop_sd_x;
            22    double pop_sd_y;
            23    double cov_x_y;
            24    double correlation;
            25    for(i=2;i<=N;i++)
            26    {
            27        sweep=(i-1.0)/i;
            28        delta_x=x[i]-mean_x;
            29        delta_y=y[i]-mean_y;
            30        sum_sq_x+=delta_x*delta_y*sweep;
            31        sum_sq_y+=delta_y*delta_y*sweep;
            32        sum_coproduct+=delta_x*delta_y*sweep;
            33        mean_x+=delta_x/i;
            34        mean_y+=delta_y/i;
            35    }
            //end for i
            36    pop_sd_x=sqrt(sum_sq_x/N);
            37    pop_sd_y=sqrt(sum_sq_y/N);
            38    cov_x_y=sum_coproduct/N;
            39    correlation=cov_x_y/(pop_sd_x*pop_sd_y);
            40}

            41
            Posted on 2008-11-28 20:13 鄒敏 閱讀(2114) 評(píng)論(0)  編輯 收藏 引用

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久夜色精品国产网站| 91久久精品视频| 久久精品国产精品亚洲精品| 久久这里都是精品| 久久国产色AV免费观看| 香蕉久久一区二区不卡无毒影院 | 精品久久久久久久中文字幕| 99久久精品国产一区二区三区| 久久精品中文字幕第23页| 国内精品久久久久影院薰衣草| 国产精品免费福利久久| 亚洲国产精品综合久久一线| 久久男人Av资源网站无码软件| 欧美一级久久久久久久大片| 久久综合亚洲欧美成人| 性做久久久久久久久老女人| 97久久香蕉国产线看观看| 99久久免费国产精品特黄| 99久久国产免费福利| 久久久婷婷五月亚洲97号色| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久国产劲爆AV内射—百度| 久久天天躁狠狠躁夜夜网站| 亚洲欧美日韩久久精品| 伊人久久大香线焦AV综合影院| 久久久久亚洲AV综合波多野结衣| 久久99热精品| 久久精品麻豆日日躁夜夜躁| 久久精品国产久精国产果冻传媒| 久久中文字幕视频、最近更新| 久久久久中文字幕| 狠狠干狠狠久久| 久久精品天天中文字幕人妻| 色诱久久久久综合网ywww| 亚洲国产精品无码久久一线| 亚洲欧美国产精品专区久久| 亚洲精品tv久久久久久久久久| 久久婷婷人人澡人人| 亚洲另类欧美综合久久图片区| 一本久久综合亚洲鲁鲁五月天| 亚洲国产小视频精品久久久三级 |