ho questo frame di dati:come costruire un modello di loess in in R utilizzando dati di serie temporali
dput (testa (y1,20))
structure(list(time = structure(c(1373256120, 1373256360, 1373256660,
1373256960, 1373257260, 1373257560, 1373257860, 1373258220, 1373258460,
1373258760, 1373259060, 1373259360, 1373259660, 1373259960, 1373260260,
1373260620, 1373260860, 1373261160, 1373261460, 1373261760), class = c("POSIXct",
"POSIXt"), tzone = "America/New_York"), cpu = c(2.5803, 2.7954,
3.0855, 2.6414, 2.4603, 2.2053, 3.2352, 2.2437, 2.0264, 1.9006,
4.331, 2.068, 1.999, 1.8115, 1.8955, 1.7475, 1.8565, 2.1557,
1.9113, 1.3635)), .Names = c("time", "cpu"), row.names = c(NA,
20L), class = "data.frame")
Sto cercando di costruire un modello loess come folows:
ls<-loess(cpu~time, data=y1)
ottengo questo errore:
Error in simpleLoess(y, x, w, span, degree, parametric, drop.square, normalize, :
NA/NaN/Inf in foreign function call (arg 2)
In addition: Warning message:
In simpleLoess(y, x, w, span, degree, parametric, drop.square, normalize, :
NAs introduced by coercion
Cosa mi manca qui?
"loess' può essere un IME un po 'fragile. Prova a giocare con l'estensione; puoi anche usare 'family =" gaussian "' per eseguire il fitting dei minimi quadrati piuttosto che il più complicato metodo robustified che è il default. –
Si potrebbe anche usare 'mgcv :: gam' o' gam :: gam', che sono altri modi per montare i modelli di regressione locali (anche se con le spline nel primo caso). –