【发布时间】:2016-06-05 05:56:50
【问题描述】:
我正在公寓楼中进行各种测试,需要添加一个因子 (Etapp <i>) 来指示观察结果属于哪个测试阶段。
我创建了一个包含测试阶段以及相应的开始和结束日期的矩阵。
phases <-matrix(c(t1,t2,t2,t3), ncol = 2,
dimnames = list(c("Etapp I", "Etapp II"), c("Start","Stopp")), byrow = TRUE)
> phases
Start Stopp
Etapp I 16812 16827
EtappII 16827 16841
变量 t1, t2, ... 包含测试阶段的断点,如 POSIXct
主数据框是宽格式,包含一个以日期 (Tid) 作为观察 id 的列。大小约为 40-50 个变量中的几千个观察值,其中只有日期在这里很重要。
我的计划是为此创建一个函数,因为我有几个建筑物,每个建筑物都有自己的观察数据框。该函数将采用两个参数构建数据框和上述矩阵阶段,并返回一个添加了因子的数据框。
addPhase <- function(df, ph) {
# Merge new variable using dplyr::merge()
}
我如何根据时间在多级因子中考虑这些观察结果。我设法使用如下逻辑向量为单个测试阶段设置一个因素
factor(as.Date(VitaHusen$Tid) > t1 & as.Date(VitaHusen$Tid) < t2,
labels = c("","Etapp I"))
如何将其扩展到多个时间范围? 我可以使用阶段中的暗名来为我的新因子列设置因子水平吗?
【问题讨论】:
标签: r