我希望能够总结我的数据的通过/失败状态,如下所示。换句话说,我想告诉每种产品/类型的通过和失败案例数量。
以下命令返回通过和失败用例的总数,但我想要分别统计通过和失败的个数。
理想的结果应该是:
我尝试了类似以下的操作:
library(ggplot2)
library(plyr)
product=c("p1","p1","p1","p1","p1","p1","p1","p1","p1","p1","p1","p1","p2","p2","p2","p2","p2","p2","p2","p2","p2","p2","p2","p2")
type=c("t1","t1","t1","t1","t1","t1","t2","t2","t2","t2","t2","t2","t1","t1","t1","t1","t1","t1","t2","t2","t2","t2","t2","t2")
skew=c("s1","s1","s1","s2","s2","s2","s1","s1","s1","s2","s2","s2","s1","s1","s1","s2","s2","s2","s1","s1","s1","s2","s2","s2")
color=c("c1","c2","c3","c1","c2","c3","c1","c2","c3","c1","c2","c3","c1","c2","c3","c1","c2","c3","c1","c2","c3","c1","c2","c3")
result=c("pass","pass","fail","pass","pass","pass","fail","pass","fail","pass","fail","pass","fail","pass","fail","pass","pass","pass","pass","fail","fail","pass","pass","fail")
df = data.frame(product, type, skew, color, result)
以下命令返回通过和失败用例的总数,但我想要分别统计通过和失败的个数。
dfSummary <- ddply(df, c("product", "type"), summarise, N=length(result))
结果如下:
product type N
1 p1 t1 6
2 p1 t2 6
3 p2 t1 6
4 p2 t2 6
理想的结果应该是:
product type Pass Fail
1 p1 t1 5 1
2 p1 t2 3 3
3 p2 t1 4 2
4 p2 t2 3 3
我尝试了类似以下的操作:
dfSummary <- ddply(df, c("product", "type"), summarise, Pass=length(df$product[df$result=="pass"]), Fail=length(df$product[df$result=="fail"]) )
但显然这是错误的,因为结果是不及格和及格的总数。
提前感谢您的建议! 敬礼, Riad。