R语言 如何聚合多列

您所在的位置:网站首页 aggregate函数用法R语言 R语言 如何聚合多列

R语言 如何聚合多列

2024-07-03 23:57| 来源: 网络整理| 查看: 265

R语言 如何聚合多列

在这篇文章中,我们将讨论如何在R编程语言中聚合多列。

聚合意味着结合两个或更多的数据。在这里,我们将使用聚合函数来获得数据框中一个或多个变量的汇总统计。

语法:

aggregate(sum_column ~ group_column, data, FUN)

其中。

data是输入的数据框 sum_column是可以汇总的列 group_column是要分组的列。 FUN指的是像sum、mean、min、max等函数。

例子 :

让我们来创建一个数据框架

# create the dataframe with 4 columns data = data.frame(subjects=c("java", "python", "java",                               "java", "php", "php"),                   id=c(1, 2, 3, 4, 5, 6),                   names=c("manoj", "sai", "mounika",                           "durga", "deepika", "roshan"),                   marks=c(89, 89, 76, 89, 90, 67))    # display data

输出 :

如何在R语言中聚合多列?

例1: 总结一个变量并按一个变量分组

在这里,我们将通过对一个变量的分组来获得一个变量的摘要。

语法:

aggregate(sum_column ~ group_column, data, FUN=sum)

在这个例子中,我们将使用sum函数,通过对科目进行分组来获得一些分数。

# create the dataframe with 4 columns data = data.frame(subjects=c("java", "python", "java",                              "java", "php", "php"),                   id=c(1, 2, 3, 4, 5, 6),                   names=c("manoj", "sai", "mounika",                           "durga", "deepika", "roshan"),                   marks=c(89, 89, 76, 89, 90, 67))    # get sum of marks  by grouping with subjects aggregate(marks~ subjects, data, FUN=sum)

输出 :

如何在R语言中聚合多列?

例2:总结一个变量并按多个变量分组

在这里,我们将通过将一个变量与一个或多个变量分组来获得一个变量的摘要。我们必须使用+运算符对多列进行分组。

语法:

aggregate(sum_column ~ group_column1+group_column2+……………group_columnn, data, FUN=sum)

在这个例子中,我们将对姓名和科目进行分组,以获得分数的总和。

# create the dataframe with 4 columns data = data.frame(subjects=c("java", "python", "java",                              "java", "php", "php"),                   id=c(1, 2, 3, 4, 5, 6),                   names=c("manoj", "sai", "mounika",                           "durga", "deepika", "roshan"),                   marks=c(89, 89, 76, 89, 90, 67))    # get sum of marks  by grouping with subjects and names aggregate(marks~ subjects+names, data, FUN=sum)

输出 :

如何在R语言中聚合多列?

例3:汇总多个变量并按一个变量分组

在这里,我们将通过对一个变量的分组来获得一个或多个变量的摘要。我们将使用cbind()函数(称为列绑定)来获得多个变量的摘要。

语法:

aggregate(cbind(sum_column1,sum_column2,., sum_column n) ~ group_column1+group_column2+……………group_columnn, data, FUN=sum)

在这个例子中,我们将通过对科目进行分组来获得分数和ID的总和。

# create the dataframe with 4 columns data = data.frame(subjects=c("java", "python", "java",                               "java", "php", "php"),                   id=c(1, 2, 3, 4, 5, 6),                   names=c("manoj", "sai", "mounika",                           "durga", "deepika", "roshan"),                   marks=c(89, 89, 76, 89, 90, 67))    # get sum of marks and id by grouping with subjects aggregate(cbind(marks, id)~ subjects, data, FUN=sum)

输出 :

如何在R语言中聚合多列?

例四:汇总多个变量&按多个变量分组

在这里,我们要通过对一个或多个变量进行分组来获得一个或多个变量的摘要。我们可以使用cbind()来组合一个或多个变量,使用’+’运算符来对多个变量进行分组。

语法:

aggregate(cbind(sum_column1,.,sum_column n)~group_column1+….+group_column n, data, FUN=sum)

在这个例子中,我们将通过对科目和姓名进行分组来获得分数和ID的总和。

# create the dataframe with 4 columns data = data.frame(subjects=c("java", "python", "java",                              "java", "php", "php"),                   id=c(1, 2, 3, 4, 5, 6),                   names=c("manoj", "sai", "mounika",                           "durga", "deepika", "roshan"),                   marks=c(89, 89, 76, 89, 90, 67))    # get sum of marks and id by grouping  # with subjects and names aggregate(cbind(marks, id)~ subjects+names, data, FUN=sum)

输出:

如何在R语言中聚合多列?



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3