Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- setwd("D:/e6/ ")
- # Прочитать данные из файла в таблицу M
- M<-read.csv2("Milk09-12.csv", header=FALSE, sep=";", dec = ",", col.names =
- c("Month","Price1","Price2"))
- # Построить график временного ряда для Price1
- plot(M$Price1, main="Цена на молоко", ylab="цена, руб.", xlab="месяц, номер", type="o")
- # Временной ряд имеет линейную возрастающую тенденцию.
- plot(M$Price1, main="Цена на молоко", ylab="цена, руб.", xlab="месяц, номер", type="o")
- x<-seq(from=1, to=length(M$Price1))
- reg1<-lm(M$Price1~x)
- abline(reg1)
- # Построить график временного ряда для Price2
- plot(M$Price2, main="Цена на молоко", ylab="цена, руб.", xlab="месяц, номер", type="o")
- # Временной ряд имеет возрастающую нелинейную тенденцию.
- plot(M$Price2, main="Цена на молоко", ylab="цена, руб.", xlab="месяц, номер", type="o")
- reg2<-lm(M$Price2~x)
- abline(reg2)
- # Построить уравнение нелинейного тренда временного ряда.
- plot(M$Price2, main="Цена на молоко", ylab="цена, руб.", xlab="месяц, номер", type="o")
- reg2<-nls(M$Price2~p3 + p2*x + p1*(x)^2, data=M, start=list(p1=1, p2=1, p3=1))
- P<-coef(reg2)
- curve(P[1] *x*x + P[2]*x + P[3], add=TRUE, col="blue")
- plot(reg2$m$resid(),main="График остатков", xlab="Наблюдение", ylab="Остатки")
- abline(h=0, col="red")
- summary(reg2)
- # Y = 0.0264933 * x^2 - 0.4940429 * x + 20.2514416 + eps
- sum(abs(M$Price2 - (coef(reg2)[1]*x*x+coef(reg2)[2]*x+coef(reg2)[3]))/M$Price2)/length(M$Price2)*100 # рассчитать MAPE
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement