RMS:均方根值,RMSE:均方根误差,MSE:标准差,定义及C++实现

1、均方根值(RMS),有时也称方均根、效值。英语写为:Root Mean Square(RMS).

美国传统词典的定义为:The square root of the average of squares of a set of numbers.
即:将N个项的平方和除以N后开平方的结果,即均方根的结果。

均方根值(RMS)+ 均方根误差(RMSE)+标准差(Standard Deviation) - 云卷云舒 - 飞龙在天的小窝儿^_^
#include <iostream>
#include "math.h"
using namespace std;

double calcRMS(double* Data, int Num)
{
	double fSum = 0;
	for (int i = 0; i < Num; ++i)
	{
		fSum += Data[i] * Data[i];
	}
	return sqrt(fSum/Num);
}

int main()
{
	double data[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
	double a = calcRMS(data, 10);
	cout << "the rms of data is:" << a << endl;
	return 0;
}

2、均方根误差,它是观测值与真值偏差的平方和观测次数n比值的平方根,在实际测量中,观测次数n总是有限的,真值只能用最可信赖(最佳)值来代替.方根误差对一组测量中的特大或特小误差反映非常敏感,所以,均方根误差能够很好地反映出测量的精密度。均方根误差,当对某一量进行甚多次的测量时,取这一测量列真误差的均方根差(真误差平方的算术平均值再开方),称为标准偏差,以σ表示。σ反映了测量数据偏离真实值的程度,σ越小,表示测量精度越高,因此可用σ作为评定这一测量过程精度的标准。

Root mean square error (RMSE)+Pearson correlation coefficient (r)+Nash-Sutcliffe coefficient (E) - 云卷云舒 - 飞龙在天的小窝儿^_^

double calcRMSE(double* Data,double *Data2,int Num)
{
	double fSum = 0;
	for (int i = 0; i < Num; ++i)
	{
		fSum += (Data[i] - Data2[i]) *(Data[i] - Data2[i]);
	}
	return sqrt(fSum / Num);
}
int main()
{
	double dataReal[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
	double dataCheck[10] = { 1.02, 2.1, 2.95, 3.98,5.1, 6.05, 7.1, 7.95, 8.98, 10.1 };
	double a = calcRMSE(dataReal,dataCheck,10);
	cout << "the rmse of dataREAL and check is:" << a << endl;
	return 0;
}
3、标准差(Standard Deviation),标准差是方差的算术平方根,也称均方差(mean square error),是各数据偏离平均数的距离的平均数,它是离均差平方和平均后的方根,用σ表示,标准差能反映一个数据集的离散程度。
均方根值(RMS)+ 均方根误差(RMSE)+标准差(Standard Deviation) - 云卷云舒 - 飞龙在天的小窝儿^_^
double calcMSR(double* DataR,double *DataC,int Num)
{
	double fSum = 0;
	double meanValue = 0;
	for (int i = 0; i < Num; ++i)
	{
		meanValue += DataR[i];
	}
	meanValue = meanValue / Num;

	for (int i = 0; i < Num; ++i)
	{
		fSum += (DataC[i] - meanValue) *(DataC[i] - meanValue);
	}
	return sqrt(fSum / Num); //MSR
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值