为什么 SparkR(在数据块上)在使用 spark 数据帧时不显示摘要函数输出?
Why does SparkR (on databricks) not display summary function output when working with spark dataframes?
在数据块上,从 R 数据帧开始:
x <- data.frame(n=1:1000)
现在 SparkR 汇总函数提供了不错的输出:
SparkR::summary(x)
n
分钟。 : 1.0
第一区:250.8
中位数:500.5
平均值:500.5
第三题:750.2
最大限度。 :1000.0
命令耗时 0.02 秒——@ 于 2020 年 9 月 9 日,9:46:57 上午 aa_cluster_6w
接下来我会将 R 数据帧转换为 spark 数据帧:
y <- SparkR::createDataFrame(x=x)
我能够确认对象 y 确实是一个 Spark Dataframe:
class(y)
[1] "SparkDataFrame"
属性(“包”)
[1] "SparkR"
命令耗时 0.01 秒——@ 于 2020 年 9 月 9 日,9:47:35 上午 aa_cluster_6w
不幸的是,当我尝试总结时,SparkR 库没有输出函数结果:
SparkR::summary(y)
SparkDataFrame[摘要:字符串,n:string]
命令耗时 0.48 秒——@ 于 2020 年 9 月 9 日,9:47:16 上午 aa_cluster_6w
我在写问题的时候自己想出了如何回答这个问题。所以我还不如自己记录下答案:
Spark R 汇总函数returns 数据框,不是文本,因此必须将其转换为文本。两种方法如下:
display(SparkR::summary(y))
或
SparkR::collect(SparkR::summary(y))
显示函数将 Spark Dataframes 打印为数据块笔记本中的良好输出。
Spark R collect 函数将 spark 数据帧拉入活动集群驱动程序上 RAM 中的本地对象。此操作对于包含统计摘要的微型数据帧来说是微不足道的。
在数据块上,从 R 数据帧开始:
x <- data.frame(n=1:1000)
现在 SparkR 汇总函数提供了不错的输出:
SparkR::summary(x)
n
分钟。 : 1.0
第一区:250.8
中位数:500.5
平均值:500.5
第三题:750.2
最大限度。 :1000.0
命令耗时 0.02 秒——@ 于 2020 年 9 月 9 日,9:46:57 上午 aa_cluster_6w
接下来我会将 R 数据帧转换为 spark 数据帧:
y <- SparkR::createDataFrame(x=x)
我能够确认对象 y 确实是一个 Spark Dataframe:
class(y)
[1] "SparkDataFrame" 属性(“包”) [1] "SparkR"
命令耗时 0.01 秒——@ 于 2020 年 9 月 9 日,9:47:35 上午 aa_cluster_6w
不幸的是,当我尝试总结时,SparkR 库没有输出函数结果:
SparkR::summary(y)
SparkDataFrame[摘要:字符串,n:string]
命令耗时 0.48 秒——@ 于 2020 年 9 月 9 日,9:47:16 上午 aa_cluster_6w
我在写问题的时候自己想出了如何回答这个问题。所以我还不如自己记录下答案:
Spark R 汇总函数returns 数据框,不是文本,因此必须将其转换为文本。两种方法如下:
display(SparkR::summary(y))
或
SparkR::collect(SparkR::summary(y))
显示函数将 Spark Dataframes 打印为数据块笔记本中的良好输出。
Spark R collect 函数将 spark 数据帧拉入活动集群驱动程序上 RAM 中的本地对象。此操作对于包含统计摘要的微型数据帧来说是微不足道的。