【发布时间】:2022-01-02 00:31:40
【问题描述】:
我想使用 pyspark DataFrame 函数而不是 SQL 查询来复制以下代码。
spark.sql("select date from walmart_stock order by high desc limit 1").show()
【问题讨论】:
标签: apache-spark pyspark
我想使用 pyspark DataFrame 函数而不是 SQL 查询来复制以下代码。
spark.sql("select date from walmart_stock order by high desc limit 1").show()
【问题讨论】:
标签: apache-spark pyspark
如果您从链接的 CSV 文件开始,这里是代码。您应该认识 SQL 函数。请注意,我们使用inferSchema 选项来直接将数字解析为双精度数并获得正确的顺序(默认字符串类型无法按预期工作)。另一种方法是在读取 CSV 后强制转换列。
spark.read
.option("header", "true")
.option("inferSchema", "true")
.csv("walmart_stock.csv")
.orderBy(f.col("High"), desc=True)
.limit(1)
.select("Date")
.show()
产生
+----------+
| Date|
+----------+
|2015-11-13|
+----------+
【讨论】: