将空列替换为 r 中 spark 数据框中另一列中的值

Replace empty columns to the value in another column in spark dataframe in r

我有一个 Spark 数据框,它由一行空值组成。我想将 null 替换为另一列中的值。

A       B
2017    209
2019    208
2016    NA
2016    NA
2018    209

预期输出:

A       B
2017    209
2019    208
2016    2016
2016    2016
2018    209

我试过使用

na.replace

ifelse(is.na(df$B), df$A, df$B)

df$B[is.na(df$B)] = as.character(df$A[is.na(df$B)]

但我得到的输出没有任何变化

使用 dplyr:

library(dplyr)
df <- df%>%
  mutate(B= ifelse(is.na(B),A,B))

您需要在 spark 数据帧上使用特定的 SparkR 函数。

isNullifelse

df = data.frame('A' = c(2017, 2019, 2016, 2016, 2018), 'B' = c(209, 208, NA, NA, 209))
spark_df = as.DataFrame(df)

spark_df$B = ifelse(isNull(spark_df$B), spark_df$A, spark_df$B)
head(spark_df)
     A    B
1 2017  209
2 2019  208
3 2016 2016
4 2016 2016
5 2018  209