我试图简化这与几个语句。不知道如何去做(或者如果我可以),但任何能够让我接近或尽可能少的步骤的人。我正在使用dplyr和lubridate。我有一个名为OutofRange(sample)的数据库;dplyr group_by逻辑值
OutOfRange %>% select(OutRange, TouchVPOC)
Source: local data frame [341 x 2]
OutRange TouchVPOC
(lgl) (lgl)
1 FALSE TRUE
2 FALSE FALSE
3 FALSE TRUE
4 FALSE FALSE
5 FALSE TRUE
OutOfRange %>% select(OutRange, TouchVPOC) %>% filter(OutRange == T) %>% tally
Source: local data frame [1 x 1]
n (int)
1 37
OutOfRange %>% select(OutRange, TouchVPOC) %>% filter(OutRange == T, TouchVPOC == T) %>% tally
Source: local data frame [1 x 1]
n (int)
1 15
15/37
[1] 0.4054054
因此,如果可能的话,我正在寻找类似这样的最终结果,其中CountofDataFrame是所有行的计数; OutRange & TouchVPOC是TRUE值的计数;和Pct = TouchVPOC/OutRange。
CountOfDataFrame OutRange TouchVPOC Pct
341 37 15 .40
我明白了,我可能会问很多..我是新来的,欢迎任何建议。只是寻找一个基础或开始在正确的方向。
请阅读关于[如何提出一个好问题](http://stackoverflow.com/help/how-to-ask)以及如何给出[可重现的例子](http:// stackoverflow.com/questions/5963269)。这会让其他人更容易帮助你。 – zx8754
一些相关的*聚合*帖子:[R分组功能:sapply vs. lapply vs. apply。与tapply与通过与聚合](http://stackoverflow.com/questions/3505701),[同时聚合多个变量](http://stackoverflow.com/questions/9723208),[如何总结一个变量按照群组?](http://stackoverflow.com/q/1660124) – zx8754
为了给你一个想法,试试'sum(c(TRUE,FALSE,TRUE))'。 – zx8754