📜  使用汇总多列 - R 编程语言(1)

📅  最后修改于: 2023-12-03 15:06:57.500000             🧑  作者: Mango

使用汇总多列 - R 编程语言

概述

在数据处理和分析中,我们经常需要对多列数据进行汇总计算。在 R 编程语言中,有一些函数可以轻松实现这一目标,包括 dplyrtidyr 等包中的函数。

使用 dplyr 包
安装 dplyr 包
install.packages("dplyr")
加载 dplyr 包
library(dplyr)
汇总多列数据

假设我们有以下数据框:

df <- data.frame(a = c(1, 2, 3),
                 b = c(4, 5, 6),
                 c = c(7, 8, 9))

我们可以使用 dplyr 包中的 summarise_all 函数对所有列进行求和操作:

df %>% summarise_all(sum)

输出结果为:

| a | b | c | |---|---|---| | 6 | 15 | 24 |

如果我们只想对特定列进行求和操作,可以使用 summarise_at 函数:

df %>% summarise_at(vars(a, b), sum)

输出结果为:

| a | b | |---|---| | 6 | 15 |

分组汇总多列数据

假设我们有以下数据框:

df <- data.frame(group = c(1, 1, 2, 2),
                 a = c(1, 2, 3, 4),
                 b = c(5, 6, 7, 8),
                 c = c(9, 10, 11, 12))

我们可以使用 dplyr 包中的 group_by 函数对指定列进行分组,并使用 summarise_all 函数对所有列进行求和操作:

df %>% group_by(group) %>% summarise_all(sum)

输出结果为:

| group | a | b | c | |-------|---|---|---| | 1 | 3 | 11| 19| | 2 | 7 | 15| 23|

使用 tidyr 包
安装 tidyr 包
install.packages("tidyr")
加载 tidyr 包
library(tidyr)
汇总多列数据

假设我们有以下数据框:

df <- data.frame(a = c(1, 2, 3),
                 b = c(4, 5, 6),
                 c = c(7, 8, 9))

我们可以使用 tidyr 包中的 gather 函数将列转换为行,并对转换后的列进行求和操作:

df %>% gather(variable, value) %>% summarise(sum = sum(value))

输出结果为:

| variable | sum | |----------|-----| | a | 6 | | b | 15 | | c | 24 |

如果我们只想对特定列进行转换和求和操作,可以使用 gather_atsummarise_at 函数:

df %>% gather_at(vars(a, b), key = "variable", value = "value") %>% 
       summarise_at(vars(value), sum)

输出结果为:

| variable| value | |---------|-------| | a | 6 | | b | 15 |

分组汇总多列数据

假设我们有以下数据框:

df <- data.frame(group = c(1, 1, 2, 2),
                 a = c(1, 2, 3, 4),
                 b = c(5, 6, 7, 8),
                 c = c(9, 10, 11, 12))

我们可以使用 tidyr 包中的 gather 函数将列转换为行,并对转换后的列进行分组和求和操作:

df %>% gather(variable, value, -group) %>% group_by(group, variable) %>% 
       summarise(sum = sum(value))

输出结果为:

| group | variable | sum | |-------|----------|-----| | 1 | a | 3 | | 1 | b | 11 | | 1 | c | 19 | | 2 | a | 7 | | 2 | b | 15 | | 2 | c | 23 |

总结

在 R 编程语言中,使用 dplyrtidyr 包中的函数可以方便地对多列数据进行汇总计算。使用这些函数,你可以更高效地完成数据处理和分析任务。