我有一个数据框,其中两个变量(纬度和经度)的值不正确。数据框中的错误值列为 999.00,正确值应分别为 42.68 和 -72.47。
我想要一种简单的方法来使用 dplyr 替换这些值,但我的尝试(见下文)没有成功(下面提供的错误)。
df$Lat2 <- recode(df$Lat, "999.00"="42.68", .default=x)
lapply(x, f) 中的错误:未找到对象“x”
df <- df %>%
mutate(Lat2 = if_else(Lat == 999.00, 42.68, NULL, NULL))
mutate_impl(.data,dots) 中的错误:
评估错误:未使用参数 (recvLat = 999)。
df <- df %>%
mutate(Lat2 = ifelse(Lat == 999.00, 42.68, NULL))
mutate_impl(.data,dots) 中的错误:
评估错误:替换长度为零。
另外:警告消息:
在rep(no, length.out = length(ans))中:
'x' 为 NULL,因此结果将为 NULL
df <- df %>%
mutate(Lat2 = case_when(Lat == 999.00 ~ 42.68, TRUE ~ NULL))
mutate_impl(.data,dots) 中的错误:
评估错误:下标越界。
对于后三次尝试,如果数字用引号引起来(即“999.00”和“42.68”),我会得到相同的错误