好友
阅读权限10
听众
最后登录1970-1-1
|
最近在学习用Python调用spark实现词频的时候,遇到了个问题,就是txt文件内容是中文的时候的时候,输出结果是乱码。网上搜说spark有默认编码,读不了gbk的,解决方法都是java的,没找到Python的。
有学Python的大佬知道怎么解决吗?
源码如下:
# -*-coding:utf-8-*-
import sys
from pyspark import SparkConf,SparkContext
if __name__ == '__main__':
if len(sys.argv) != 2:
print("Usage: wordcount <input>",file=sys.stderr)
sys.exit(-1)
conf = SparkConf()
sc = SparkContext(conf = conf)
counts = sc.textFile(sys.argv[1])\
.flatMap(lambda line:line.split("\t"))\
.map(lambda x:(x,1))\
.reduceByKey(lambda a,b:a+b)
output = counts.collect()
for (word,count) in output:
print("%s: %i" %(word,count)) |
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|