Scala - Как добавить столбец в DataFrame, сохраняя исходное имя столбца? - PullRequest
0 голосов
/ 27 сентября 2018

У меня есть базовый DataFrame, содержащий все данные, и несколько производных DataFrames, которые я впоследствии создал из базовой группировки DF, объединений и т. Д.

Каждый раз, когда я хочу добавить столбец к последнемуDataFrame, содержащий наиболее важные данные, я должен сделать что-то вроде этого:

val theMostRelevantFinalDf = olderDF.withColumn("new_date_", to_utc_timestamp(unix_timestamp(col("new_date"))
  .cast(TimestampType), "UTC").cast(StringType)).drop($"new_date")

Как вы можете видеть, я должен изменить исходное имя столбца на new_date_

Но я хочу столбецимя остается прежним.Однако, если я не изменю имя, столбец будет удален.Так что переименование - это не слишком приятное решение.

Как сохранить исходное имя столбца при добавлении столбца?

1 Ответ

0 голосов
/ 27 сентября 2018

Насколько я знаю, вы не можете создать два столбца с одним и тем же именем в преобразовании DataFrame.Я переименовываю новый столбец в более старое имя, например

val theMostRelevantFinalDf = olderDF.withColumn("new_date_", to_utc_timestamp(unix_timestamp(col("new_date"))
  .cast(TimestampType), "UTC").cast(StringType)).drop($"new_date").withColumnRenamed("new_date_", "new_date")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...