Ex2 +=
static_cast<double>(tmp) * tmp;
42 double mean()
const{
returnK + Ex / n; }
45 double variance()
const{
return(Ex2 - (Ex * Ex) / n) / (n - 1); }
79 doubledelta = x - mu;
81 doubledelta2 = x - mu;
86 double mean()
const{
returnmu; }
107 doublemu = 0, var = 0, M = 0;
119 floatmean = 0.f, variance = 0.f;
124 for(
inti = 0; i < number_of_samples; i++) {
125stats01.
new_val(test_data[i]);
126stats02.
new_val(test_data[i]);
127mean += test_data[i];
130mean /= number_of_samples;
132 for(
inti = 0; i < number_of_samples; i++) {
133 floattemp = test_data[i] - mean;
134variance += temp * temp;
136variance /= number_of_samples;
138std::cout <<
"<<<<<<<< Test Function >>>>>>>>"<< std::endl
139<<
"Expected: Mean: "<< mean <<
"\t Variance: "<< variance
141std::cout <<
"\tMethod 1:" 142<<
"\tMean: "<< stats01.
mean()
143<<
"\t Variance: "<< stats01.
variance()
144<<
"\t Std: "<< stats01.
std() << std::endl;
145std::cout <<
"\tMethod 2:" 146<<
"\tMean: "<< stats02.
mean()
147<<
"\t Variance: "<< stats02.
variance()
148<<
"\t Std: "<< stats02.
std() << std::endl;
150assert(std::abs(stats01.
mean() - mean) < 0.01);
151assert(std::abs(stats02.
mean() - mean) < 0.01);
152assert(std::abs(stats02.
variance() - variance) < 0.01);
154std::cout <<
"(Tests passed)"<< std::endl;
159 const floattest_data1[] = {3, 4, 5, -1.4, -3.6, 1.9, 1.};
160 test_function(test_data1,
sizeof(test_data1) /
sizeof(test_data1[0]));
163<<
"Enter data. Any non-numeric data will terminate the data input." 171std::cout <<
"Enter number: ";
182std::cout <<
"\tMethod 1:" 183<<
"\tMean: "<< stats1.
mean()
184<<
"\t Variance: "<< stats1.
variance()
185<<
"\t Std: "<< stats1.
std() << std::endl;
186std::cout <<
"\tMethod 2:" 187<<
"\tMean: "<< stats2.
mean()
188<<
"\t Variance: "<< stats2.
variance()
189<<
"\t Std: "<< stats2.
std() << std::endl;
friend std::istream & operator>>(std::istream &input, stats_computer1 &stat)
friend std::istream & operator>>(std::istream &input, stats_computer2 &stat)
void test_function(const float *test_data, const int number_of_samples)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4