Datorövning 1 Fördelningar

Relevanta dokument
Datorövning 1: Fördelningar

Datorövning 1: Fördelningar

Datorövning 1 Introduktion till Matlab Fördelningar

SF1900 Sannolikhetsteori och statistik, HT 2017 Laboration 1 för CINEK2

Laboration 2: 1 Syfte. 2 Väntevärde och varians hos en s.v. X med fördelningen F X (x) MATEMATISK STATISTIK, AK FÖR BYGG, FMS 601, HT-08

repetera begreppen sannolikhetsfunktion, frekvensfunktion och fördelningsfunktion

Laboration 3: Stora talens lag, centrala gränsvärdessatsen och enkla punktskattningar

SF1905 Sannolikhetsteori och statistik: Lab 2 ht 2011

DATORÖVNING 2 MATEMATISK STATISTIK FÖR D, I, PI OCH FYSIKER; FMSF45 & MASB03. bli bekant med summor av stokastiska variabler.

bli bekant med summor av stokastiska variabler.

träna på att använda olika grafiska metoder för att undersöka vilka fördelningar ett datamaterial kan komma från

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

Datorövning 2 Betingad fördelning och Centrala gränsvärdessatsen

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

Laboration 3: Parameterskattning och Fördelningsanpassning

Syftet med den här laborationen är att du skall bli mer förtrogen med följande viktiga områden inom matematisk statistik

Laboration 1: Beskrivande statistik

Demonstration av laboration 2, SF1901

Beräkningsverktyg HT07

Laboration 3: Stora talens lag, centrala gränsvärdessatsen och enkla punktskattningar

TSBB14 Laboration: Intro till Matlab 1D

Laboration: Grunderna i Matlab

Matematisk statistik allmän kurs, MASA01:B, HT-14 Laborationer

Matematikcentrum 1(6) Matematisk Statistik Lunds Universitet MASB11 - Biostatistisk grundkurs VT2014, lp3. Laboration 2. Fördelningar och simulering

Mer om funktioner och grafik i Matlab

Lunds tekniska högskola Matematikcentrum Matematisk statistik

Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26

Matriser och Inbyggda funktioner i Matlab

M0043M Integralkalkyl och Linjär Algebra, H14, Matlab, Föreläsning 1

Introduktion till MATLAB

Projekt 1: Om fördelningar och risker

Innehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Lunds tekniska högskola Matematikcentrum Matematisk statistik

Datorövning 3 Bootstrap och Bayesiansk analys

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 2 november 2015 Sida 1 / 23

Mer om funktioner och grafik i Matlab

SF1901 Sannolikhetsteori och statistik: HT 2014 Lab 1 för CSAMHS, CINEKI, och CL

SF1920/SF1921 Sannolikhetsteori och statistik, VT 2018 Laboration 1 för CELTE2/CMATD3

Laboration 1: Mer om Matlab samt Deskriptiv statistik

Datorövning 3 Bootstrap och Bayesiansk analys

At=A' % ' transponerar en matris, dvs. kastar om rader och kolonner U' % Radvektorn U ger en kolonnvektor

Laboration 1: Grundläggande sannolikhetsteori, simulering och dataanalys

Laboration 3: Enkla punktskattningar, styrkefunktion och bootstrap

Målet för D3 är att studenterna ska kunna följande: Dra slumptal från olika sannolikhetsfördelningar med hjälp av SAS

Grafritning och Matriser

TANA17 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab

Laboration 1: Grundläggande sannolikhetsteori, simulering och dataanalys

Matematikcentrum 1(7) Matematisk Statistik Lunds Universitet Per-Erik Isberg. Laboration 1. Simulering

1 Syfte. 2 Förberedelseuppgifter DATORLABORATION 1 MATEMATISK STATISTIK, AK FÖR L, FMS 033, HT-03

Matematikcentrum 1(7) Matematisk Statistik Lunds Universitet MASB11 - Biostatistisk grundkurs HT2007. Laboration. Simulering

Laboration 1: Grundläggande sannolikhetsteori, simulering och dataanalys

Laboration 1: Introduktion till R och Deskriptiv statistik

TAIU07 Matematiska beräkningar med Matlab

Matriser och Inbyggda funktioner i Matlab

DATORÖVNING 2: STATISTISK INFERENS.

Introduktion till Matlab

1 Syfte. 2 Moment hos och faltning av fördelningar MATEMATISK STATISTIK, AK FÖR L, FMS 033, HT Angående grafisk presentation

Målet för D2 är att studenterna ska kunna följande: Dra slumptal från olika sannolikhetsfördelningar med hjälp av SAS

Laboration: Grunderna i MATLAB

SF1910 Tillämpad statistik, HT 2016 Laboration 1 för CSAMHS, CLGYM-TEMI

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

Laboration 1: Grundläggande sannolikhetsteori, simulering och dataanalys

Introduktion till Matlab

TAIU07 Matematiska beräkningar med MATLAB för MI. Fredrik Berntsson, Linköpings Universitet. 15 januari 2016 Sida 1 / 26

Laboration 2: Sannolikhetsteori och simulering

Laboration 5: Regressionsanalys. 1 Förberedelseuppgifter. 2 Enkel linjär regression DATORLABORATION 5 MATEMATISK STATISTIK FÖR I, FMS 012, HT-08

Innehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Introduktion till Matlab

Linjär algebra med tillämpningar, lab 1

SF1901: SANNOLIKHETSTEORI OCH STATISTIKTEORI KONSTEN ATT DRA INTERVALLSKATTNING. STATISTIK SLUTSATSER. Tatjana Pavlenko.

Laboration med Minitab

Introduktion till Matlab

Introduktion till Matlab

Introduktion till Matlab

Föreläsning 3, Matematisk statistik Π + E

Introduktion till Matlab

Dagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

Instruktion för laboration 1

Laboration 2: Styrkefunktion samt Regression

Laboration 1: Grundläggande sannolikhetsteori, simulering och dataanalys

Introduktion till Matlab

Föreläsning 7. Statistikens grunder.

Funktioner och grafritning i Matlab

Laboration 4: Hypotesprövning och styrkefunktion

Matriser och vektorer i Matlab

MATLAB the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc.

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 27 oktober 2015 Sida 1 / 31

MAM283 Introduktion till Matlab

1 Förberedelser. 2 Teoretisk härledning av värmeförlust LABORATION 4: VÄRMEKRAFTVERK MATEMATISK STATISTIK AK, MAS 101:A, VT-01

En introduktion till MatLab

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

TEKNISKA HÖGSKOLAN Matematik Fredrik Abrahamsson. Introduktion till MATLAB

CTH/GU LABORATION 1 MVE /2013 Matematiska vetenskaper. Mer om grafritning

Matlabövning 1 Funktioner och grafer i Matlab

Matriser och linjära ekvationssystem

Beräkningsvetenskap och Matlab. Vad är MATLAB? Vad är MATLAB? Användningsområden. Vad är MATLAB? Grunderna i Matlab. Beräkningsvetenskap == Matlab?

TAIU07 Matematiska beräkningar med Matlab

Transkript:

Lunds tekniska högskola Matematikcentrum Matematisk statistik FMSF20: MATEMATISK STATISTIK, ALLMÄN KURS, 7.5HP FÖR E, HT-15 Datorövning 1 Fördelningar I denna datorövning ska du utforska begreppen sannolikhet och fördelningar genom numeriska exempel i Matlab. Du behöver en Matlab-installation som inkluderar Statistics Toolbox. De extra filer du behöver finns att ladda ner från kursens hemsida www.maths.lth.se/matstat/kurser/fmsf20/ 1 Förberedelseuppgifter 1. Läs igenom denna handledning. 2. Förvissa dig om att du förstår vad täthetsfunktion och fördelningsfunktion är och hur de förhåller sig till varandra. 3. Redovisas vid laborationens start! Skriv upp täthetsfunktionen för X N (m, s)-fördelad s.v. och skissa upp den. Ange väntevärde och standardavvikelse för X. 2 Matlab de första stegen (Hoppa över detta om du redan är van vid Matlab) Matlab 1 tillåter användaren att kombinera numeriska beräkningar med avancerad grafik. Kortare kommandon kan köras interaktivt, men för mer komplicerade problem är det möjligt att skriva program och definiera egna funktioner. I tillägg till Matlab finns flera s.k. Toolboxes (verktygslådor) för olika tillämpningar, t.ex. signalbehandling, reglerteori och finita elementmetoder. Under datorövningarna kommer vi att använda, bland annat, Statistics Toolbox. Matriser och vektorer i Matlab Matlab kan användas som en avancerad miniräknare: de vanligaste funktionerna är fördefinierade. Vid Matlab-prompten (>>), kan du t.ex. beräkna 1.19 2 1 + sin(p/2) + e 2 genom att skriva >> sqrt(1.19^2-1)+sin(pi/2)+exp(2) och resultatet dyker upp. 1 Mer information om Matlab finns på http://www.mathworks.com/

