动物园和tapply季节变量的城镇变量

时间:2017-02-16 17:56:13

标签: r zoo

木材是我的数据框架

town    date   prec        TP      TC
TR  1/10/1983   NaN       NaN   11.34
CR  2/12/1983   NaN       NaN    4.3
TR  3/12/1983   11.22   11.36    NAN
SP  5/6/1985    NaN       NaN    3.2
BM  6/7/1994    6.33     6.23    1.2
BM  5/6/1995    5.81      5.9    NAN
BM  1/11/2005   5.9       5.9    6.2

我想分别得到每个城镇的数据的季节性平均值(平均值)。在过去,我使用动物园功能来找到每年的季节性平均值。但动物园很难接受另一个城镇的变数。 现在我想扩展它以找到每年城镇的“prec,TP,TC”的季节性平均值 因此对于 Jan feb march 1983年的平均值和

1985年5月,7月,7月平均值

输出应该是这样的。另外“R不应该将NAN视为零”。那只是缺少数据。

town  date     prec    TP     TC
TR    1983    11.22 11.36   7.82
SP    1985     6.07  6.07   2.2

1 个答案:

答案 0 :(得分:2)

library(data.table)
library(lubridate)    
setDT(dat)
dat[ , .(prec = mean(prec, na.rm = T), TP = mean(TP, na.rm = T), TC = mean(TC, na.rm = T))., by = .(town, year(date))]