smoothing quarterly data and extract data on each day
On Fri, Nov 2, 2012 at 8:59 AM, ??? <zfyuan at mail.ustc.edu.cn> wrote:
Hi, everybody I have a quarterly zoo object named "dat1" as below. xyplot(dat1) and xyplot(dat1,type="smooth") may obtain both original and smoothed plot, and these two plots are just what I need, however I also need those smoothed values on each day, and I have no idea how to extract from the smoothed curve. I think there must be some convinent way to deal with this kind of problem. Anyone knows about it? Thanks a lot!
dat1
X1 X2 X3 X4 X5 2008 Q1 3482.858 1250.236 3548.769 4931.883 497.3590 2008 Q2 3531.582 1355.288 3645.622 5054.060 524.8273 2008 Q3 3783.050 1380.224 3719.840 4827.296 626.0529 2008 Q4 4372.995 1565.386 3827.486 5014.124 769.9170 2009 Q1 4485.311 1778.264 4486.163 5759.063 891.0500 2009 Q2 4506.971 1920.969 4704.324 6026.117 934.0728 2009 Q3 4791.432 1904.100 4837.732 6101.084 884.6493 2009 Q4 5393.146 1917.826 4971.702 6178.358 888.6124 2010 Q1 5377.333 2034.175 5222.298 6620.797 918.8237 2010 Q2 5651.565 2117.686 5273.992 6789.510 964.9723 2010 Q3 5905.428 2138.144 5382.343 6959.202 1107.4141 2010 Q4 6420.900 2248.762 5485.862 7003.115 1228.2340 2011 Q1 6595.900 2328.679 5745.658 7567.216 1284.2346 2011 Q2 6679.854 2474.070 5973.663 7920.905 1430.5884 2011 Q3 6523.676 2473.112 6016.118 8057.043 1479.7814 2011 Q4 7195.303 2632.994 6337.770 8259.334 1582.4205 2012 Q1 7137.809 2824.209 6950.471 8969.470 1647.5123 2012 Q2 7084.198 2989.912 6997.699 9314.090 1798.0352
Try this: library(zoo) library(lattice) set.seed(123) z <- zooreg(matrix(rnorm(50), 10), as.yearqtr(2008), freq = 4) tt <- time(z) zoo(sapply(z, function(z) loess.smooth(tt, z, eval = length(tt))$y), tt)
Statistics & Software Consulting GKX Group, GKX Associates Inc. tel: 1-877-GKX-GROUP email: ggrothendieck at gmail.com