Monday, 11 December 2017

R glidande medelvärde prognos


Flyttande medelprognos Inledning. Som du kan gissa vi tittar på några av de mest primitiva tillvägagångssätten för prognoser. Men förhoppningsvis är dessa åtminstone en värdefull introduktion till några av de datorproblem som är relaterade till att implementera prognoser i kalkylblad. I den här venen fortsätter vi med att börja i början och börja arbeta med Moving Average prognoser. Flyttande medelprognoser. Alla är bekanta med att flytta genomsnittliga prognoser oavsett om de tror att de är. Alla studenter gör dem hela tiden. Tänk på dina testresultat i en kurs där du kommer att ha fyra tester under semestern. Låt oss anta att du fick en 85 på ditt första test. Vad skulle du förutse för ditt andra testresultat Vad tycker du att din lärare skulle förutsäga för nästa testresultat Vad tycker du att dina vänner kan förutsäga för nästa testresultat Vad tror du att dina föräldrar kan förutsäga för nästa testresultat Oavsett om Alla blabbing du kan göra för dina vänner och föräldrar, de och din lärare är mycket troliga att du förväntar dig att få något i området 85 du bara fick. Nåväl, nu kan vi anta att trots din självbefrämjande till dina vänner överskattar du dig själv och räknar att du kan studera mindre för det andra testet och så får du en 73. Nu vad är alla berörda och oroade att Förutse att du kommer att få på ditt tredje test Det finns två mycket troliga metoder för dem att utveckla en uppskattning oavsett om de kommer att dela den med dig. De kan säga till sig själva: "Den här killen sprider alltid rök om hans smarts. Hes kommer att få ytterligare 73 om han är lycklig. Kanske kommer föräldrarna att försöka vara mer stödjande och säga, Quote, hittills har du fått en 85 och en 73, så kanske du ska räkna med att få en (85 73) 2 79. Jag vet inte, kanske om du gjorde mindre fester Och werent vaggar vassan överallt och om du började göra mycket mer studerar kan du få en högre poäng. quot Båda dessa uppskattningar flyttar faktiskt genomsnittliga prognoser. Den första använder endast din senaste poäng för att förutse din framtida prestanda. Detta kallas en rörlig genomsnittlig prognos med en period av data. Den andra är också en rörlig genomsnittlig prognos men använder två dataperioder. Låt oss anta att alla dessa människor bråkar på ditt stora sinne, har gissat dig och du bestämmer dig för att göra det bra på det tredje testet av dina egna skäl och att lägga en högre poäng framför din quotalliesquot. Du tar testet och din poäng är faktiskt en 89 Alla, inklusive dig själv, är imponerade. Så nu har du det sista testet av terminen som kommer upp och som vanligt känner du behovet av att ge alla till att göra sina förutsägelser om hur du ska göra på det sista testet. Jo, förhoppningsvis ser du mönstret. Nu kan du förhoppningsvis se mönstret. Vilken tror du är den mest exakta visselpipan medan vi arbetar. Nu återvänder vi till vårt nya rengöringsföretag som startas av din främmande halvsyster, kallad Whistle While We Work. Du har några tidigare försäljningsdata som representeras av följande avsnitt från ett kalkylblad. Vi presenterar först data för en treårs glidande medelprognos. Posten för cell C6 ska vara Nu kan du kopiera den här cellformeln ner till de andra cellerna C7 till och med C11. Lägg märke till hur genomsnittet rör sig över de senaste historiska data men använder exakt de tre senaste perioderna som finns tillgängliga för varje förutsägelse. Du bör också märka att vi inte verkligen behöver göra förutsägelser för de senaste perioderna för att utveckla vår senaste förutsägelse. Detta är definitivt annorlunda än exponentiell utjämningsmodell. Ive inkluderade quotpast predictionsquot eftersom vi kommer att använda dem på nästa webbsida för att mäta förutsägelse validitet. Nu vill jag presentera de analoga resultaten för en tvåårs glidande medelprognos. Posten för cell C5 ska vara Nu kan du kopiera den här cellformeln ner till de andra cellerna C6 till och med C11. Observera hur nu endast de två senaste bitarna av historiska data används för varje förutsägelse. Återigen har jag inkluderat quotpast predictionsquot för illustrativa ändamål och för senare användning vid prognosvalidering. Några andra saker som är viktiga att märka. För en m-period som rör genomsnittlig prognos används endast de senaste datavärdena för att göra förutsägelsen. Inget annat är nödvändigt. För en m-period som rör en genomsnittlig prognos, observera att den första förutsägelsen sker i period m 1. Båda dessa problem kommer att vara väldigt signifikanta när vi utvecklar vår kod. Utveckla den rörliga genomsnittsfunktionen. Nu behöver vi utveckla koden för den glidande genomsnittliga prognosen som kan användas mer flexibelt. Koden följer. Observera att inmatningarna är för antalet perioder du vill använda i prognosen och en rad historiska värden. Du kan lagra den i vilken arbetsbok du vill ha. Funktion MovingAverage (Historical, NumberOfPeriods) Som enstaka deklarering och initialisering av variabler Dim-objekt som variant Dim-räknare som integer Dim-ackumulering som enstaka Dim HistoricalSize som heltal Initialiserande variabler Counter 1 ackumulering 0 Bestämning av storleken på Historisk matris Historisk storlek Historical. Count för Counter 1 till NumberOfPeriods Ackumulera lämpligt antal senast tidigare observerade värden ackumulering ackumulering historisk (HistoricalSize - NumberOfPeriods Counter) MovingAverage Accumulation NumberOfPeriods Koden förklaras i klassen. Du vill placera funktionen på kalkylbladet så att resultatet av beräkningen visas där det ska gälla följande. R - Prognoser för prognoser för att prognosera redigera ARIMA (AutoRegresive Integrated Moving Average) ETS (Exponentiell utjämningstillståndsmodell) Vi diskuterar hur Dessa metoder fungerar och hur man använder dem. Prognospaketöversikt redigera Exponentiell utjämning redigera Namn AKA: exponentiellt vägd glidande medelvärde (EWMA) Ekvivalent med ARIMA (0,1,1) modell utan konstant term Används för jämn data för presentation gör prognoser enkelt glidande medelvärde: Tidigare observationer viktas lika exponentiella utjämning: tilldelar exponentiellt minskande vikter över tiden Formel xt - rå datasekvens st - utgång av exponentiell utjämningsalgoritm (uppskattning av nästa värde av x) - utjämningsfaktor. 0160lt160160lt1601.Choosing Right Inget formellt sätt att välja statistisk teknik kan användas för att optimera värdet av (t. ex. OLS), desto större blir det när det gäller naiv prognoser (samma portar som originalserier med en tidsfördröjning). Dubbel exponentiell utjämning redigera Enkel exponentiell utjämning gör det inte bra när det finns en trend (det kommer alltid att vara bias) Dubbel exponentiell utjämning är en grupp metoder som hanterar problemet Holt-Winters dubbel exponentiell utjämning redigering Och för t gt 1 var är datautjämningsfaktorn. 0160lt160160lt1601, och är trendutjämningsfaktorn. 0160lt160160lt1601. Output F tm - en uppskattning av värdet av x vid tiden tm, mgt0 baserat på de råa data upp till tiden t Trefaldiga exponentiella utjämningsredigeringen tar hänsyn till säsongsförändringar samt trender som först föreslagits av Holts student Peter Winters, 1960 Input xt - Röda datasekvenser av observationer t 1601600 L Längd En cykel med säsongsmässig förändring Metoden beräknar: En trendlinje för datasäsongens index som viktar värdena i trendlinjen baserat på var den tidpunkten faller i cykelns längd L. S t representerar det jämnda värdet av den konstanta delen för tiden t. bt representerar sekvensen av bästa uppskattningar av den linjära trenden som överlagras på säsongsförändringarna ct är sekvensen av säsongskorrigeringsfaktorer ct är den förväntade andelen av den förutsagda trenden när som helst t mod L i den cykel som observationerna tar på Initialisera säsongsindex c tL Det måste finnas minst en komplett cykel i data. Algoritmens output skrivs igen som F tm. En uppskattning av värdet av x vid tiden tm, mgt0 baserat på rådata upp till tiden t. Trippel exponentiell utjämning ges av formlerna där datautjämningsfaktorn är. 0160lt160160lt1601, är trendutjämningsfaktorn. 0160lt160160lt1601, och är säsongsförändringsutjämningsfaktorn. 0160lt160160lt1601. Den allmänna formeln för den ursprungliga trendberäkningen b 0 är: Ställa in de första uppskattningarna för säsongsindex c i för 1,2. L är lite mer involverad. Om N är antalet kompletta cykler som finns i dina data, då: Observera att A j är medelvärdet av x i j-t-cykeln för dina data. ETS-redigering Övergripande parametrar redigera 8.4 Flytta genomsnittsmodeller I stället för att använda tidigare värden av prognosvariabeln i en regression använder en rörlig genomsnittsmodell tidigare prognosfel i en regressionsliknande modell. Y c et theta e theta e dots theta e, där et är vitt brus. Vi hänvisar till detta som en MA (q) modell. Naturligtvis observerar vi inte värdena på et, så det är inte riktigt regression i vanligt bemärkande. Observera att varje värde av yt kan betraktas som ett viktat glidande medelvärde av de senaste prognosfelen. Rörliga genomsnittsmodeller ska emellertid inte förväxlas med glidande medelutjämning som vi diskuterade i kapitel 6. En rörlig genomsnittsmodell används för att prognosera framtida värden medan den genomsnittliga utjämningen används för att uppskatta trendcykeln för tidigare värden. Figur 8.6: Två exempel på data från rörliga genomsnittsmodeller med olika parametrar. Vänster: MA (1) med y t 20e t 0.8e t-1. Höger: MA (2) med y t e t-e t-1 0.8e t-2. I båda fallen distribueras e t normalt vitt brus med medel noll och varians en. Figur 8.6 visar vissa data från en MA (1) modell och en MA (2) modell. Ändring av parametrarna theta1, prickar, thetaq resulterar i olika tidsseriemönster. Liksom med autoregressiva modeller ändrar variansen av felet termen enbart seriens skala, inte mönstren. Det är möjligt att skriva en stationär AR (p) modell som en MA (infty) modell. Med hjälp av upprepad substitution kan vi exempelvis visa detta för en AR (1) - modell: begin yt amp phy1y et amp phi1 (phi1y e) et amp phy12y phi1e et amp phi13y phi12e phi1e et amptext end Tillhandahållet -1 lt phi1 lt 1, värdet av phi1k blir mindre eftersom k blir större. Så småningom uppnår vi yt och phi1 phi12 e phi13 e cdots, en MA (infty) - process. Det omvända resultatet hålls om vi lägger några begränsningar på MA parametrarna. Då kallas MA-modellen inverterbar. Det vill säga att vi kan skriva någon inverterbar MA (q) process som en AR (infty) - process. Omvändbara modeller är inte bara för att vi ska kunna konvertera från MA-modeller till AR-modeller. De har också vissa matematiska egenskaper som gör dem enklare att använda i praktiken. Invertibilitetsbegränsningarna liknar stationaritetsbegränsningarna. För en MA (1) modell: -1lttheta1lt1. För en MA (2) modell: -1lttheta2lt1, theta2theta1 gt-1, theta1-teteta1 1. Mer komplicerade förhållanden håller för qge3. Återigen kommer R att ta hand om dessa begränsningar vid uppskattning av modellerna. Basprognosprognoser refererar till processen med att använda statistiska förfaranden för att förutsäga framtida värden för en tidsserie baserad på historiska trender. För företag är det en förutsättning för att man kan hantera marknadsföring, planering och ekonomi att kunna bedöma resultat för en viss tidsperiod. Till exempel kan en reklambyrå använda försäljningsprognoser för att identifiera vilka framtida månader som kan kräva ökade marknadsföringskostnader. Företag kan också använda prognoser för att identifiera vilka säljare som uppfyllde sina förväntade mål för ett skattekvartal. Det finns ett antal tekniker som kan användas för att generera kvantitativa prognoser. Vissa metoder är ganska enkla medan andra är mer robusta och innehåller exogena faktorer. Oavsett vad som används, bör det första steget alltid vara att visualisera data med hjälp av en linjediagram. Du vill överväga hur metriska förändringar över tiden, om det finns en distinkt trend, eller om det finns tydliga mönster som är anmärkningsvärda. Det finns flera nyckelbegrepp som vi bör ha kännedom om när vi beskriver tidsseriedata. Dessa egenskaper kommer att informera hur vi förprocesserar data och väljer lämplig modelleringsteknik och parametrar. I slutändan är målet att förenkla mönstren i de historiska uppgifterna genom att ta bort kända variationskällor och göra mönstren mer konsekventa över hela datasatsen. Enkelare mönster leder i allmänhet till mer exakta prognoser. Trend: En trend finns när det finns en långsiktig ökning eller minskning av data. Säsongssituation: Ett säsongsmönster uppträder när en tidsserie påverkas av säsongsbetonade faktorer som årstid eller veckodag. Autokorrelation: Avser fenomenen, varigenom värdena på Y vid tiden t påverkas av tidigare värden av Y vid t-i. För att hitta rätt lagstruktur och karaktären av auto korrelerade värden i dina data, använd autokorrelationsfunktionsplotten. Stationär: En tidsserie sägs vara stationär om det inte finns någon systematisk trend, ingen systematisk förändring av variansen, och om det inte existerar periodiska variationer eller säsongsvariationer, är kvantitativa prognostekniker vanligtvis baserade på analysanalys eller tidsserietekniker. Regressionsmetoder undersöker förhållandet mellan den prognostiserade variabeln och andra förklarande variabler med användning av tvärsnittsdata. Tidsseriemodeller använder hitoriska data som8217s har samlats in med jämna mellanrum över tid för målvariabletten för att prognostisera sina framtida värden. Det finns ingen tid att täcka teorin bakom varje av dessa tillvägagångssätt i detta inlägg, så I8217ve valt att täcka högnivåkoncept och tillhandahålla kod för att utföra tidsserieprognoser i R. Jag föreslår starkt förstå den statistiska teorin bakom en teknik innan koden körs. Först kan vi använda ma-funktionen i prognospaketet för att utföra prognoser med hjälp av glidande medelvärde. Denna teknik uppskattar framtida värden vid tidpunkt t genom att medeltala värden av tidsserierna inom k-perioder av t. När tidsserierna är stationära kan det glidande medlet vara mycket effektivt, eftersom observationerna är i närheten över tiden. Den enkla exponentiella smooten är också bra när data saknar trend eller säsongsmönster. Till skillnad från ett rörligt medel ger denna teknik större vikt än de senaste observationerna i tidsserierna. I prognospaketet finns en automatisk prognosfunktion som kommer att löpa igenom möjliga modeller och välj den lämpligaste modellen ger data. Detta kan vara en automatisk regressiv modell av den första oderen (AR (1)), en ARIMA-modell med rätt värden för p, d och q eller något annat som är lämpligare. Där går du, en grundläggande icke-teknisk introduktion till prognoser. Detta borde få en bekant med nyckelkoncepten och hur man utför vissa grundläggande prognoser i R Aldrig missar en uppdatering Prenumerera på R-bloggare för att få e-post med de senaste R-inläggen. (Du kommer inte se det här meddelandet igen.)

No comments:

Post a Comment