C 語言計算線性迴歸程式


問題

編寫程式來實現線性迴歸演算法。

使用者需要輸入總值。

解決方案

在 C 程式語言中計算線性迴歸的解決方案如下 −

線性迴歸透過將線性方程與觀察到的資料連線起來來查詢兩個變數之間的關係。一個變數是解釋變數,另一個是因變數。

與線性迴歸相關的邏輯如下 −

for(i=0;i<n;i++){
   printf("enter values of x and y");
   scanf("%f%f",&x,&y);
   sumx=sumx+x;
   sumxsq=sumxsq+(x*x);
   sumy=sumy+y;
   sumxy=sumxy+(x*y);
}

d=n*sumxsq-sumx*sumx;
m=(n*sumxy-sumx*sumy)/d;
c=(sumy*sumxsq-sumx*sumxy)/d;

最後,列印 m 和 c。

示例

以下是要計算線性迴歸的 C 程式 −

 線上演示

#include<math.h>
#include<stdio.h>
main(){
   int n,i;
   float x,y,m,c,d;
   float sumx=0,sumxsq=0,sumy=0,sumxy=0;
   printf("enter the number of values for n:");
   scanf("%d",&n);
   for(i=0;i<n;i++){
      printf("enter values of x and y");
      scanf("%f%f",&x,&y);
      sumx=sumx+x;
      sumxsq=sumxsq+(x*x);
      sumy=sumy+y;
      sumxy=sumxy+(x*y);
   }
   d=n*sumxsq-sumx*sumx;
   m=(n*sumxy-sumx*sumy)/d;
   c=(sumy*sumxsq-sumx*sumxy)/d;
   printf("M=%f\tC=%f
",m,c); }

輸出

當執行上述程式時,它產生以下結果 −

enter the number of values for n:5
enter values of x and y1 5
enter values of x and y2 6
enter values of x and y2 4
enter values of x and y3 7
enter values of x and y1 1
M=2.000000 C=1.000000

更新時間: 31-Aug-2021

7 千多次瀏覽

開啟你的職業

透過完成課程來獲得認證

開始學習
廣告
© . All rights reserved.