apache-spark - 如何在spark中连接数据框中的字符串和列?

标签 apache-spark dataframe spark-dataframe

我有今天的日期作为字符串。我需要将它与作为数据帧中的列存在的时间值连接起来。

当我尝试这个时,我得到 String Index out of bounds异常(exception)。

我的代码:

val todaydate = LocalDate.now().toString()
println(todaydate)  // o/p: 2016-12-10

val todayrec_cutoff = todaydate + (" ") + df.col("colname")

预期输出:
2016-12-10 05:00 
2016-12-10 22:30

最佳答案

**Please refer to below Scala code for string concat in prefix and postfix way.**


import org.apache.spark.sql.functions._
val empDF =  MongoSpark.load(spark, readConfig) //dataframe empDF is loaded from Mongo DB using MongoSpark 

val prefixVal= "PrefixArkay " //variable string
val postfixVal= " PostfixArkay"

//Prefix
val finalPreDF = ipDF.withColumn("EMP", concat(lit(prefix),empDF.col("EMP")) )
println("finalPreDF.show-> " + finalPreDF.show())

//Output will be as below
+-------------------+
|                EMP|
+-------------------+
|PrefixArkay DineshS|
|+------------------+


val finalPostDF = ipDF.withColumn("EMP", concat(empDF.col("EMP"),lit(postfixVal)) )
println("finalPostDF.show-> " + finalPostDF .show())

//Output will be as below
+--------------------+
|                 EMP|
+--------------------+
|DineshS PostfixArkay|
|+-------------------+

关于apache-spark - 如何在spark中连接数据框中的字符串和列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41071535/

相关文章:

r - 有条件地从数据框中删除

pandas - 来自 2 个数据框的日期相关计算 - 平均 6 个月的返回

r - 在 R 和 Sparklyr 中,将表写入 .CSV (spark_write_csv) 会生成许多文件,而不是一个文件。为什么?我可以改变这一点吗?

apache-spark - 应用程序中的阶段是否在 spark 中并行运行?

python - 使用 Pandas 读取数据(.dat 文件)

apache-spark - 为什么在本地模式下加入 spark 这么慢?

apache-spark - 如何检索输出大小和从 Spark UI 写入的记录等指标?

python - 如何将二进制文件从 hdfs 读入 Spark 数据帧?

apache-spark - 使用 Apache Spark 时如何处理数据库的背压?

azure - 如何获取 Azure 容器文件夹的正确路径?