标签:word Python text 练习 items Spark txt local spark
一、安装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
文件中加入
图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、查看运行结果
图四运行结果
标签:word,Python,text,练习,items,Spark,txt,local,spark 来源: https://www.cnblogs.com/shijiong/p/15974108.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。