R 计算每个因素的总和

R 计算每个因素的总和,r,R,我想通过因子键计算总和。详细地说,如果要按因子键分割向量时间,请计算1:length(subvector)的总和。但是我喜欢对整个向量这样做,这样我就不会失去与索引的关系 a<-as.POSIXlt("2013-07-01 00:00:00",origin = "1960-01-01",tz="GMT") b<-as.POSIXlt("2013-07-08 00:00:00",origin = "1960-01-01",tz="GMT") week1<-sample(seq(a

我想通过因子键计算总和。详细地说,如果要按因子键分割向量时间,请计算
1:length(subvector)
的总和。但是我喜欢对整个向量这样做,这样我就不会失去与索引的关系

a<-as.POSIXlt("2013-07-01 00:00:00",origin = "1960-01-01",tz="GMT")
b<-as.POSIXlt("2013-07-08 00:00:00",origin = "1960-01-01",tz="GMT")
week1<-sample(seq(as.numeric(a),by=60*60,length.out=200),200,T)
week2<-sample(seq(as.numeric(b),by=60*60,length.out=200),200,T)
times<-c(week1,week2)
class(times)<-c("POSIXt","POSIXct")
times<-as.POSIXlt(times,origin = "1960-01-01",tz="GMT")
key<-sample(LETTERS[1:3],200,T)
df<-data.frame(times=times,order=factor(rep(1:2,each=100)), key=key)

a你是在为此而努力吗

library(plyr)
df$times<-as.Date(times,format="%Y-%m-%d")
mysum<-ddply(df,.(times,key),summarize,msum=sum(as.numeric(order)))
> head(mysum)
       times key msum
1 2013-07-01   A   12
2 2013-07-01   B   15
3 2013-07-01   C   13
4 2013-07-02   A    9
5 2013-07-02   B   15
6 2013-07-02   C   16
库(plyr)

df$timesNo,因为您按键和变量顺序拆分它。时间间隔应该是灵活的。我需要和指数的关系来绘图,这意味着我需要一个长度为df[,1]的向量。然后,你可能需要用预期的结果来更新这个问题,它直接指向我所描述的
sYes,这很简单。但是,我需要看看我的结果和你的结果是否相符。