我希望能够根据
谢谢!
以下是我的数据:
该方案将为
df$date
中的特定时间间隔给df$lamp_intensity
向量分配一个值。如果某个观测值超出此间隔,则我想要赋值为NA
。一旦我让这段代码起作用,我计划嵌套一堆ifelse()
语句来处理多个时间间隔。我认为我已经非常接近了,但我肯定需要帮助。谢谢!
以下是我的数据:
df <- structure(list(date = structure(c(1504787028, 1504787030, 1504787031, 1504787032, 1504787033, 1504787034, 1504787035, 1504787036, 1504787037, 1504787038), class = c("POSIXct", "POSIXt"), tzone = "UTC"), ppm = c(0.0009765625, 0.0009765625, 0.0009765625, 0.0009765625, 0.0009765625, 0.0009765625, 0.0009765625, 0.0009765625, 0.0009765625, 0.00146484375)), .Names = c("date", "ppm"), row.names = c(NA, -10L), class = c("tbl_df", "tbl", "data.frame"))
df$lamp_intensity <- ifelse(df$date >= as.POSIXct("2017-09-07 12:23:51",
format = "%Y-%m-%d %H:%M:%S", tz = "UTC") && ## using '&' generates an error message
date <= as.POSIXct("2017-09-07 12:23:55",
format = "%Y-%m-%d %H:%M:%S", tz = "UTC"), 0, NA)
head(df, 10)
该方案将为
2017-09-07 12:23:51
至 2017-09-07 12:23:55
期间 df$lamp_intensity
的行分配 0
。
date <= as.POSIXct("2017-09-07 12:23:55")
应该为df$date <= as.POSIXct("2017-09-07 12:23:55")
。这就是你在使用&
运算符时出现错误的原因。 - eipi10