且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

矩阵中按组求和的列

更新时间:2023-12-01 12:37:34

这是向量化的基本解决方案

Here's a vectorized base solution

rowsum(df, row.names(x))
#      Mon Tue Wed Thurs
# Cake   2   1   1     2
# Pie    0   0   3     3

或使用keep.rownames = TRUEdata.table版本将行名转换为列

Or data.table version using keep.rownames = TRUE in order to convert your row names to a column

library(data.table)
as.data.table(x, keep.rownames = TRUE)[, lapply(.SD, sum), by = rn]
#      rn Mon Tue Wed Thurs
# 1: Cake   2   1   1     2
# 2:  Pie   0   0   3     3