我正在尝试将我的数据集'eggdat'用于白天和夜晚。这样:
rtm.collapsed.gibbs.sampler(documents, links, K, vocab, num.iterations,
alpha, eta, beta, trace = 0L, test.start = length(documents) + 1L)
rtm.em(documents, links, K, vocab, num.e.iterations, num.m.iterations,
alpha, eta, lambda = sum(sapply(links, length))/(length(links) *(length(links) -1)/2), initial.beta = rep(3, K), trace = 0L,
test.start = length(documents) + 1L, tempering = 0.0)
日间工作的子集很好:
'data.frame': 54847 obs. of 10 variables:
$ year : int 2014 2014 2014 2014 2014 2014 2014 2014 2014 2014 ...
$ month : int 7 7 7 7 7 7 7 7 7 7 ...
$ day : int 31 31 31 31 31 31 31 31 31 31 ...
$ hour : int 20 20 20 20 20 20 20 20 20 20 ...
$ minute: int 5 5 5 5 5 5 5 5 5 5 ...
$ second: int 0 1 2 3 4 5 6 7 8 9 ...
$ Roll : num -159 179 -164 -155 -137 ...
$ Pitch : num -31.36 -41.05 -23.85 -6.62 -9.13 ...
$ Yaw : num -71.8 -113.3 -67.2 -140.2 -78.2 ...
$ temp1 : num 25 33.5 34 34 34 34 34 34 34 34 ...
然而,对于夜间做同样的事情,会返回一个包含0个观察值的子集:
daytime <- eggdat[eggdat$hour >= 7 & eggdat$hour <= 20, ]
'data.frame': 18847 obs. of 10 variables:
$ year : int 2014 2014 2014 2014 2014 2014 2014 2014 2014 2014 ...
$ month : int 7 7 7 7 7 7 7 7 7 7 ...
$ day : int 31 31 31 31 31 31 31 31 31 31 ...
$ hour : int 20 20 20 20 20 20 20 20 20 20 ...
$ minute: int 5 5 5 5 5 5 5 5 5 5 ...
$ second: int 0 1 2 3 4 5 6 7 8 9 ...
$ Roll : num -159 179 -164 -155 -137 ...
$ Pitch : num -31.36 -41.05 -23.85 -6.62 -9.13 ...
$ Yaw : num -71.8 -113.3 -67.2 -140.2 -78.2 ...
$ temp1 : num 25 33.5 34 34 34 34 34 34 34 34 ...
我真的不知道该怎么做..我尝试使用nighttime <- eggdat[eggdat$hour <= 7 & eggdat$hour >= 21, ]
'data.frame': 0 obs. of 10 variables:
$ year : int
$ month : int
$ day : int
$ hour : int
$ minute: int
$ second: int
$ Roll : num
$ Pitch : num
$ Yaw : num
$ temp1 : num
,但没有成功..我也试过subset
,但也无法让它工作。
更令人困惑的是,在子集函数(eggdat$hour <- as.factor(eggdat$hour)
和daytime <- eggdat[eggdat$hour >= '7' & eggdat$hour <= '20', ]
)中添加引号会导致白天子集包含'0 obs。',但夜间子集工作正常,所以它只是另一种方式!
白天:nighttime <- eggdat[eggdat$hour <= '7' & eggdat$hour >= '21', ]
夜间:
'data.frame': 0 obs. of 10 variables:
我真的不知道该怎么做,我对这一切感到很困惑。
答案 0 :(得分:3)
您想要eggdat[eggdat$hour <= 7 | eggdat$hour >= 21, ]
x < 7 & x > 21
转换为x小于7 AND 大于21
x < 7 | x > 21
转换为x小于7 OR 大于21