python 计算平均平方误差(MSE)的实例

yipeiwu_com7年前Python基础

我们要编程计算所选直线的平均平方误差(MSE), 即数据集中每个点到直线的Y方向距离的平方的平均数,表达式如下:

MSE=1n∑i=1n(yi−mxi−b)2

最初麻烦的写法

# TODO 实现以下函数并输出所选直线的MSE
def calculateMSE(X,Y,m,b):
  in_bracket = []
  for i in range(len(X)):
    num = Y[i] - m*X[i] - b
    num = pow(num,2)
    in_bracket.append(num)
    
  all_sum = sum(in_bracket)
  MSE = all_sum / len(X)
 
  return MSE
 
print(calculateMSE(X,Y,m1,b1))

优化后 zip 太常用了

# TODO 实现以下函数并输出所选直线的MSE
def calculateMSE(X,Y,m,b): 
  return sum([(y-m*x -b)**2 for x,y in zip(X,Y)])/len(X)

以上这篇python 计算平均平方误差(MSE)的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python创建一个元素都为0的列表实例

实现创建一个元素都为0的列表: l=10 lis=[0]*l lis 输出结果: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 以上这篇Python创建一个元...

深入理解Python变量与常量

深入理解Python变量与常量

变量是计算机内存中的一块区域,变量可以存储规定范围内的值,而且值可以改变。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。常量是一块只读的内存区域,常量一旦被...

Python2.7实现多进程下开发多线程示例

简单的基于Python2.7版本的多进程下开发多线程的示例,供大家参考,具体内容如下 可以使得程序执行效率至少提升10倍 #!/usr/bin/env python # -*- co...

详解Python中使用base64模块来处理base64编码的方法

base64模块是用来作base64编码解码的。这种编码方式在电子邮件中是很常见的。 它可以把不能作为文本显示的二进制数据编码为可显示的文本信息。编码后的文本大小会增大1/3。 闲话不说...

Python中type的构造函数参数含义说明

测试代码如下: 复制代码 代码如下:  class ModelMetaClass(type):      def __new__(cls...