小编Ven*_*thi的帖子

如何融化Spark DataFrame?

PySpark中的Apache Spark中是否存在等效的Pandas Melt函数,或者至少在Scala中?

我到目前为止在python中运行了一个示例数据集,现在我想将Spark用于整个数据集.

提前致谢.

melt apache-spark apache-spark-sql pyspark

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

比较 Scala Spark 中的两个数组列

我有一个下面给出的格式的数据框。

movieId1 | genreList1              | genreList2
--------------------------------------------------
1        |[Adventure,Comedy]       |[Adventure]
2        |[Animation,Drama,War]    |[War,Drama]
3        |[Adventure,Drama]        |[Drama,War]
Run Code Online (Sandbox Code Playgroud)

并尝试创建另一个标志列,显示流派列表 2 是否是流派列表 1 的子集

movieId1 | genreList1              | genreList2        | Flag
---------------------------------------------------------------
1        |[Adventure,Comedy]       | [Adventure]       |1
2        |[Animation,Drama,War]    | [War,Drama]       |1
3        |[Adventure,Drama]        | [Drama,War]       |0
Run Code Online (Sandbox Code Playgroud)

我试过这个

def intersect_check(a: Array[String], b: Array[String]): Int = {
  if (b.sameElements(a.intersect(b))) { return 1 } 
  else { return 2 }
}

def intersect_check_udf =
  udf((colvalue1: Array[String], colvalue2: Array[String]) => intersect_check(colvalue1, colvalue2))

data = data.withColumn("Flag", intersect_check_udf(col("genreList1"), col("genreList2"))) …
Run Code Online (Sandbox Code Playgroud)

scala apache-spark array-column

2
推荐指数
1
解决办法
7126
查看次数