python 实现 map的分词原理

2023-10-20 12:45:33 浏览数 (2)

Map 的作用,即数据的映射,用于把一组键值对映射成另一组新的键值对。 白话就是对数据按照一定的格式进行归整。 举个例子,有一遍文章,需要对文章中出现过的相同的单词进行归类,期望结果如下: 将map的输出作为reduce的输入的过程就是shuffle了,这个是mapreduce优化的重点地方。

代码语言:javascript复制
{"1", "are" : 1}
{"1", "are" : 1}
代码语言:javascript复制
#encodeing=utf-8
import sys
for line in sys.stdin:
        ss = line.strip().split(' ')
        for word in ss:
                print 't'.join([word.strip(), '1'])

测试数据: THE_MAN_OF_PROPERTY.txt,这里存一篇网上随机找的一篇英文长篇文章。

执行命令,并打印结果:

代码语言:javascript复制
cat `THE_MAN_OF_PROPERTY.txt`  | `python map.py` | `sort -k 1  > 1.txt`

结果:

代码语言:javascript复制
to	1
to	1
to	1
today	1
tool	1
topic	1
two	1
two	1
···
variants	1
variants	1
variants	1
···

0 人点赞