zoukankan      html  css  js  c++  java
  • Python-统计值计算、词频统计

    一、统计值计算

    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:#遍历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)))
    统计值计算

     二、词频统计

    def getText():
        txt = open("Text.txt", "r").read()
        txt = txt.lower()#字母变小写
        for ch in '!"#$%&()*+,-./:;<=>?@[\]^_‘{|}~':
            txt = txt.replace(ch, " ")  # 将文本中特殊字符替换为空格
        return txt
    
    
    hamletTxt = getText()
    words = hamletTxt.split()
    counts = {}
    for word in words:
        counts[word] = counts.get(word, 0) + 1
    items = list(counts.items())
    items.sort(key=lambda x: x[1], reverse=True)
    for i in range(10):
        word, count = items[i]
        print("{0:<10}{1:>5}".format(word, count))
    词频统计

  • 相关阅读:
    大数据面试题题库
    IDEA下通过Git实现代码管理
    使用QJM实现HDFS的HA配置
    1、HDFS分布式文件系统
    分析system_call中断处理过程
    由一段代码解析系统调用的原理
    从linux内核代码分析操作系统启动过程
    一个简单的时间片轮转多道程序内核
    从一段代码的汇编看计算机的工作原理
    九度OJ1468
  • 原文地址:https://www.cnblogs.com/MoooJL/p/12542406.html
Copyright © 2011-2022 走看看