百木园-与人分享,
就是让自己快乐。

2.安装Spark与Python练习

一、安装Spark

1、检查基础环境hadoop,jdk

2、下载spark

3、解压,文件夹重命名、权限

4、配置文件

 配置spark的classpath

$ cd /usr/local/spark
$ cp ./conf/spark-env.sh.template ./conf/spark-env.sh   #拷贝配置文件

在文件中加上如下一行内容:

export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)

保存配置文件后,就可以启动、运行Spark

 

5、环境变量

在gedit ~/.bashrc文件中加入

aa

图1环境变量

source ~/.bashrc    # 环境变量生效

 

6、试运行Python代码

执行如下命令启动pyspark(无参数,默认是local[*]模式)

 cd /usr/local/spark
 ./bin/pyspark

启动pyspark,成功后在输出信息的末尾可以看到“>>>”的命令提示符

在里面输入python代码进行测试:

图2pyspark运行界面

 

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

1、准备文本文件

准备英语文本 f1.txt

图三英语文本

2、读文件

path=\'/home/hadoop/wc/f1.txt\'
with open(path) as f:
    text=f.read()

3、预处理:大小写,标点符号,停用词

text = text.lower()                           # 转为小写字母
    for ch in \'!\"#$%&()*+,-./:;<=>?@[\\\\]^_‘{|}~\':    
        text = text.replace(ch, \' \')

4、分词

words = text.split()

 

5、统计每个单词出现的次数

counts={}
for word in words:
    # 若字典中无当前词语则创建一个键值对,若有则将原有值加1
    counts[word] = counts.get(word, 0) + 1 
    
items = list(counts.items())               # 将无序的字典类型转换为有序的列表类型

6、按词频大小排序

items.sort(key=lambda x: x[1], reverse=True)      # 按统计值从高到低排序(以第二列排序)
for i in range(len(items)):
    word, count = items[i]
    print(\"{0:<10}{1:>5}\".format(word, count))              # 格式化输出词频统计结果
    open(\'output.txt\', \'a\').write(word+\"\\t\\t\\t\"+str(count)+\"\\n\")    # 写入output.txt中

7、查看运行结果

 图四运行结果


来源:https://www.cnblogs.com/shijiong/p/15974108.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » 2.安装Spark与Python练习

相关推荐

  • 暂无文章