计算R

时间:2016-03-24 11:55:20

标签: r

我有这些数据,我想做的是计算每列中一,二,三的出现次数(频率)

离。 A列中有2个,B列中有2个TWO,C列中有1个等等

我可以用什么函数来计算R中的某些单词?

如何从这个计数中得出直方图?

ABC <-read.csv("c:/Data/dataset.csv")

     A      B       C
1    TWO    ONE   THREE
2    ONE    ONE    TWO
3  THREE    TWO   THREE
4    ONE    TWO    ONE
5    TWO   THREE   TWO

2 个答案:

答案 0 :(得分:3)

我们可以使用mtabulate按每列获取数据集中unique个元素的数量

library(qdapTools)
t(mtabulate(ABC))
#      A B C
#ONE   2 2 1
#THREE 1 1 2
#TWO   2 2 2

或者我们在table数据集之后使用unlist并复制'{1}}的'ABC'。请注意,我们这里仅调用names一次。

table

稍快一点的选择是将tbl <- table(unlist(ABC),names(ABC)[col(ABC)]) tbl # A B C # ONE 2 2 1 # THREE 1 1 2 # TWO 2 2 2 vapply

一起使用
tabulate

如果我们需要一个条形图

vapply(ABC, function(x) tabulate(factor(x)), numeric(3))

答案 1 :(得分:2)

%%~nL