Pyspark笔记一

1. pyspark读csv文件后无法显示中文

#pyspark读取csv格式时,不能显示中文
df = spark.read.csv(r"hdfs://mymaster:8020/user/root/data_spark.csv", schema=schema)

#解决方法,加入encoding='gbk',即
df = spark.read.csv(r"hdfs://mymaster:8020/user/root/data_spark.csv", schema=schema, encoding='gbk')

2. 查看和修改默认编码格式

import sys
#查看默认编码格式
print(sys.getdefaultencoding())

#修改编码格式
sys.setdefaultencoding('utf8')

#参考:https://blog.csdn.net/abc_321a/article/details/81945577

3. pyspark导入spark

原因:python中没有默认的sparksession,需要导入

#方法
from pyspark import SparkContext
from pyspark.sql.session import SparkSession

sc = SparkContext('local', 'test')
spark = SparkSession(sc)
#之后即可以使用spark
#参考:https://blog.csdn.net/zt7524/article/details/98173650

4. Pyspark引入col函数出错,ImportError: cannot import name 'Col' from 'pyspark.sql.functions'

#有人建议的是,不过我用的时候会报错
from pyspark.sql.functions import col

#后来测试了一种方式可以用
from pyspark.sql import Row, column

#也试过另一个参考,不过要更新pyspark包之类的,于是暂时没有用该方法,也就是安装pyspark-stubs包:pip install pyspark-stubs
#参考:http://isunix.github.io/blog/2019/06/04/pysparkzhong-yin-ru-colhan-shu-de-fang-shi/
#参考:https://stackoverflow.com/questions/40163106/cannot-find-col-function-in-pyspark
#参考:https://pypi.org/project/pyspark-stubs/

猜你喜欢

转载自www.cnblogs.com/qi-yuan-008/p/11768161.html
今日推荐