Python 机器学习中位数



  • 均值,中位数和众数

    从一组数字中我们可以学到什么?在机器学习(和数学)中,通常存在三个使我们感兴趣的值:
    • 平均值 -平均值
    • 中位数 -中点值
    • 众数 -最常见的值
    示例:我们已经注册了13辆车的速度:
    speed = [99,86,87,88,111,86,103,87,94,78,77,85,86]
    
    什么是平均,中间或最常见的速度值?
  • 平均值

    要计算平均值,请找到所有值的总和,然后将总和除以值的数量:
    数组示例:
    (99+86+87+88+111+86+103+87+94+78+77+85+86) / 13 = 89.77
    
    NumPy模块为此提供了一种方法:
    提示:numpy模块不是内置模块,需要用pip安装才可以使用。
    使用NumPy mean()方法查找平均速度:
    import numpy
    
    speed = [99,86,87,88,111,86,103,87,94,78,77,85,86]
    
    x = numpy.mean(speed)
    
    print(x)
    
    输出如下所示:
    ml
    
  • 中位数

    中值是对所有值进行排序之后的中间值:
    数组示例:
    77, 78, 85, 86, 86, 86, 87, 87, 88, 94, 99, 103, 111
    
    在找到中位数之前,对数字进行排序很重要。
    NumPy模块为此提供了一种方法:
    使用NumPy median()方法查找中间值:
    import numpy
    speed = [99,86,87,88,111,86,103,87,94,78,77,85,86]
    
    x = numpy.median(speed)
    
    print(x)
    
    输出如下所示:
    ml
    
    如果中间有两个数字,请将这些数字之和除以2。
    77, 78, 85, 86, 86, 86, 87, 87, 94, 98, 99, 103
    
    (86 + 87) / 2 = 86.5
    
    使用NumPy median()方法查找中间值:
    import numpy
    
    speed = [99,86,87,88,86,103,87,94,78,77,85,86]
    
    x = numpy.median(speed)
    
    print(x)
    
    输出如下所示:
    ml
    
  • 众数

    众数是出现次数最多的值:
    数组示例:
    99, 86, 87, 88, 111, 86, 103, 87, 94, 78, 77, 85, 86 = 86
    
    SciPy模块为此提供了一种方法:
    提示:scipy模块不是内置模块,需要用pip安装才可以使用。
    使用SciPy mode()方法查找出现次数最多的数字:
    from scipy import stats
    
    speed = [99,86,87,88,111,86,103,87,94,78,77,85,86]
    
    x = stats.mode(speed)
    
    print(x)
    
    输出如下所示:
    ml
    
  • 章节总结

    平均值,中位数和众数是机器学习中经常使用的技术,因此了解它们背​​后的概念很重要。