首页 > 解决方案 > 如何找到表格特定部分的总和?

问题描述

如何找到表格特定部分的总和。我知道对于一个完整的专栏,我可以只使用 sum(X[, 'expenditure']),但我只想汇总一月份的支出。我正在使用从 csv 文件中导入的数据。鼓励我使用 sum 或 colSums。

数据太大而无法显示,但您可以将其可视化。这是一个示例:

Month   Expenditure
Jan.    20
Jan.    28
March.  50
March.  54
July.   07

标签: r

解决方案


df$Month您可以通过将月份变量 , 的向量与字符串进行比较Jan.并返回匹配的支出变量来在方括号中进行子集化。

df[df$Month == "Jan.", "Expenditure"]

此外,语法变得更短,如果您使用 data.table,您可以在单个表达式中对所有月份执行此操作

library(data.table)
setDT(df)
# Just January 
df[Month == "Jan.", sum(Expenditure)]
# Each month 
df[, sum(Expenditure), by = Month]

推荐阅读