中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP計算線性回歸方程式 Y = a + bX

發布時間:2020-07-04 18:56:06 來源:網絡 閱讀:2112 作者:lhp1986 欄目:web開發

  在游戲的開發過程中,我們會用到很多的算法,其中數學中的線性回歸可以很好地運用到一些游戲里,下面是由PHP寫的一段計算線性回歸的方程式的代碼:

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
    <title>線性回歸 Linear Regression</title>
</head>
<body>
<h3>計算線性回歸方程式 Y = a + bX</h3>
<p>
    如果兩組數據相關系數很高, 可以用一條近似直線Y=a + bX 來預估, 謂之線性回歸<br />
    根據統計學理論, Y = a + bX 中 <br />

    斜率 b = X,Y 離均差交乘積和 / X離均差平方和 <br />
    常數項 a = Y平均值 - b * X平均值<br />
</p>
<?php
header("Content-Type: text/html; charset=utf-8");
if (empty($_REQUEST["X"])) {
    ?>
    <form method="post" action="index.php">
        X : <input type="text" name="X" size="30" value="25,23,27,35,30"><br>
        Y : <input type="text" name="Y" size="30" value="35,27,36,45,42"><br>
        <input type="submit" value="ok">
    </form>
<?php
} else {
    $X = explode(",",$_REQUEST["X"]);
    $Y = explode(",",$_REQUEST["Y"]);
    $xavg = array_sum($X)/count($X); // X 平均值
    $yavg = array_sum($Y)/count($Y); // Y 平均值
    $XMD = Array();         // X 離均差
    $YMD = Array();         // Y 離均差
    $mdcross_sum = 0;       // X,Y 離均差交乘積和
    $xdif_square_sum = 0;   // X 離均差平方和
    $count = count($X);
    for ($i=0; $i<$count; $i++) {
        $xdif = (float)$X[$i]-$xavg; // X 離均差
        $ydif = (float)$Y[$i]-$yavg; // Y 離均差
        $XMD[$i] = $xdif;
        $YMD[$i] = $ydif;
        $mdcross_sum += $xdif*$ydif;       // X,Y 離均差交乘積和
        $xdif_square_sum += pow($xdif, 2); // X 離均差平方和
    } //end of for
    $b = round($mdcross_sum/$xdif_square_sum, 2);   // 計算斜率 b
    $a = round($yavg-$b*$xavg, 2);                  // 計算常數項 a
    echo "X = ".join(", ",$X)."<br>";
    echo "Y = ".join(", ",$Y)."<br>";
    echo "常數項 a = ".$a."<br>";
    echo "斜率 b = ".$b."<br>";
    echo "線性回歸方程式 Y = ".$a." + (".$b.")X<br>";
    echo "X 平均值 = ".$xavg."<br>";
    echo "Y 平均值 = ".$yavg."<br>";
    echo "X 離均差 = ".join(", ",$XMD)."<br>";
    echo "Y 離均差 = ".join(", ",$YMD)."<br>";
    echo "X,Y 離均差交乘積和 = ".$mdcross_sum."<br>";
    echo "X 離均差平方和 = ".$xdif_square_sum."<br>";
}

echo '<hr />';

echo '計算兩點之間的角度。';
$a = array('x' => 10, 'y' => 0);
$c = array('x' => 80, 'y' => 80);
$pi_v = atan2($c['y'] - $a['y'], $c['x'] - $a['x']);
$n_v = rad2deg($pi_v);
echo '弧度:',$pi_v,' 角度:',$n_v;


?>
</body>
</html>


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

淳安县| 巴楚县| 舒城县| 永城市| 巴东县| 乌拉特后旗| 邹城市| 哈巴河县| 高要市| 长乐市| 蒲江县| 财经| 常山县| 博爱县| 吐鲁番市| 光泽县| 修水县| 无为县| 安福县| 太原市| 海城市| 游戏| 淄博市| 福清市| 白城市| 巴林右旗| 桐城市| 阿克苏市| 攀枝花市| 香格里拉县| 中山市| 乌兰察布市| 永宁县| 临安市| 惠来县| 永靖县| 湖口县| 徐闻县| 临沧市| 清河县| 东至县|