【发布时间】:2021-12-22 05:32:24
【问题描述】:
我有一个灵活的组合向量(在现实生活中它可能会有很大差异,并且取决于外部表,所以我不能切片或使用交叉,或者取决于我的 df 中变量的名称本身)。
我想对我的 df 中的变量进行分组/总结,其名称与“可能梳”向量中的名称匹配。然后将“_sum”后缀应用于输出变量名称,例如乔恩.A_sum。
在我的 df 中,我有几个变量,并非所有变量都应该总结,而只有一个与“可能的梳子”名称匹配的选定且灵活的列表。
在这段代码中,如果可能的话,我想念如何在 lapply 步骤中使用 _sum 后缀重命名输出变量,但我对其他循环方法持开放态度。
possible_comb <- c("Jon.A", "Bill.C", "Maria.E", "Ben.D")
Jon.A <- c(23, 41, 32, 58, 26)
Bill.C <- c(13, 41, 35, 18, 66)
v3 <- c(3,34, 33, 34, 23)
weight <- c(2, 2, 3,3, 6)
df <- data.frame(Jon.A,Bill.C,v3,weight)
setDT(df)
df_grouped<- df[, lapply(.SD, sum), by=c("weight") , .SDcols=possible_comb]
#wanted results
Jon.A_sum <- c(64, 90, 26)
Bill.C_sum <- c(54,53, 66)
weight <- c(2,3, 6)
wanted <- data.frame(Jon.A_sum,Bill.C_sum,weight)
【问题讨论】:
标签: r dataframe loops data.table apply