2 DATORÖVNING 1, FMSF20 HT-15 Uppgift: Beräkna ovanstående uttryck i Matlab. När du vill veta mer om de fördefinierade funktionerna i Matlab är help-kommandot användbart. Det är en god idé att använda det under övningarna, även om det inte står uttryckligen i handledningen. Börja med >> help help Sedan kan du, t.ex. skriva >> help log för att få reda på vilken bas Matlab använder för logaritmfunktionen. Matlab är en förkortning av Matrix laboratory, och matriser och vektorer är karakteristiskt för Matlab. Alla data är lagrade i vektorer och matriser. (Med vektor menar vi en rad- eller kolonnmatris.) Matrisen ( ) 2 0 A = 3 1 skrivs in i Matlab på följande sätt: >> A = [2 0; 3 1] En radvektor kan t.ex. skrivas på följande sätt: >> v=[0 0.1 0.2 0.3] och en kolonnvektor: >> vv=[0; 0.1; 0.2; 0.3] Kommandot length (eller size) ger storleken på vektorn eller matrisen: >> vlength=length(v) >> vvlength=length(vv) >> ASize=size(A) Vi kan plocka ut enskilda element ur vektorer och matriser på följande vis. Säg att vi vill komma åt värdet av det fjärde elementet i vektorn v och dessutom värdena på de tre första elementen. Det gör vi på följande vis: >> v(4), v(1:3) eller, tillsammans: >> v([4 1:3]) Elementen i en vektor kan sorteras i stigande ordning: >> u=[8-3 2.7] >> usorted=sort(u)

DATORÖVNING 1, FMSF20 HT-15 3 Att hantera variabler och data Vi har nu definierat ett antal variabler och en lista på de variabler som finns i Matlabs minne fås med kommandot who. Kommandot whos ger samma lista men utökad med storleken på variablerna. Uppgift: Kör båda kommandona. Känner du igen variablerna i listan? Vi avslutar sessionen med att ta bort variablerna. Alla variablerna tas bort med kommandot clear. Använd help clear för att ta reda på hur du tar bort bara vissa variabler. Grafik I den här delen ska du göra några enkla figurer i Matlab. Efteråt kommer du att kunna rita en figur över en funktion x f (x). Som exempel, låt oss välja f (x) = sin x för 0 < x < 4p. Skapa först variablerna x respektive y: >> x=0:0.05:4*pi % Detta efter procenttecknet är en kommentar, skriv % inte av den. >> y=sin(x) % x=0, 0.05, 0.1, 0.15,..., 4pi Två vektorer av samma längd kan ritas mot varandra så här: >> plot(x,y) Ett grafikfönster dyker nu upp (om det inte redan fanns ett) som figuren ritas i. Figuren heter figure(1). Man kan ha flera grafikfönster. Vill du att nästa figur ska komma i ett nytt fönster, istället för att rita över den första figuren, så kan du skapa ett nytt grafikfönster med kommandot figure(2). Man kan ge flera optioner till plot-kommandot, t.ex., färg: >> plot(x,y, r ) % Röda streck Vi kan också välja att rita ut de enskilda punkterna som stjärnor istället för att dra linjer mellan dem: >> plot(x,y, * ) Man kan också kombinera optionerna. Se help plot för att ta reda på vad följande kommando borde göra. Kolla sedan att det blev så också: >> plot(x,y, md- ) Man kan använda kommandot axis för att titta på en bestämd det av figuren. Pröva med >> axis([0 10-1.5 1.5]) Vad hände? Det är ofta lättare at tolka en figur om man lägger till en grid: ta reda på hur kommandot grid används och lägg till en grid till din figur. Det aktuella figuren töms med kommandot clf. Det tomma fönstret blir kvar. Vill du ta bort det också ska du använda close istället.

4 DATORÖVNING 1, FMSF20 HT-15 3 Relativa frekvenser och fördelningar (Här börjar den egentliga laborationen) I denna del ska vi använda numeriska exempel i Matlab för att studera koncepten sannolikhet och fördelning. Målet är att du ska få en intuitiv känsla för sannolikhetsresonemang, snarare än att konfronteras med teori. Data-undersökning För att illustrera syftet använder vi artificiella data som är simulerade från en statistisk fördelning. Detta i motsats till verkliga data där det inte finns några etiketter som säger vilken fördelning det är. Trots att vi vet hur data genererades är det ändå användbart och man använder ofta simulerade data i skattningar och test i mer komplicerade situationer. För att skaffa dig ett slumpmässigt dataset med 50 värden, skriv >> data=randn(1,50) Uppgift: Vilken fördelning kommer ditt slumpmässiga stickprov från (använd help randn)? Vilka värden har parametrarna i den? Skriv ner täthetsfunktionen. En god regel, när man står inför ett nytt datamaterial, är att rita upp det på några olika sätt. Vi börjar med att göra ett histogram: >> hist(data) Uppgift: Ser det ut som du väntade dig? Jämför med täthetsfunktionen. Använd nu kommandot >> figure(2) % Ritar i ett nytt fönster >> plot(data,. ) och relatera det till histogrammet. Uppgift: Jämför histogrammet med ploten. Hur syns egenskaperna hos data i histogrammet, och tvärtom? Ett annat sätt är att rita de sorterade data, med ordningsnumret på y-axeln: >> figure(3) >> plot(sort(data),1:length(data),. )

