이 튜토리얼에서는 t-test를 구현하는 프로그램에 대해 논의할 것입니다.
학생 T 검정의 t 검정은 두 평균을 비교하고 두 평균이 유사한지 다른지 확인하는 데 사용됩니다. 이와 함께 t-test는 변화의 이유를 알기 위해 차이가 얼마나 큰지 판단하는 데에도 도움이 됩니다.
예
#include <bits/stdc++.h> using namespace std; //calculating mean float calc_mean(float arr[], int n){ float sum = 0; for (int i = 0; i < n; i++) sum = sum + arr[i]; return sum / n; } //calculating standard deviation float calc_deviation(float arr[], int n){ float sum = 0; for (int i = 0; i < n; i++) sum = sum + (arr[i] - calc_mean(arr, n)) * (arr[i] - calc_mean(arr, n)); return sqrt(sum / (n - 1)); } //finding t-test of two data float calc_ttest(float arr1[], int n, float arr2[], int m){ float mean1 = calc_mean(arr1, n); float mean2 = calc_mean(arr2, m); float sd1 = calc_deviation(arr1, n); float sd2 = calc_deviation(arr2, m); float t_test = (mean1 - mean2) / sqrt((sd1 * sd1) / n + (sd2 * sd2) / m); return t_test; } int main(){ float arr1[] = { 10, 20, 30, 40, 50 }; int n = sizeof(arr1) / sizeof(arr1[0]); float arr2[] = { 1, 29, 46, 78, 99 }; int m = sizeof(arr2) / sizeof(arr2[0]); cout << calc_ttest(arr1, n, arr2, m) << endl; return 0; }
출력
-1.09789