【发布时间】:2020-08-07 20:44:34
【问题描述】:
当我试图找到 NA 时,我遇到了如下问题。
dta = data.frame(group0 = c(1,1,1,2,2,2,3,3),
date0 = c(as.Date("2018-09-01",format="%Y-%m-%d"),
as.Date("2018-09-02",format="%Y-%m-%d"),
as.Date("2018-09-03",format="%Y-%m-%d"),
as.Date("2018-09-04",format="%Y-%m-%d"),
as.Date("2018-10-01",format="%Y-%m-%d"),
as.Date("2018-10-02",format="%Y-%m-%d"),
as.Date("2018-10-02",format="%Y-%m-%d"),
as.Date("2018-10-03",format="%Y-%m-%d")),
type0 = c("A","A","B","A","B","B","B","B"))
我有这样的数据,并尝试为每个组设置一个最短日期,条件如下。
dta2 = dta %>% group_by(group0) %>% summarise(tmp_date0 = min(date0[type0 == "A"]))
那么,我有这个
> dta2
# A tibble: 3 x 2
group0 tmp_date0
<dbl> <date>
1 1 2018-09-01
2 2 2018-09-04
3 3 NA
当我运行它时
> is.na(dta2$tmp_date0)
[1] FALSE FALSE FALSE
为什么第三个是FALSE?
【问题讨论】:
-
内部是
Inf