DATORÖVNING 1, FMSF20 HT-15 5 Uppgift: Jämför denna plot med figure(1) och figure(2). Hur hänger de ihop med varandra? Uppgift: Välj ut några datapunkter i figure(2) och försök hitta dem i de andra två figurerna. I det här sortens figur kan vi t.ex. avläsa hur många av observationerna som är mindre än eller lika med ett visst tal. Uppgift: Välj x = 1.1 och försök avgöra i figuren (det går att zooma) hur många av värdena som är mindre än eller lika med 1.1. När antalet observationer i stickprovet ökar kan vi tolka kvoten som sannolikheten att få ett värde mindre än eller lika med x. Kvoten kan beräknas så här: >> ratio = sum(data<=1.1) / length(data) Uppgift: Stämmer det med din uppskattning från figuren? För att förstå hur data<=1.1 fungerar så jämför vi det med ursprungsdata: >> data >> data<=1.1 Vad är det som händer? Uppgift: Pröva med några andra värden på x. Hur borde andelen ändra sig när x ökar respektive minskar? Jämför med figuren. Den omvända proceduren, hitta det värde x som motsvarar en given sannolikhet, dvs en given kvantil, är ofta viktigare. Vi återkommer till det lite senare. Vi kan naturligtvis låta datorn välja ett stort antal värden att undersöka och sedan försöka få en överblick. Eftersom vi har ett ändligt antal observationer så blir antalet, eller andelen, observationer som än mindre än eller lika med ett visst x-värde en stegfunktion som vi kan rita upp: >> figure(4) >> stairs(sort(data),(1:length(data))/length(data), - ) >> grid on

