- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在将数据帧转换为管道分隔值并将其写入 Spark shell (scala) 中的文件。但我对 PySpark 方面一无所知。非常感谢您的帮助。
特别是我不知道如何用'|'连接每一列
这是scala版本
scala> val stgDF = spark.read.table("tbl")
stgDF: org.apache.spark.sql.DataFrame = [name: string, num: int]
scala> stgDF.map(line => line.mkString("|")).take(2) //How do I do in PySpark?
res0: Array[String] = Array(spark|2001, yarn|2002)
scala> val tmp = stgDF.map(line => line.mkString("|")).rdd
tmp: org.apache.spark.rdd.RDD[String] = MapPartitionsRDD[20] at rdd at <console>:25
scala> tmp.saveAsTextFile("stgDF")
最佳答案
像这样:
stgDF.rdd.map(lambda line: "|".join([str(x) for x in line]))
解释:
'|'.join
等同于 Scala 中的 mkString
- 它以列表作为参数,然后连接列表中的元素,分隔符为 '|'
。列表理解 [str(x) for x in line]
只是在串联之前将 line 的所有元素转换为字符串。
关于python - PySpark 中的 mkString 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47019662/
我想在 Scala 中执行以下操作: val l = List("An apple", "a pear", "a grapefruit", "some bread") ... some one-lin
我想知道当我想做一些特定于元素的事情时,将元素数组转换为字符串的最佳方法是什么。例如说我有 case class A(x: Int, y: Int) val list = List(A(2, 3),
假设我有一个元组列表 ('a', 1), ('b', 2)... 如何将其转换为以下格式的字符串 a 1 b 2 我尝试使用 collection.map(_.mkString('\t')) 但是我收
我正在将数据帧转换为管道分隔值并将其写入 Spark shell (scala) 中的文件。但我对 PySpark 方面一无所知。非常感谢您的帮助。 特别是我不知道如何用'|'连接每一列 这是scal
我目前正在尝试 Scala 中的东西,试图习惯函数式编程以及再次学习一门新语言(自上次以来已经有一段时间了)。 现在给出一个字符串列表,如果我想将它们合并成一个长字符串(例如 "scala", "is
scala> Seq("abc", null).mkString(" ") res0: String = abc null 但我只想得到“abc” 有没有跳过空值的 Scala 方法? 最佳答案 sc
我能够在 scala 中成功使用 mkString 方法。但是,当尝试使用 java 执行此操作时,java7 不存在 mkString 方法。那么有什么方法可以让我在java中做同样的事情吗? 下面
scala> def joinWith(separator: String, values: String*): String = { | Array(values).mkStr
我改变了这一行: val ratedNum = rows.sortBy(- _._2).map{case (user , ratednum) => ratednum}.take(20).mkStrin
我是一名优秀的程序员,十分优秀!