zoukankan      html  css  js  c++  java
  • 039 实例9-基本统计值计算

    一、"基本统计值计算"问题分析

    1.1 问题分析

    基本统计值

    • 需求:给出一组数,对它们有个概要理解
    • 该怎么做呢?

    总个数、求和、平均值、方差、中位数…

    • 总个数:len()
    • 求和:for … in
    • 平均值:求和/总个数
    • 方差:各数据与平均数差的平方的和的平均数
    • 中位数:排序,然后…
    • 奇数找中间1个,偶数找中间2个取平均

    二、"基本统计值计算"实例讲解

    2.1 基本统计值计算

    • 获取多数据输入
    • 通过函数分隔功能
    # CalStatisticsV1.py
    
    
    def getNum():  #获取用户不定长度的输入
        nums = []
        iNumStr = input("请输入数字(回车退出): ")
        while iNumStr != "":
            nums.append(eval(iNumStr))
            iNumStr = input("请输入数字(回车退出): ")
        return nums
    
    
    def mean(numbers):  #计算平均值
        s = 0.0
        for num in numbers:
            s = s + num
        return s / len(numbers)
    
    
    def dev(numbers, mean):  #计算方差
        sdev = 0.0
        for num in numbers:
            sdev = sdev + (num - mean)**2
        return pow(sdev / (len(numbers) - 1), 0.5)
    
    
    def median(numbers):  #计算中位数
        sorted(numbers)
        size = len(numbers)
        if size % 2 == 0:
            med = (numbers[size // 2 - 1] + numbers[size // 2]) / 2
        else:
            med = numbers[size // 2]
        return med
    
    
    n = getNum()
    m = mean(n)
    print("平均值:{},方差:{:.2},中位数:{}.".format(m, dev(n, m), median(n)))
    
    请输入数字(回车退出): 13
    请输入数字(回车退出): 15
    请输入数字(回车退出): 16
    请输入数字(回车退出): 17
    请输入数字(回车退出): 
    平均值:15.25,方差:1.7,中位数:15.5.
    

    三、"基本统计值计算"举一反三

    3.1 技术能力扩展

    • 获取多个数据:从控制台获取多个不确定数据的方法
    • 分隔多个函数:模块化设计方法
    • 充分利用函数:充分利用Python提供的内容函数
  • 相关阅读:
    jquery 异常
    easyui datagrid 单击行不选择行
    java 简单实现上传 | commons-fileupload
    abator ibatis 构建过程
    mysql 杂笔
    eclipse杂笔
    maven 构建项目
    ubuntu随笔
    powershell:convert-path
    maven学习笔记1
  • 原文地址:https://www.cnblogs.com/abdm-989/p/14129874.html
Copyright © 2011-2022 走看看