Python MapReduce 案例

2023-05-16


map_t.py
  
import sys
import re

p = re.compile(r'\w+')
for line in sys.stdin:
    ss = line.strip().split(' ')
    for s in ss:
        if len(p.findall(s)) < 1:
            continue
        s_low = p.findall(s)[0].lower()
        print(s_low + ',' + '1')

reduce_t.py 

import sys

cur_word = None
s = 0
for line in sys.stdin:
    word, val = line.strip().split(',')

    if cur_word is None:
        cur_word = word
    if cur_word != word:
        print('%s\t%s' % (cur_word, s))
        cur_word = word
        s = 0
    s += int(val)
print('%s\t%s' % (cur_word, sum))
HADOOP_CMD="/usr/local/src/hadoop-2.6.1/bin/hadoop"
STREAM_JAR_PATH="/usr/local/src/hadoop-2.6.1/share/hadoop/tools/lib/hadoop-streaming-2.6.1.jar"

INPUT_FILE_PATH="/data/words.txt"
OUTPUT_PATH="/output/wc"

$HADOOP_CMD fs -rmr -skipTrash $OUTPUT_PATH

# Step 1.
$HADOOP_CMD jar $STREAM_JAR_PATH \
    -input $INPUT_FILE_PATH \
    -output $OUTPUT_PATH \
    -mapper "python map_t.py" \
    -reducer "python red_t.py" \
    -file ./map_t.py \
    -file ./red_t.py

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python MapReduce 案例 的相关文章

  • 如何使用python从文件夹中的pdf中提取文本并将其保存在数据框中?

    我有很多文件夹 每个文件夹都有几个 pdf 文件 也有其他文件类型 如 xlsx 或 doc 我的目标是提取每个文件夹的pdf文本并创建一个数据框 其中每条记录都是 文件夹名称 每列以字符串形式表示该文件夹中每个pdf文件的文本内容 我设法
  • 在Python中用空格分割字符串——保留带引号的子字符串

    我有一个像这样的字符串 this is a test 我正在尝试用 Python 编写一些内容 以将其按空格分开 同时忽略引号内的空格 我正在寻找的结果是 this is a test 附言 我知道您会问 如果引号内有引号会发生什么 嗯 在
  • BeautifulSoup 不适用于某些网站

    我有这个脚本 import urrlib2 from bs4 import BeautifulSoup url http www shoptop ru page urllib2 urlopen url read soup Beautiful
  • swig char ** 作为指向 char * 的指针

    我在使用 swig 和 char 作为指向变量 char 的指针时遇到问题 而不是作为 char 的列表 我找不到将指针包装到 char 的方法 目的是将连接的结果写入指针引用的 char 中 以下是我的代码 文件指针 cpp includ
  • numpy.linalg.inv() 是否给出了正确的矩阵逆?编辑:为什么 inv() 给出数值错误?

    我有一个矩阵形状 4000 4000 我想取逆矩阵 我对逆矩阵的直觉因如此大的矩阵而崩溃 起始矩阵的值大小为e 10 具有以下值 print matrix给出一个输出 2 19885119e 10 2 16462810e 10 2 1306
  • pandas:使用运算符链接过滤 DataFrame 的行

    大多数业务在pandas可以通过操作符链接来完成 groupby aggregate apply等 但我发现过滤行的唯一方法是通过普通的括号索引 df filtered df df column value 这没有吸引力 因为它需要我分配d
  • 在python中浏览ftp目录

    我正在尝试使用 ftplib 使用 Python 3 从 ftp 服务器下载多个文件夹 我有一个文件夹名称列表 它们都位于文件夹 root 中 问题是我不知道如何浏览它们 当我使用cwd我可以进入更深的目录 但是如何再次起来呢 我正在尝试得
  • 如何在 pySpark 数据框中添加行 ID [重复]

    这个问题在这里已经有答案了 我有一个 csv 文件 我在 pyspark 中将其转换为 DataFrame df 经过一番改造后 我想在 df 中添加一列 这应该是简单的行 ID 从 0 或 1 开始到 N 我将 df 转换为 rdd 并使
  • Pandas Dataframe.to_csv 小数=',' 不起作用

    在 Python 中 我正在将 Pandas Dataframe 写入 csv 文件 并希望将小数分隔符更改为逗号 像这样 results to csv D Data Kaeashi BigData ProcessMining Voorbe
  • 检查对象是否是字符串列表的列表?

    是什么elegant检查对象是否是字符串列表列表的方法 没有嵌套循环 也许这里必须是构造结构化迭代的常规方法 UPD 像这样的东西 l a b c d 1 3 e 2 f def recurse iterable levels result
  • 如何计算具有较大中间值的总和

    我想计算 for n m两个值都是 1000 以内的整数 最终结果是一个不大于 1000 的数字n但中间值对于 python 来说太大了 无法处理 你怎么解决这个问题 我将函数定义如下 from scipy misc import comb
  • 中断QThread睡眠

    我想知道如何暂停 QThread 然后在收到信号时恢复 我已阅读并知道我可以做这样的事情 def run self self ready False while not self ready self sleep 1 QtCore Slot
  • Django外键:获取相关模型?

    是否可以通过外键字段本身获取外键的相关模型 例如 如果我有 3 个模型 class ModelA models Model field1 models CharField max length 10 class ModelB models
  • Django 自定义查询集过滤器

    在 Django 中 是否有一种标准方法可以为查询集编写复杂的自定义过滤器 就像我能写的一样 MyClass objects all filter field val 我想做这样的事情 MyClass objects all filter
  • VS Code Pylance 不突出显示变量和模块

    我正在使用带有 Python 和 Pylance 扩展的 VS Code 我遇到的问题是 Pylance 扩展没有对模块和数据框等内容进行语法突出显示 我希望顶部的模块为绿色 df 变量为蓝色 我正在使用默认的深色 颜色主题 这是我的 VS
  • 将 Python 3 的“范围”“向后移植”到 Python 2 是一个坏主意吗?

    我的一门课程要求用 Python 完成作业 作为练习 我一直使用如下脚本确保我的程序可以在 Python 2 和 Python 3 中运行 bin bash Run some PyUnit tests python2 test py pyt
  • 使用 pyinstaller 制作的可执行文件出现运行时错误

    所以我使用 Pygame 制作了一个游戏 现在我想用它制作一个可执行文件 首选独立可执行文件 所以我用它来制作可执行文件 pyinstaller onefile main py 编译顺利 但运行时出现错误 这是错误 Traceback mo
  • 将glade接口放入python中

    我在 Glade 中制作了一个 gui 我想将其放入 python 程序中 我正在调整我在网上找到的教程中的说明 以将其加载到我的林间空地文件中 http www pygtk org articles pygtk glade gui Cre
  • 如果我更改当前工作目录,为什么 __file__ 会变成无效路径?

    执行中test py from tmp import os print os path abspath file os chdir var print os path abspath file output tmp test py var
  • pylint:忽略 rcfile 中的多个

    在我的 django 项目中 我使用的是外部编写的应用程序 但编写得很糟糕 现在我想从我的 pylint 报告中忽略这个应用程序 但是我无法让 pylint 忽略它 Pylint 已经忽略了南方的迁移 如下所示 MASTER ignore

随机推荐

  • mysql 查看help手册

    作用 xff1a 解决 记得函数 xff0c 不记得语法的窘境 查看总的目录 mysql gt contents 其下的是各大分类 You asked for help about help category 34 Contents 34
  • vim 查看help命令

    并不需要查找vim 的工作手册 xff0c vim 自带说明书 步骤1 xff1a xff1a help 步骤2 xff1a quickref 步骤3 xff1a 找到 步骤4 xff1a ctrl键 键 同时按下 步骤5 xff1a 会来
  • ubuntu自带的命令查看

    xff1a man ls 比如查ls 命令
  • 【无标题】安装ROS E: 无法定位软件包 ros-melodic-desktop-full

    一 遇到问题 二 可能的原因和解决方法 1 源换一下 xff1a xff08 1 xff09 我是看这位大佬的 5条消息 记录 解决Ubuntu安装ros报错E Unable to locate package ros kinetic de
  • taskset命令:查看、指定进程运行在哪个cpu上

    reference xff1a https baijiahao baidu com s id 61 1592330790387359245 amp wfr 61 spider amp for 61 pc https www cnblogs
  • 超详细手把手教你四种方案彻底解决MAC npm install -g 报错permission denied

    在日常开发过程中 xff0c 我们使用MAC执行 npm install g 下载安装包的时候 xff0c 经常会遇到如下报错 xff1a permission denied 报错详情 xxx 64 CN C02xxxxx6M npm in
  • Ubuntu16.04 LTS 安装VNC Server开启远程桌面

    转载自http blog csdn net longhr article details 51657610 comments 查了各种博客 xff0c 有推荐XRDP的 xff0c 建议安装VNC的 xff0c 都不好用 xff0c 建议按
  • O2OA平台下载及安装部署

    平台下载及安装部署 O2OA安装部署非常方便 xff0c 只需要简单的三步即可完成安装 平台内部集成了多项管理命令 xff0c 可以进行系统升级 xff0c 管理员密码修改 xff0c 数据导出恢复等管理操作 一 下载安装包并且解压 安装包
  • 访问和操作H2数据库

    访问和操作H2数据库 O2OA平台内嵌了H2数据库 xff0c 管理员可以通过支持JDBC的客户端对H2数据库进行访问和数据操作 O2OA默认内嵌了H2数据库 xff0c H2数据库支持两种访问方式 xff1a 一 以WEB方式访问数据库
  • O2OA人员身份,人员属性

    人员信息创建 从组织管理应用中进入个人管理界面后 xff0c 点击左侧上方的添加按钮 xff0c 如下图所示 xff1a 在右侧显示的界面中填写人员信息 xff1a 人员名称 手机号码 唯一编码 xff08 以上必填 xff0c 其他选填写
  • O2OA的SSO与单点认证

    SSO与单点认证 与其他系统实现单点登入 1 1 URL传递加密参数方式 这种方式是比较通用简单的实现方式 xff0c 应急门户将用户登录信息 xff08 用户ID xff09 以URL参数方式传递给被集成系统 xff0c 被集成系统通过接
  • newman和Jenkins(postname和Jenkins的结合使用)

    Newman介绍 Newman 是 Postman 推出的一个 nodejs 库 xff0c 直接来说就是 Postman 的json文件可以在命令行执行的插件 Newman 可以方便地运行和测试集合 xff0c 并用之构造接口自动化测试和
  • SmartBI入门(一)介绍和安装

    一 SmartBI系统介绍 商业智能 xff08 Business Intelligence xff0c 简称 xff1a BI xff09 xff0c 又称商业智慧或商务智能 xff0c 指用现代数据仓库技术 线上分析处理技术 数据挖掘和
  • SmartBI入门(二)配置SmartBI

    具体可以参考文档 Smartbi Config页面介绍 Smartbi V10帮助中心 SmartBI配置 如果是首次访问 xff0c 需要设置 管理员账号 密码 xff0c 以便下次登录配置界面时验证 xff0c 设置后用用户名密码登录即
  • 求助 关于A-Frame带有动画模型的导入

    哪位大神知道导入带有动画的模型后 如何调用模型自带的动画 gltf格式的
  • SmartBI入门(三)数据源配置

    1 设置数据连接 配置连接 2 选择数据表 创建的数据源 xff0c 点击数据库管理 xff0c 添加实际报表需要的数据表 3 数据库展现
  • 再见2014,你好2015

    过去就是过去了 2014年再见 xff0c 2015年你好 xff01 回首 总结也只是慰藉 1999年12月至今 xff0c 经历了整整十五个曾经 xff0c 这其中的波折 xff0c 怎是我这样的小辈能够理解的 借这个平台也只是为了感谢
  • idea报错 Artifact web:war exploded: Error during artifact deployment. See server log for details.

    因为tomcat把报错信息重定向到日志文件中了 xff0c 所以在控制台找不到报错信息 所以需要看一下tomcat日志文件报错信息 xff0c 一般情况下都有报错 日志的路径默认是在C Users 你的用户名 AppData Local J
  • Unity离线用户手册打开缓慢、卡顿

    Unity中文离线用户手册下载页面 https docs unity3d com cn 2019 4 Manual OfflineDocumentation html 文档包下载地址 xff08 需要FQ xff09 https stora
  • Python MapReduce 案例

    map t py import sys import re p 61 re compile r 39 w 43 39 for line in sys stdin ss 61 line strip split 39 39 for s in s