在 R 中,我可以使用我感兴趣的特定列名称作为数组返回计数结果,如下所示。
require("plyr")
bevs <- data.frame(cbind(name = c("Bill", "Llib"), drink = c("coffee", "tea", "cocoa", "water"), cost = seq(1:8)))
count(bevs, c("name", "drink"))
# produces
name drink freq
1 Bill cocoa 2
2 Bill coffee 2
3 Llib tea 2
4 Llib water 2
如何获得矩阵中两个特定列名称的计数结果,该矩阵具有列:所有唯一饮料,行:所有唯一名称和单元格:频率(如下所示)?
cocoa coffee tea water
Bill 2 2 0 0
Llib 0 0 2 2
P.S:显然,该解决方案不需要使用plyr。
您需要一个列联表,可以使用以下命令创建它table
:
table(bevs[, c("name", "drink")])
# drink
#name cocoa coffee tea water
# Bill 2 2 0 0
# Llib 0 0 2 2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)