计算2个不同列的信息的公式

时间:2019-02-06 07:41:02

标签: count sum formula

我有一个列A,列中的区域名称各不相同,可以说区域1到10(在整个列中重复,每个单元格重复一个)。然后,我在列B中输入了日期,表示该特定区域已完成某项操作,某些单元格中没有日期,因为未执行任何操作。我需要创建一个摘要,在其中计算在该特定区域中完成某项操作的次数。这意味着我需要计算每个区域(区域1,区域2,区域3等),并计算我执行一次动作的次数。我会知道这是由于B列中有一个日期这一事实而完成的。我需要一个公式来帮助我计算这一点。

2 个答案:

答案 0 :(得分:0)

这是您要找的吗?

library(tidyverse)

# create sample data
df <- tibble(A=rep(c(1:10),3), B=rep(c(Sys.Date(), NA),15))

df

       A B         
 1     1 2019-02-06
 2     2 NA        
 3     3 2019-02-06
 4     4 NA        
 5     5 2019-02-06
 6     6 NA        
 7     7 2019-02-06
 8     8 NA        
 9     9 2019-02-06
10    10 NA      
...

# grouping and summarising it for column A
df %>%
  mutate(count=ifelse(!is.na(B), 1, 0)) %>%
  group_by(A) %>%
  summarise(count=sum(count,na.rm=T))

       A count
 1     1     3
 2     2     0
 3     3     3
 4     4     0
 5     5     3
 6     6     0
 7     7     3
 8     8     0
 9     9     3
10    10     0

答案 1 :(得分:0)

如果我对您的理解很好:

SELECT area_name, COUNT(action_date) WHERE action_date <> '' GROUP by area_name;