ホームページ > バックエンド開発 > C++ > 線形回帰を計算する C プログラム

線形回帰を計算する C プログラム

王林
リリース: 2023-08-25 23:45:05
転載
1046 人が閲覧しました

線形回帰を計算する C プログラム

#質問

線形回帰アルゴリズムを実装するプログラムを作成してください。

ユーザーは値の合計数を入力する必要があります。

解決策

C プログラミング言語を使用して線形回帰を計算する解決策は次のとおりです。

線形回帰では、観測された変数に線形方程式を接続することで 2 つの変数間の関係が見つかります。データ関係。 1 つの変数は説明変数、もう 1 つは従属変数です。

線形回帰のロジックは次のとおりです。

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</p><p>",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
ログイン後にコピー

以上が線形回帰を計算する C プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート