5

我想通过应用黄土函数来平滑我绘制的时间曲线,但我无法让它工作。一个例子:

mydat <- runif(50)
day1 <- as.POSIXct("2012-07-13", tz = "UTC")
day2 <- day1 + 49*3600*24
pdays <- seq(day1, day2, by = "days")
lo <- loess(mydat ~ pdays)

我收到以下消息:

Error: NA/NaN/Inf in foreign function call (arg 2)

是否可以对时间序列应用黄土平滑

非常感谢任何帮助或指导!

4

1 回答 1

15

我认为这里的想法是将您的时间序列转换为数字形式(使用as.numeric),以便您可以执行操作。

mydat <- runif(50)
day1 <- as.POSIXct("2012-07-13", tz = "UTC")
day2 <- day1 + 49*3600*24
pdays <- seq(day1, day2, by = "days")
lo <- loess(mydat ~ as.numeric(pdays))

# And then if you want to plot the result:
plot(pdays,mydat)
lines(pdays, lo$fitted)
于 2012-07-30T09:09:19.300 回答