Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

C++ Program: Standard Error of Mean (SEM)

Standard Error of Mean (SEM) = Standard Deviation / √n
ใช้ประเมินความคลาดเคลื่อนของ Sample Mean ต่อ Population Mean

ตัวอย่างโค้ด

#include <bits/stdc++.h>
using namespace std;

float calc_mean(float arr[], int n) {
    float sum = 0;
    for (int i = 0; i < n; i++) sum += arr[i];
    return sum / n;
}

float calc_deviation(float arr[], int n) {
    float mean = calc_mean(arr, n);
    float sum = 0;
    for (int i = 0; i < n; i++)
        sum += (arr[i] - mean) * (arr[i] - mean);
    return sqrt(sum / (n - 1)); // Sample SD
}

float calc_error(float arr[], int n) {
    return calc_deviation(arr, n) / sqrt(n);
}

int main() {
    float arr[] = {78.53, 79.62, 80.25, 81.05, 83.21, 83.46};
    int n = 6;
    cout << calc_error(arr, n) << endl;
    return 0;
}

ผลลัพธ์

0.8063

การคำนวณยืนยัน

  • Mean = 486.12 / 6 = 81.02
  • SD ≈ 1.975
  • SEM = 1.975 / √6 ≈ 1.975 / 2.449 ≈ 0.806 ✓

การใช้งาน

Confidence Interval 95%: Mean ± 1.96 × SEM

81.02 ± 1.96 × 0.806 ≈ [79.44, 82.60]

หมายเหตุ

โค้ดคำนวณ Mean สองครั้งใน Deviation (เรียก calc_mean ในลูป) ควรส่ง Mean เข้าไปเป็นพารามิเตอร์แทน