dataframe - 如何从spark(scala)中的不同年、月、日列获取日期

标签 dataframe scala apache-spark date apache-spark-sql

我有一个 DataFrame,其中包含以下数据:

+----+-----+---+-----+
|Year|Month|Day|...  |
+----+-----+---+-----+
|2012|    2| 20|     |
|2011|    7|  6|     |
|2015|    3| 15|     |

我想添加一个包含日期的列

最佳答案

将列合并在一起,然后使用 unix_timestampto_date 获取时间戳列。对于输入数据帧df:

df.withColumn("merge", concat_ws("-", $"Year", $"Month", $"Day"))
  .withColumn("date", to_date(unix_timestamp($"merge", "yyyy-MM-dd").cast("timestamp")))
  .drop("merge")

关于dataframe - 如何从spark(scala)中的不同年、月、日列获取日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47151297/

相关文章:

r - 获取两列中表示的所有类别组合的摘要数据框

python - 计算 pandas 数据框行中 Python 列表中元素的出现次数

python - pandas Dataframe groupby,按绝对值排序组

apache-spark - 如何重新启动停止的 Spark 上下文?

hadoop - Spark : Silently execute sc. wholeTextFiles

apache-spark - 在 Spark 中将日期转换为 ISO 周日期

python - 如何将查询列表传递给 pandas 数据框,并输出结果列表?

scala - 按日期对 Spark DataFrame 列的数组进行排序

java - 在 Java 程序中编译并运行 Scala 文件

mysql - 在 scala 中编写脚本以连接两个 mysql 表并创建一个对象(quill)