小编Rin*_*haj的帖子

根据行值连接列名

我有一个包含 3 列的 R 数据框,其中包含值 0 或 1。当值是 1 时,我需要创建一个列作为列名的串联,用“&”分隔。以下代码使用空格 '' 作为分隔符,但当我将其更改为 '&' 时失败。

代码:

A = c(1,0,1,0,0,1)
B = c(1,1,1,0,1,0)
C = c(0,0,0,1,1,1)
data = data.frame(A, B, C)
data$New = paste(ifelse(data$A == 1, "A", ""),
                 ifelse(data$B == 1, "B", ""),
                 ifelse(data$C == 1, "C", ""), sep = '')
data
Run Code Online (Sandbox Code Playgroud)

输出:

  A B C New
1 1 1 0  AB
2 0 1 0   B
3 1 1 0  AB
4 0 0 1   C
5 0 1 1  BC …
Run Code Online (Sandbox Code Playgroud)

r dataframe

3
推荐指数
1
解决办法
428
查看次数

如何计算 Spark DataFrame 中的行中位数

我有一个以下格式的 Spark 数据框。

df = spark.createDataFrame([(1, 2, 3), (1, 4, 100), (20, 30, 50)],['a', 'b', 'c'])
df.show()
Run Code Online (Sandbox Code Playgroud)

输入:

在此输入图像描述

我想添加一个新列“中位数”作为列“a”、“b”、“c”的中位数。如何在 PySpark 中执行此操作。

预期输出:

在此输入图像描述

我正在使用 Spark 2.3.1

apache-spark apache-spark-sql pyspark

3
推荐指数
1
解决办法
2470
查看次数

标签 统计

apache-spark ×1

apache-spark-sql ×1

dataframe ×1

pyspark ×1

r ×1