• 实验八 文件


    安徽工程大学

    python程序设计实验报告

    班级:物流191        姓名:年素萍        学号:3190505107        日期:2020.6.3        指导老师:修宇

    实验八  文件

    【实验目的】  

           掌握读写文本文件或 CSV 文件,进而对数据进行处理的方法。

    【实验条件】  

    PC机或者远程编程环境

    【实验内容】

    完成二个编程题。

    1)水浒传词频统计

    水浒传-词频统计

    描述

    使用词频统计的方法,生成《水浒传》出场次数最多的10个人物的姓名。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

    读取《水浒传》文本文件的代码如下:‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

    txt = open("AllManAreBrothers.txt", "r", encoding="utf-8").read()

    代码模板:

    # ThreeKingdomsV2

    import jieba

    # 读取txt文件,获取需要统计词汇的文本

    txt = open("AllManAreBrothers.txt", "r", encoding="utf-8").read()

    # 设置需要输出最多的前n位人物的数量

    n = 10

    # 请在下列exludes集合中,自行补充其他需要排除的词汇

    excludes = {

        "两个", "一个", "只见", "如何", "那里", "哥哥",

    }

    words = jieba.lcut(txt)

    counts = {}

    # 请扩展下列分支结构,转换更多替代词

    for word in words:

        if len(word) == 1:

            continue

        elif word == "宋江道":

            rword = "宋江"

        else:

            rword = word

        counts[rword] = counts.get(rword, 0) + 1

        

    # 实现删除干扰词汇功能(此处约2行代码)    

    # 使用列表和lambda功能实现 词汇的排序 (此处约2行代码)    

    # 依次输出统计次数最多的前n位(此处约3行代码)  

    2)血压心率分析

    描述

    BP.txt”是以逗号分隔的日期、血压、心率记录数据文本文件( open('BP.txt',encoding="gbk"))

    统计收缩压、舒张压、心率的总平均值(保留3位小数)。

     【实验记录与分析】

    1)水浒传词频统计

     【注】本题要求统计出场次数最多的10个人物,但仅仅通过jieba 库所统计的词语中会出现非人名,所以需要自行排除(先统计较多的词语,之后将不需要的词语排除)

          

     

    2)血压心率分析

    【注】文件中共有24行数据,不能误以为只有题目中这些数据

  • 相关阅读:
    鼠标移入移出事件改变图片的分辨率
    Qt 5.2.0 和 VS 2012集成
    java int and string convert
    判断密码强度
    MySQL 警告WARN: Establishing SSL connection without server's identity verification is not recommended.解决办法
    java中byte转换int时为何与0xff进行与运算
    java排序练习
    小数的取舍
    控制台输入一个数组,然后倒序输出
    非托管资源的释放
  • 原文地址:https://www.cnblogs.com/ruonan/p/13039304.html
Copyright © 2020-2023  润新知