当前位置: 首页 > 知识库问答 >
问题:

description()函数在行上而不是列上

龙繁
2023-03-14

如https://databricks.com/blog/2015/06/02/statistic-and-mathology-functions-with-dataframes-in-spark.html所述

共有1个答案

赵立果
2023-03-14

你可以做你自己的UDF。您要么为每个数量创建一个单独的UDF,要么将所有内容放在一个UDF中,返回一个复杂的结果:

val df = Seq(
  (1.0,2.0,3.0,4.0,5.0)  
).toDF("x1","x2","x3","x4","x5")


val describe = udf(
  { xs : Seq[Double] => 

    val xmin = xs.min
    val xmax = xs.max
    val mean = xs.sum/xs.size.toDouble

    (xmin,xmax,mean)
  }
)

df
.withColumn("describe",describe(array("*")))
.withColumn("min",$"describe._1")
.withColumn("max",$"describe._2")
.withColumn("mean",$"describe._3")
.drop($"describe")
.show

给予:

+---+---+---+---+---+---+---+----+
| x1| x2| x3| x4| x5|min|max|mean|
+---+---+---+---+---+---+---+----+
|1.0|2.0|3.0|4.0|5.0|1.0|5.0| 3.0|
+---+---+---+---+---+---+---+----+
 类似资料:
  • 我需要在我的服务器上运行函数 但是由于安全原因被禁用,但是PHP执行函数正在运行和。 是否可以使用php函数执行相同的操作? 禁用功能 链接,符号链接,执行,通过,proc_close,proc_get_status,proc_open,shell_exec,系统,流行,关闭

  • 案例1: 使用时: 获取异常: 看到的超文本标记语言套件异常:java.lang.RuntimeException:java.lang.RuntimeException: GoogleChrome在路径中找不到!请将包含“chrome.exe”或“google-chrome”或“GoogleChrome”的目录添加到您的PATH环境可用,或显式指定GoogleChrome路径,如下所示:*goog

  • 问题内容: 我已经写了这个功能: 哪个有效,并在单列记录类型中返回结果。请注意,可能会返回多于一行。 现在的响应是: 我想获得的结果不是记录,而是多列 有没有一种方法可以从PostgreSQL函数返回多列 问题答案: 我可以通过以下查询看到它:

  • 为了简单起见,我将column称为col。为什么矩阵是[行,列]而不是[列,行]?这给我带来了很多头痛和困惑。 我的思路是这样的:1.一个正则数组, 就像一个矩阵,有一行和多列。它的符号是这样的:啊,如果我们有另一个维度, 现在有行了。因此,让我们在'n',arr[n,rows]之后记下这些行,但现实告诉我们,情况并非如此。 对不起,如果我混淆了你,对不起我的无知。

  • 我创建了一个测试项目(maven)来测试REST API的性能。我正在使用Jeter插件 这是我的pom片段 我有一个Jenkins文件在我的项目像这样 当我触发Jenkins上的构建时,构建成功了,我在控制台输出中看到了这一点 问题是,它什么也做不了。Performace趋势图没有显示任何东西。 如果我在本地机器上运行相同的项目,它工作得非常好。我在日志中看到类似的东西,证实了这一点。生成的输出

  • 问题内容: 我正在运行Jenkins pipline(在Jenkins v2.58上),并且正在尝试使生成版本在从属服务器而非主服务器上运行。但是,无论我在Jenkinsfile中尝试使用哪种魔术,Jenkins都可以在master上运行。 如何指定从执行器? 这是我的玩具Jenkinsfile,如果有帮助的话: 问题答案: 正确的语法似乎是: 另外,请确保您的主机正在运行。