6 DATORÖVNING 1, FMSF20 HT-15 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 3 2 1 0 1 2 3 Figur 1: Empirisk fördelningsfunktion, ett exempel Figuren bör likna Figur 1 i handledningen och din egen figure(3), bortsett från y-skalan. Den visar hur värdena är fördelade och denna typ av figur kallas empirisk fördelningsfunktion (empirical distribution function 2. För ett värde på x-axeln, t.ex. 1.1, hittar vi, på y-axeln, andelen värden som är mindre än eller lika värdet på x-axeln. Uppgift: Kolla att andelen värden som är mindre än eller lika med 1.1 stämmer med det du fick fram tidigare. Större stickprov. Fördelningsfunktionen för en slumpvariabel Låt oss nu studera ett större datamaterial, t.ex. 2000 observationer från samma fördelning som tidigare. Vi simulerar data och ritar dem i en ny figur: >> data=randn(1,2000); >> figure(5) >> hist(data) >> figure(6) >> stairs(sort(data),(1:length(data))/length(data),.- ) >> grid on Uppgift: Jämför histogrammet med det i figure(1). Hur förändrades det när du fick fler observationer? Uppgift: Jämför den empiriska fördelningsfunktionen med den i figure(4). Hur förändrades den? 2 Fördelningsfunktioner kallas ofta cumulative distribution functions.

DATORÖVNING 1, FMSF20 HT-15 7 Uppgift: Vad blir nu andelen värden som är mindre än eller lika med 1.1? Med många observationer närmar sig resultatet fördelningsfunktionen, dvs, för en slumpvariabel X, funktionen F X (x) = P(X x). I vårt fall valdes X från en normalfördelning; vi hade X N(0, 1). Vi ritar in den teoretiska fördelningsfunktionen, normcdf, i samma figur som de två empiriska: >> x=linspace(-4,4,500); % 500 värden jämnt fördelade mellan -4 och 4 >> figure(4) >> hold on % Fortsätt rita fler saker i samma figur. >> plot(x,normcdf(x), r ) >> hold off % Sluta rita i samma figur. >> figure(6) >> hold on % Fortsätt rita fler saker i samma figur. >> plot(x,normcdf(x), r ) >> hold off % Sluta rita i samma figur. För alla fördelningsfunktioner F X, har vi att F X (x) 1 när x och att F X (x) 0 när x. Uppgift: Tolka figuren. Vad är det på x- och y-axlarna? Uppgift: Jämför hur bra de empiriska fördelningsfunktionerna följer den teoretiska i de två figurerna. Vad hände när antalet observationer ökade? Uppgift: Läs av P(X 1.1) ur den teoretiska fördelningsfunktionen i figuren och jämför med dina tidigare skattningar. Jämför också med det exakta värdet som kan fås med normcdf(1.1). Kvantiler Begreppet kvantil är viktigt. Kvantilen kan definieras på olika sätt men vi (och många andra) använder följande definition: kvantilen är det tal x a som uppfyller P(X x a ) = 1 a (1) där a är ett tal mellan 0 och 1 (vanliga val är: 0.05, 0.01, 0.001).

8 DATORÖVNING 1, FMSF20 HT-15 Uppgift: Läs av kvantilen x 0.05 där a = 0.05 ur dina figurer, med hjälp av definitionen (1). Både som skattningar i de två empiriska fördelningsfunktionerna och exakt i den teoretiska. Jämför med det exakta värdet, som kan fås med norminv(1-0.05). Uppgift: Experimentera med att ändra antalet observationer. Simulera nya slumptal, rita nya histogram och empiriska fördelningsfunktioner, samt skatta P(X 1.1) och x 0.05. Uppgift: Använd ett mycket litet dataset, t.ex. 5 observationer och gör om simuleringarna och skattningarna några gånger. Verkar de tillförlitliga? Uppgift: Använd ett större dataset, t.ex. 100 observationer och gör om simuleringarna och skattningarna några gånger. Verkar de mer tillförlitliga nu? Hur datasetets storlek påverkar osäkerheten i uppskattningarna kommer vi tillbaka till under hela resten av kursen. Andra fördelningar Vi ska nu rita upp några normalfördelningar, N (m, s), och se hur de ändrar sig när vi ändrar på parametrarna m och s. >> close all % stäng alla gamla figurer >> x = linspace(0,10,1000); % Genererar 1000 tal jämnt utspridda % mellan 0 och 10. >> figure(1) >> plot(x,normpdf(x,2,0.5)) % N(2, 0.5) >> hold on % Lås plotten, övriga ritas i samma bild. >> plot(x,normpdf(x,7,0.5), r ) % N(7, 0.5) i rött >> plot(x,normpdf(x,5,2), g ) % N(5, 2) i grönt >> plot(x,normpdf(x,5,0.2), y ) % N(5, 0.2) i gult >> hold off % Lås upp plotten >> xlabel( x ) >> title( Täthetsfunktioner, f(x) ) >> figure(2) >> plot(x,normcdf(x,2,0.5)) >> hold on >> plot(x,normcdf(x,7,0.5), r ) >> plot(x,normcdf(x,5,2), g ) >> plot(x,normcdf(x,5,0.2), y )

DATORÖVNING 1, FMSF20 HT-15 9 >> hold off >> xlabel( x ) >> title( Fördelningsfunktioner, F(x) ) Uppgift: Vad händer med fördelningen när m ändras? Vad representerar m i fördelningen? Uppgift: Vad händer med fördelningen när s ändras? Vad respresenterar s i fördelningen? Uppgift: Fördelningsfunktionen är ju integralen av täthetsfunktionen. Relatera dem till varandra i figuren. Hur ändrar sig, t.ex. fördelningsfunktionen när x ligger nära m jämfört med när x ligger långt från m? Hur ser täthetsfuktionen ut då (stor eller liten?) Uppgift: Experimentera med andra värden på m och s och se vad som händer. Du kan behöva ändra x för att för att få plats i figuren (tips: det allra mesta av en normalfördelning ryms inom m ± 4s). Jfr. Uppgift 6.7: Elförbrukningen (kwh) vid en kemisk tillverkningsprocess varierar från dag till dag som en s.v. X N (180, 5). Uppgift: Rita upp fördelningsfunktionen för X och avläs sannolikheten att elförbrukningen en viss dag är minst 170 kwh. Jämför med det exakta värdet 1-normcdf(170,180,5). Uppgift: Utnyttja figuren för att bestämma P(170 X 200). Jämför med exakta värdet normcdf(200,180,5)-normcdf(170,180,5). Uppgift: Läs av 1 %-kvantilen för elförbrukningen. Jämför med det exakta värdet norminv(1-0.01,180,5).