R产生意外结果。
以下是使用==运算符时的结果:
> head(sessions[sessions$datetime == "2016-06-25 13:29:43",],2)
id birdie datetime side_speed end_speed full_coverage
15 65 CALAN197 2016-06-25 13:29:43 -0.34 -0.34 1
但是,当使用> =运算符时,以前出现在先前操作中的结果将不再出现。
> head(sessions[sessions$datetime >= "2016-06-25 13:29:43",],2)
id birdie datetime side_speed end_speed full_coverage
1 2 CALAN190 2016-06-30 08:54:40 -0.34 -0.34 1
2 3 CALAN190 2016-06-30 09:55:05 -0.34 0.00 1
实际上,此结果与Greater>运算符相同。
怎么可能?
这是一个最小的可重现示例:
d <- read.table(text = "1 | 2 | CALAN190 | 2016-06-30 08:54:40 | -0.34 | -0.34 | 1
2 | 3 | CALAN190 | 2016-06-30 09:55:05 | -0.34 | 0.00 | 1
15 | 65 | CALAN197 | 2016-06-25 13:29:43 | -0.34 | -0.34 | 1", sep = "|")
d$V4 <- as.POSIXct(d$V4)
head(d[d$V4 == "2016-06-25 13:29:43", ], 2)
head(d[d$V4 >= "2016-06-25 13:29:43", ], 2)