【发布时间】:2020-10-16 04:45:45
【问题描述】:
我有一列包含val a = List(123,656,453,7889,64396) 的值。
我想使用像lpad(col("a"), a.length, "0") 这样的lpad。基本上,我不确定列表中数字的长度,所以我必须检查每个数字的长度,然后用 Os 填充它。
基本上我有这个输入数据框:
(00123,000656,000453,007889,064396)。并申请
val getRandom = udf((seed: String) => new Random(seed).shuffle(seed.toCharArray.iterator).mkString("")
在数据框上。但是我的随机化输出删除了 0。我想把它画出来。
| inpCol | newCol |
------------------------
| 154200231 | 123 |
| 2343000566 | 656 |
| 6543000453 | 345 |
【问题讨论】:
-
你的意思是left pad还是
lpad到底是什么? -
lpad 功能准确
-
你能显示你想要的输出吗?
-
好的,我有一个解决方案。我说对了吗,
a已经将这些数字作为字符串包含了? -
我正在使用 val a= sqlContext.table(tbl).select("colNm").collect.map(_(0)).toString
标签: scala apache-spark apache-spark-sql scala-collections