Добавить столбец в DataFrame в sparkR

Я хотел бы добавить столбец, заполненный символом N в DataFrame в SparkR. Я бы сделал это с кодом не-SparkR:

df$new_column <- "N"

Но с SparkR я получаю следующую ошибку:

Error: class(value) == "Column" || is.null(value) is not TRUE

Я пытался сумасшедшие вещи, чтобы управлять им, я смог создать столбец, используя другой (существующий), с df <- withColumn(df, "new_column", df$existing_column), но эта простая вещь, нет...

Любая помощь?

Спасибо.

Ответ 1

SparkR::lit() решением будет использование функции SparkR::lit():

df_new = withColumn(df, "new_column_name", lit("N"))

Изменить 17/17/2019

В новых версиях Spark также работает следующее:

df1$new_column <- "N"
df1[["new_column"]] <- "N"

Ответ 2

Есть более простой способ использовать SparkR::lit() который более точно имитирует синтаксис, который вы пробовали сначала:

df$new_column <- lit("N")