Lunds tekniska högskola Matematikcentrum Matematisk statistik FMS035: MATEMATISK STATISTIK FÖR M DATORLABORATION 1, 2012-03-30 Syfte Syftet med dagens laboration är att du ska träna på att hantera olika numeriska mått (medelvärde, median, standardavvikelse och varians) och figurer (histogram och empirisk fördelningsfunktion) som används när man studerar ett datamaterial få en introduktion till begreppet fördelningar träna på att använda olika grafiska metoder för att undersöka vilka fördelningar ett datamaterial kan komma från Ni kommer att titta på två olika datamaterial. Först studerar ni mätningar av varmvatenflöden i ett hyreshus i Malmö. Sedan studerar ni hur många dagar det går mellan två kraftiga jordbävningar. Förberedelseuppgifter Läs igenom avsnitt 10.1-10.3 Beskrivande statistik i boken. Koncentrera dig på hur de olika begreppen definieras och hur figurerna tillverkas och tolkas. Fördjupa dig inte de många numeriska omskrivningarna som görs i avsnittet. Du skall ha gjort följande uppgifter innan du kommer till laborationen. Hemuppgift 1: Läs igenom följande beskrivning av hur man gör en empirisk fördelningsfunktion: Med hjälp av ett stickprov, x 1, x 2,...,x n, kan man rita den s.k. empiriska fördelningsfunktionen. Datapunkterna, x i sorteras från minsta till största. Andelen datapunkter som är mindre eller lika med x i plottas sedan mot x i. Det blir en växande trappstegsfunktion som tar ett skutt med höjd 1/n för varje datapunkt. I formler: Vi har mätningarna x 1, x 2,...,x n. (a) Först sorteras stickprovet i växande ordning, betecknas x (1), x (2),...,x (n). (b) Den empiriska fördelningsfunktionen F n (x) definieras som: 0, x < x (1), F n (x) = i/n, x (i) x < x (i+1), 1, x (n) x (c) Därefter plottas de n stycken talparen (x (i), i n ) så att ett hopp från (i 1)/n till i/n med höjd 1/n bildas för varje x (i). Hemuppgift 2: Det är viktigt att skilja data (observationerna, mätningarna från ett visst slumpmässigt fenomen) från modellen man gör om den slumpmässiga variationen. I kursen använder vi begreppen empirisk fördelningsfunktion, täthetsfunktion (frekvensfunktion), stolpdiagram, histogram, sannolikhetsfunktion och fördelningsfunktion. Vilka av dessa hör till data och vilka hör till modellen? Det är också möjligt att para ihop begreppen, så att ett modellbegrepp motsvarar ett annat begrepp för data. Gör det! Data Modell
Matlab på labbarna Lämpliga Matlabkommandon anges oftast i uppgifterna - använd help för att få en beskrivning av ett kommando, ellerlookfor för att hitta ett kommando ni behöver. Om du vill ha en mer omfattande introduktion se t.ex. Reistad, Nina: Börja med MatLab, Lund 2008. Dessa finns tillgängliga i laborationslokalerna som referens. 1 Inledning I första delen av laborationen analyserar ni mätningar av varmvattenflödet i ett hyreshus i Malmö. Då introduceras några statistiska begrepp som används för att göra en lämplig översikt av data. I andra delen försöker ni anpassa en standardfördelning till data för att få en modell hur vattenflödena sprider sig. I tredje delen av laborationen studerar ni data angående kraftiga jordbävningar. www.maths.lth.se/matstat/kurser/fms035/material filenvatten som innehåller vattenflödesmätningar hjälpfilerna till gumbelfördelningen filenjordbavning Lägg dem i er hemkatalogh : Om ni sedan i Matlab skriver addpath h : kan Matlab hitta dem. Alternativt sparar ni filerna i en lämplig katalog och ändrar matlabs current folder till er valda katalog. 2 Mätningar av varmvattenflöde i ett hyreshus Här ska vi studera några problem som uppstår vid dimensionering av värmeväxlare som genererar varmvatten till bostadshus. Vid mätningar i en fastighet med 20 lägenheter i Malmö, mättes flödet av varmvatten (l/s) var 30:e sek under ett dygn. 2.1 Intressanta frågeställningar Hur ska vi göra en lämplig översikt av materialet? Hur stor är flödet i genomsnitt, hur stor är spridningen i materialet? Hur fördelar sig flödena? Vilket flöde ska man dimensionera systemet för, om man vill att sannolikheten att förbrukningen ska överstiga den dimensionerade ska vara liten, t.ex. lika med 5%, den så kallade 5%-kvantilen? Finns det en skillnad i flöden på olika tider på dygnet? Är det exempelvis högre varmvattenflöde på morgonen än på kvällen? 2.2 Datafilen Data ligger i filenvatten.mat. Läs in filen i Matlabs arbetsminne med kommandot >> load vatten Med kommandot >> whos kan ni se vilka variabler som finns i Matlabs arbetsminne. Varibelnflode anger flödet av varmvatten (l/s) under de senaste 30 sekunderna. Observera att observationerna är angivna i tidsföljd. Varibeln tid är en vektor, lika lång som flode, och anger tidpunkten (h) för mätningen, som ett decimaltal mellan 0 och 24. 2
2.3 Överblick över materialet Det är viktigt att först skaffa sig en bra översikt över datamaterialet för att upptäcka eventuella konstigheter eller trender. Lämpliga matlabkommandon finns oftas i uppgifterna - använd help för mer utförlig information hur kommandot ska användas. Uppgift 2.1: Plotta varmvattenflödet mot tiden >> plot(tid,flode, * ) >> xlabel( timme ) >> ylabel( flöde (l/s) ) Vad är karakteristiskt för flödesmätningarna? Uppgift 2.2: Då vi vill använda mätningarna för att dimensionera en värmeväxlare är det intressant att titta på den tiden då det verkligen rinner vatten i kranarna, dvs då flödet är större än noll. Tag ut dessa flöden och tider. >> tid=tid(flode>0) %sorterar ut de värden ur tidsvektorn där flödet är >0 >> flode=flode(flode>0) För att få en bättre översikt över flödesfördelningen kan man rita ett histogram. Skapa en ny figur i MATLAB och plotta ut ett histogram hist över flödena för att få en uppfattning om fördelningen av olika värden. >> figure >> help hist >> hist(flode) Antalet klasser i histogrammet kan du få till m genom kommandothist(flode,m). Uppgift 2.3: Ni vill vi specialstudera morgontimmarna. Plocka ut de flödesmätningar som är gjorda mellan kl 7 och 9 och lägg dem i vektorn morgon. Här används en av MATLABs användbara logiska operatorer (& betecknar och, betecknar eller ), semikolon efter satsen gör att du inte får hela vektorn utskriven på skärmen. >> morgon=flode(7<=tid & tid<=9); Plocka även ut motsvarande tidpunkter och plotta morgonflödena >> morgontid=tid(7<=tid & tid<=9); >> plot(morgontid,morgon,. ) Uppgift 2.4: Plocka ut flödena och motsvarande tidpunkter under kvällstimmarna 18-20 och lägg dem i vektorerna kvall ochkvallstid. För att få en bättre bild av de två flödesfördelningarna kan man rita histogram. Gör två histogram i var sin delfigur under varandra så ni kan jämföra bättre. Koden nedan hjälper er med det. 3
>> subplot(211) % subplot splittrar figurfönstret i delfönster >> hist(morgon) >> title( Histogram över flöden ) >> xlabel( Flöde morgon (l/s) ) >> ylabel( Antal ) >> subplot(212) >> hist(kvall); >> xlabel( Flöde kväll (l/s) ) >> ylabel( Antal ) Samma axlar på figurerna kan du få med kommandot axis. Med t ex axis([xmin xmax ymin ymax]) bestämmer du själv min- och maxvärden på axlarna. Uppgift 2.5: Beräkna medelvärde och standardavvikelse för de två datamaterialen. Använd kommandonamean,std. Uppgift 2.6: Finns det skillnad på flödet vid morgon och kväll? Gör en uppskattning av hur mycket genomsnittsflödet skiljer sig från morgon till kväll. Uppgift 2.7: För att bestämma vilket flöde en värmeväxlare ska klara av, kan man tänka sig att man dimensionerar värmeväxlaren så att sannolikheten att förbrukningen ska överstiga den dimensionerade ska vara liten, t.ex. lika med 5%. Vad menas med 5%-kvantilen för ert datamaterial? Vad är 5%-kvantilen för ert datamaterial på morgonen respektive kvällen? Här får man använda matlabs kommando prctile (5%-kvantilen är detsamma som 95%-percentilen) där >> prctile(morgon,95) ger 1 0.95 = 5%-kvantilen av data i vektornmorgon. 2.4 Empirisk fördelningsfunktion Då man har mätningar, x 1, x 2,...,x n, fås mycket information genom att rita upp den s.k. empiriska fördelningsfunktionen som betecknas F n (x). Datapunkterna, x i sorteras från minsta till största. Andelen datapunkter som är mindre eller lika med x i plottas sedan mot x i. Det blir en växande trappstegsfunktion som tar ett skutt med höjd 1/n för varje datapunkt. I Matlab kan kommandotcdfplot användas för att rita upp den empiriska fördelningsfuntionen F n (x). 4
Uppgift 2.8: Rita F n (x) för flödesmätningarna vid morgonen. Empiriska fördelningsfunktionen kan användas för att avläsa kvantilerna i ett datamaterial. Den kan också (med hjälp av den klassiska sannolikhetsdefinitionen) ge oss uppskattningar om sannolikheter: värdet på y-axeln för ett visst x ger oss andelen flöden som understiger x l/s. Det är därmed ett mått på sannolikheten att ett flöde understiger x l/s. Uppgift 2.9: Avläs 5%-kvantilen med hjälp F n (x) och jämför med er tidigare beräkning. Uppgift 2.10: Använd F n (x) för att uppskatta sannolikheten att flödet på morgonen i hyreshuset understiger 0.08 l/s. Hur troligt är det att den överstiger 0.1 l/s? Uppgift 2.11: Rita i samma figur även ut den empiriska fördelningsfunktionen för flödena under kvällen (använd kommandot hold för att få den gamla figuren att stanna kvar). Hur troligt är det att flödet på kvällen i hyreshuset understiger 0.08 l/s? 3 Anpassning av standardfördelning till flödesmätningar Då man dimensionerar en värmeväxlare för varmvatten måste man bl a fundera över ekonomi, driftsäkerhet och leveranssäkerhet. Vilket flöde ska man dimensionera systemet för, om man vill att sannolikheten att den maximala förbrukningen ska överstiga den dimensionerade ska vara liten, t ex lika med α (= ett litet tal). Denna fråga har vi redan metoder för att svara på genom att bara titta på data. Problemet med detta är att man då bara svarar på frågor om sitt datamaterial. För att få en bättre uppfattning om hur framtida flöden i huset beter sig måste vi hitta sätt att beskriva flödena. Här ska vi fundera över om vi kan hitta en statistisk standardfördelning som väl beskriver den variation i flöde som vi observerat. Uppgift 3.1: Teckna en stokastisk variabel X : mängd flöde (l/s) under en 30s-period då det strömmar vatten i ledningarna. Då är vår vektor flode observationer av denna slumpvariabel. Bör X modelleras som en kontinuerlig eller diskret stokastisk variabel? 5
I praktiska sammanhang ställs man ofta inför situationen att man har ett antal mätningar x 1, x 2,...,x n som kan anses som observationer från en s.v. X men man vet inte fördelningen för X. Ni ska titta på två tekniker för att försöka anpassa en fördelning till data, nämligen empirisk fördelningsfunktion och fördelningspapper. Uppgift 3.2: Vi lämnar flöden ett tag och gör egna simuleringar. Undersök hur en empirisk fördelningsfunktion ser ut på ett datamaterial som ni själv simulerar fram. Simulera 100 observationer från X N (2, 1) och rita upp motsvarande empiriska fördelningsfunktion. Börja medhelp normrnd för att se hur ni ska skriva för att simulera slumptalen från normalfördelningen. (normrnd, cdfplot, grid) Uppgift 3.3: På y-axeln har vi F n (x). Använd denna för att skatta medianen i fördelningen. Uppgift 3.4: Eftersom vi kännerμochσidet här fallet (μ=2 ochσ=1) kan vi komplettera figuren med den riktiga fördelningsfunktionen, F(x), vilket görs med kommandona nedan. %generera först en x-vektor med lämpliga ändpunkter(här förutsätts att de %simulerade observationerna ligger i vektorn A) >> x=min(a):0.01:max(a); >> hold on >> plot(x,normcdf(x,2,1)) % ritar upp fördelningsfunktionen för N(2,1) i punkterna % som finns i vektorn x >> hold off Uppgift 3.5: Rita den empiriska fördelningsfunktionen för flödena i hyreshuset. Är det rimligt att tänka sig att data kommer från en normalfördelning? Uppgift 3.6: Föregående fråga är ju mycket svår att svara på eftersom vi inte vet vilken normalfördelning vi ska jämföra med, vi har ju inteμochσ. Men vi kan skattaμ(mean) ochσ(std) från flödessmätningarna och sedan jämföra den empiriska fördelningsfunktionen med en normalfördelning baserad på den skattade parametrarna. Gör detta! Verkar normalfördelning vara en rimlig modell för flödesmätningarna? 3.1 Fördelningpapper Det kan vara ganska svårt, speciellt om man har få värden i datamaterialet, att avgöra om en fördelning är lämplig bara genom att titta på empiriska fördelningar. Ett alternativ, som används mycket inom industrin, är fördelningspapper. Ett fördelningsspapper är ett diagram med en skala som är specifik för den speciella fördelning som vi vill jämföra med. Det finns exempelvis normalfördelningspapper, Weibullpapper och Gumbel- eller extremvärdespapper. 6
Kortfattat kan man säga att det fotfarande är en graf av en fördelningsfunktion F(x). Dock är skalan på y-axeln på ett sådant papper är avpassat så fördelningsfunktionen blir en rät linje. Det betyder att den enpiriska fördelningsfunktionen ska ligga längst denna raka linje. Omvänt gäller alltså att om den empiriska fördelningsfunktionen avviker allt för mycket från en rät linje drar vi slutsatsen att denna fördelning inte passar till våra data. I Matlab kan man direkt plotta ett stickprov i normalfördelningspapper med kommandotnormplot. Användhelp för att komma underfund med funktionen. Uppgift 3.7: Tidigare skapade ni 100 slumptal från N(2, 1). Rita upp dessa i ett normalfördelningspapper. (Observera att även om stickprovet kommer från en normalfördelning behöver de inte ligga exakt på en rät linje, vi har ju med slumptal att göra!) Uppgift 3.8: Undersök med hjälp av normalfördelningspapper om flödesmätningarna verkar vara normalfördelade genom att plotta de datameterialet flode i ett normalfördelningspapper. Är ett normalfördelningsantagande rimligt? Uppgift 3.9: Om X : mängd flöde (l/s) under en 30s-period då det strömmar vatten i ledningarna inte kan modelleras som en normalfördelning, kan ni hitta en annan standarfördelning som passar? Med kommandot probplot kan ni testa ett par olika standardfördelningar. För att pröva med en Gumbelfördelning, använd det specialskrivna kommadotwgumbplot Uppgift 3.10: När ni hittat en standarfördelning som passar bra, skriv upp er fullständiga modell. Exempelvis om ni kommit fram till att X kan modelleras som en normalfördelning, skriver ni X: beskrivning i ord av vad X är, X N (värdet på parameter 1, värdet på parameter 2). För att få ut vilka parametrar som er fördelning har finns -fit till standardfördelningnar. Exemplevis om ni kommit fram till att normalfördelning passar bra kan normfit användas. För att hitta det kommando ni vill ha kanlookfor vara användbart. Uppgift 3.11: Antag att man funderar på att sätta in en ny värmeväxlare som maximalt kan klara av ett flöde på 0.4 l/s. Nu när vi har en modell på hur flöden i hyreshuset sprider sig, kan vi svara på frågor, som "Vad är sannolikheten att värmeväxlaren inte kommer kunna leverera efterfrågad kapacitet då det rinner vatten i ledningarna", eller i matematik P(X > 0.4). Använd -cdf för den fördelning ni valt för att hjälpa till med beräkningarna. Exemplevis om ni kommit fram till att normalfördelning passar bra kannormcdf användas. För att hitta det kommando ni vill ha kanlookfor vara användbart. 7
4 Hur ofta kommer kraftiga jordbävningar? (om ni hinner) I denna del av labben ska vi titta på så kallade kraftiga jordbävningar som antingen har en magnitud på minst 7.5 på Richterskalan eller som har orsakat minst 1000 dödsoffer. Data är insamlade under perioden 16 december 1902 till 4 mars 1977. Noterat är antal dagar mellan allvarliga jordbävningar. Eftersom det fanns 63 sådana händelser under tidsperioden består data av 62 tidsmellanrum (enhet dagar). Data finns i filen jordbavning.mat, och ni kan läsa in filen i Matlabs arbetsarea med kommandotload jordbavning. Tidsavstånden finns i variabelnq. Uppgift 4.1: Börja med att rita ut data. Gör histogram och beräkna diverse läges- och spridningsmått. Verkar det troligt att kan gå mer än 5 år mellan kraftiga jordbävningar (hist, mean). Uppgift 4.2: Pröva om ni kan hitta någon standardfördelning som bra beskriver hur tiden mellan två jordbävningar varierar. Skatta parametrarna i fördelningen och skriv ner modellen. Uppgift 4.3: Utnyttja er anpassade standardfördelning för att uppskatta sannolikheten att det dröjer mer än ett år mellan två jordbävningar? Hur skulle sannolikheten beräknas med papper och penna. Skissa gärna täthetsfunktionen. 8