【发布时间】:2014-03-01 13:21:33
【问题描述】:
我有以下数据框:
Data <- data.frame(
date = c("2001-01-01", "2001-02-01", "2001-03-01", "2001-04-01", "2001-05-01", "2001-06-01"),
qtr = c("NA", "NA","NA","NA","NA","NA")
)
我想用年/季填充 Data$qtr - f.e. 01/01(我需要这种格式!)。
我写了一个函数:
fun <- function(x) {
if(x == "2001-01-01" | x == "2001-02-01" | x == "2001-03-01") y <- "01/01"
if(x == "2001-04-01" | x == "2001-05-01" | x == "2001-06-01") y <- "01/02"
return(y)
}
n$qtr <- sapply(n$date, fun)
但它不起作用。我总是收到错误消息:
Error in FUN(X[[1L]], ...) : Object 'y' not found
为什么?
【问题讨论】:
-
您可能会遇到该错误,因为您的某个日期在任一
if表达式中都不匹配。所以y从未在fun中分配。