• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
YUTOU_34
博客园    首页    新随笔    联系   管理    订阅  订阅
2.安装Spark与Python练习

一、安装Spark

  1. 检查基础环境hadoop,jdk


     

     

     



  2. spark配置
  3. 环境变量
  4. 试运行Python代码
    def load_file(word_freq):     # 读文件到缓冲区
        try:     # 打开文件
            f = open(intext, 'r')
        except IOError as s:
            print(s)
            return None
        try:     # 读文件到缓冲区
            bvffer = f.read()
        except:
            print("ERROR!!")
            return None
        f.close()
        
        if bvffer:
            # 下面添加处理缓冲区 bvffer代码,统计每个单词的频率,存放在字典word_freq
            bvffer = bvffer.lower()
            for ch in '“‘!;,.?”':
                bvffer = bvffer.lower().replace(ch, " ")  #将所有字母转换成小写,便于统计
            words = bvffer.strip().split()         #strip消除空白符,split以空格作为单词分界
            for word in words:
                word_freq[word] = word_freq.get(word, 0)+1  #读取到的单词存放到字典
    
        return word_freq
    
    def output_result(word_freq):
        if word_freq:
            sorted_word_freq = sorted(word_freq.items(), key=lambda v: v[1], reverse=True)
            for item in sorted_word_freq[:10]:  # 输出 Top 10 的单词
                print(item[0], item[1])
    
                f = open(outtext, 'a')
                f.write(str(item[0]) + ' ' +str(item[1]))
                f.write('\n')
                f.close()
    
    if __name__ == "__main__":
        word_freq = {}
        intext = "text.txt"
        outtext = 'outtext.txt'
        a = load_file(word_freq)
        output_result(a)

     

     

     输出结果:

     

     

二、Python编程练习:英文文本的词频统计

    1. 准备文本文件
    2. 读文件到缓冲区
    3. 预处理:大小写,标点符号,停用词
    4. 统计每个单词出现的次数,按词频大小排序
    5. 结果写文件

 

 

       6.运行结果

posted on 2022-03-03 11:06  YUTOU_34  阅读(39)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3