C++计算方差
时间: 2023-07-11 21:06:28 浏览: 125
计算方差的公式为:
$Var(X) = \frac{\sum_{i=1}^{n}(X_i - \overline{X})^2}{n-1}$
其中,$X_i$ 表示第 $i$ 个数据点,$\overline{X}$ 表示所有数据点的平均值,$n$ 表示数据点的总数。
以下是 C++ 代码实现:
```cpp
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
double calculate_mean(const vector<double>& data) {
double sum = 0;
for (auto x : data) {
sum += x;
}
return sum / data.size();
}
double calculate_variance(const vector<double>& data) {
double mean = calculate_mean(data);
double sum = 0;
for (auto x : data) {
sum += pow(x - mean, 2);
}
return sum / (data.size() - 1);
}
int main() {
vector<double> data = {1, 2, 3, 4, 5};
double variance = calculate_variance(data);
cout << "Variance: " << variance << endl;
return 0;
}
```
在这个例子中,我们先定义了一个函数 `calculate_mean` 来计算数据点的平均值,然后使用该函数来计算方差。注意,在计算方差时,分母是 $n-1$,而不是 $n$,这是因为我们使用样本的方差来估计总体的方差。
阅读全文