python – 访问PySpark中的count列
作者:互联网
code:
mydf = testDF.groupBy(testDF.word).count()
mydf.show()
output:
+-----------+-----+
| word|count|
+-----------+-----+
| she| 2208|
| mothers| 93|
| poet| 59|
| moving| 18|
| active| 6|
| foot| 169|
我想根据字数按降序排序这个数据框.
code:
countDF = mydf.orderBy(mydf.count.desc())
countDF.show()
Error:
AttributeError: 'function' object has no attribute 'desc'
请告诉我我哪里出错了.
解决方法:
好吧,点符号不是访问列的最佳方法.虽然DataFrame提供了列感知__getattr__,但您可能会遇到类似这样的冲突,其中name将解析为方法(此处为DataFrame.count
),因此最好使用括号表示法:
mydf.orderBy(mydf["count"].desc())
或col功能:
from pyspark.sql.functions import col
mydf.orderBy(col("count").desc())
引用列.
标签:python,apache-spark,apache-spark-sql,pyspark,pyspark-sql 来源: https://codeday.me/bug/20190623/1268308.html