我有一个类似于以下的数据集,但有更多的列和行:
a<-c("Fred","John","Mindy","Mike","Sally","Fred","Alex","Sam")
b<-c("M","M","F","M","F","M","M","F")
c<-c(40,35,25,50,25,40,35,40)
d<-c(9,7,8,10,10,9,5,8)
df<-data.frame(a,b,c,d)
colnames(df)<-c("Name", "Gender", "Age", "Score")
我需要创建一个函数,让我对选定的数据子集的分数求和。但是,每次选择的子集可能有不同数量的变量。一个子集可能是Name=="Fred"
,另一个可能是Gender == "M"
& Age == 40
。在我的实际数据集中,一个选定的子集中最多可以使用 20 列,因此我需要使其尽可能通用。
我尝试使用包含 的 sapply 命令eval(parse(text=...)
,但只需要 20,000 条左右的记录样本就需要很长时间。我确信有一种更快的方法,如果能找到它,我将不胜感激。