R语言 如何使用Dplyr创建分组频率表
在这篇文章中,我们将研究在R编程语言中创建频率表组的方法及其工作实例。
使用dplyr包创建按组的频率表
在这种创建分组频率表的方法中,用户首先需要在工作控制台中导入并安装dplyr包,然后用户需要调用dplyr()包中的group_by()和summaryize()函数,这里的group_by()函数负责将数据帧分组。group_by()函数本身并不提供任何输出,所以它应该在summaryise()函数后面加上一个适当的动作来执行。这与SQL中的GROUP BY和EXCEL中的透视表类似。
在R控制台安装和导入dplyr软件包的语法
install.package('dplyr')
library(dplyr)
例1 :
在这个例子中,我们创建了一个由两个属性组成的数据框,第一和第二属性各包含6个实体,并进一步使用所提供的语法和调用group_by()和summaryize()函数,通过属性名称和数据框,在Rn语言中得到相应的频率表。
# Import the required library
library(dplyr)
# Created data frame
df <- data.frame(first=c(1,1,1,2,2,2),
second=c('a', 'a', 'b',
'a', 'c', 'd'))
# calculate frequency
df %>%
group_by(first,second) %>%
summarize(Freq=n())
输出 。
first second Freq
<dbl> <chr> <int>
1 1 a 2
2 1 b 1
3 2 a 1
4 2 c 1
5 2 d 1
例2 :
在这个例子中,我们使用R语言的内置数据框,名为:”ToothGrowth”,并将使用给定的语法,通过调用R语言中的group_by()和summaryize()函数,创建这个数据框的supp和dose属性的频率表。
# Import the required library
library(dplyr)
# Created data frame
data("ToothGrowth")
df<-ToothGrowth
# calculate frequency
df %>%
group_by(supp , dose) %>%
summarize(Freq=n())
输出 。
supp dose Freq
<fct> <dbl> <int>
1 OJ 0.5 10
2 OJ 1 10
3 OJ 2 10
4 VC 0.5 10
5 VC 1 10
6 VC 2 10