加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python循环函数问题与pyspark

发布时间:2020-12-20 11:07:30 所属栏目:Python 来源:网络整理
导读:我是相对较新的火花,当我尝试在导入pyspark函数后使用 python的builtin round()函数时遇到了问题.这似乎与我如何导入pyspark函数有关,但我不确定区别是什么或为什么一种方式会导致问题而另一种方法不会. 预期行为: import pyspark.sql.functionsprint(round
我是相对较新的火花,当我尝试在导入pyspark函数后使用 python的builtin round()函数时遇到了问题.这似乎与我如何导入pyspark函数有关,但我不确定区别是什么或为什么一种方式会导致问题而另一种方法不会.

预期行为:

import pyspark.sql.functions
print(round(3.14159265359,2))
>>> 3.14

意外行为:

from pyspark.sql.functions import *
print(round(3.14159265359,2))
>>> ERROR

AttributeError                            Traceback (most recent call last)
<ipython-input-1-50155ca4fa82> in <module>()
      1 from pyspark.sql.functions import *
----> 2 print(round(3.1454848383,2))

/opt/spark/python/pyspark/sql/functions.py in round(col,scale)
    503     """
    504     sc = SparkContext._active_spark_context
--> 505     return Column(sc._jvm.functions.round(_to_java_column(col),scale))
    506 
    507 

AttributeError: 'NoneType' object has no attribute '_jvm'

解决方法

将pyspark.sql.functions导入为F以避免冲突.

通过这种方式,您可以正常使用所有python内置函数,当您想使用pyspark函数时,可以将它们用作F.round

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读