2017-07-07 80 views
1

我有一個溫度的年度記錄。我需要選擇五行之前的特殊行(天),以平均五天爲單位,然後選取所選組的平均值。這裏是我的數據框和下面的代碼,我申請但沒有工作。根據定義的值在數據框中選擇行

Day T.m 
1  22 
2  21 
3  34 
4  28 
5  14 
6  7 
7  12 
8  22 
9  11 
10  12 
11  14 
12  3 
13  4 
14  11 
15  16 

a <- c(8, 12,14) 

apply(DF [c((a-5):a),2], 1, mean) 

回答

0

我們可以使用mapply

mapply(function(x, y) mean(DF[[2]][x:y]), a-5, a) 
#[1] 19.500000 12.333333 9.166667 

還是一個量化的方法是

tapply(DF[[2]][rep(a-5 , each = 6) + 0:5], rep(1:3, each = 6), FUN = mean) 
#  1   2   3 
#19.500000 12.333333 9.166667 
相關問題