2016-04-29 80 views
1

我有一个的大数据帧(300万+行,14周的cols),显示在一年346点独特的纬度和经度如何基于一个唯一的标识符

JULDAY, D0cm, D2.5cm, .... 
1  .84 .76 
1  .83 .78 
2  .20 .23 
2  .19 .19 
... 
365  .026 .076 
365  .025 .053 

JULDAY每小时,每天气温总结行365天分成24小时(例如,每行1小时,每天24行)以及相应的温度值根据深度

我认为应该有一个简单的解决方案,但似乎无法弄清楚。

基本上我要总结每天的24个值D0cmD2.5等在JULDAY 所有365个独特的价值观这应该给我365值,即每天24小时,值总和

它是一个创建for循环的情况? 我相信有人在那里可以点我在正确的方向

很抱歉,如果我不解释自己很好,但我很累......

回答

2

我们可以使用dplyr

library(dplyr) 
df1 %>% 
    group_by(JULDAY) %>% 
    summarise_each(funs(sum = sum(., na.rm=TRUE))) 

或用data.table

library(data.table) 
setDT(df1)[, lapply(.SD, sum, na.rm=TRUE), by = JULDAY] 
+0

真棒,谢谢,我已经全光照(dplyr)soiltemps%>% group_by(JULDAY)%>% summarise_each(SumD0cm = sum(D0cm),SumD2.5cm = sum(D2.5cm))',但第二个data.table的效果好得多。新的这是一个简单的答案 – Vaughn