R 如何按日期分组以显示零和非零条目的计数?
我有以下示例数据。 我试图将它们按不同的日期分组,我需要新的列来告诉我有多少个零条目和多少个非零条目R 如何按日期分组以显示零和非零条目的计数?,r,dplyr,R,Dplyr,我有以下示例数据。 我试图将它们按不同的日期分组,我需要新的列来告诉我有多少个零条目和多少个非零条目 gantry_date gantry_duration 10/2/2018 126.809 10/2/2018 0 10/2/2018 38.505 10/2/2018 0 10/2/2018 63.888 10/2/2018 81.362 10/2/2018 45.055 10/1/2018 111.648 10/1/2018 0 10/1/2018 1
gantry_date gantry_duration
10/2/2018 126.809
10/2/2018 0
10/2/2018 38.505
10/2/2018 0
10/2/2018 63.888
10/2/2018 81.362
10/2/2018 45.055
10/1/2018 111.648
10/1/2018 0
10/1/2018 119.291
10/1/2018 0
10/1/2018 37.565
10/1/2018 33.794
10/1/2018 0
10/1/2018 0
10/1/2018 0
期望输出为
Zero non-zero
10/1/2018 5 4
10/2/2019 2 5
我用XXXX的不同排列尝试了以下代码。尝试了summary、count、sum以及summary和sum或count的组合
data <- gantry1 %>% group_by(gantry_date) %>% XXXXX
数据%group\u by(机架日期)%%>%XXXXX
无法获得所需的输出。您可以使用
表
table(df$gantry_date, df$gantry_duration == 0)
# FALSE TRUE
# 10/1/2018 4 5
# 10/2/2018 5 2
如果你想要确切的名字,也许我们可以添加一个新的列
df$status <- c("zero", "non-zero")[(df$gantry_duration != 0) + 1]
table(df$gantry_date, df$status)
# non-zero zero
# 10/1/2018 4 5
# 10/2/2018 5 2
library(dplyr)
df %>%
mutate(status = c("zero", "non-zero")[(gantry_duration != 0) + 1]) %>%
count(gantry_date, status) %>%
tidyr::pivot_wider(names_from = status, values_from = n)