如何使用'sparklyr :: replace.na()'替换一列上的NaN?

时间:2019-05-15 14:23:31

标签: r dplyr sparklyr

我正在使用Sparklyr与Spark互动。我正在尝试仅在一列中替换NaN值。

是否可以使用sparklyr函数replace.na()但仅将其应用于一列?我检查了文档,但对我没有帮助。

question类似,但是答案更改了整个数据帧中的所有NaN值。

1 个答案:

答案 0 :(得分:1)

使用sparklyr::na.replace()时,您似乎实际上必须指定列。参见https://github.com/rstudio/sparklyr/issues/127#issuecomment-236318033

示例:

temp <- tibble(
  a = c(1, 2, NA),
  b = c("A", NA, "B")
)

temp_spark <- sdf_copy_to(sc, temp, "temp_spark")

temp_spark %>%
  na.replace()
#  a  | b
#  1  | A
#  2  | NA
# NaN | B

temp_spark %>%
  na.replace(a = 0)
# a | b
# 1 | A
# 2 | NA
# 0 | B