statistics and probability problem by Matlab

profilesa3p14
RandomnumbergenerationandHistogramsbyDonaldDuncan.pdf

Number machine

x

press the button, get a number

Number machine output

0 20 40 60 80 100 0

0.2

0.4

0.6

0.8

1

nu m

be r v

al ue

button push

Is there a pattern?

Number machine output

0 20 40 60 80 100 0

0.2

0.4

0.6

0.8

1

button push

nu m

be r v

al ue

Is there a pattern?

The idea of a histogram

t

v(t)

The idea of a histogram

t

v(t)

The idea of a histogram

t

v(t)

quantization

The idea of a histogram

t

v(t)

The idea of a histogram

t

v(t)

Number machine output

0 20 40 60 80 100 0

0.2

0.4

0.6

0.8

1

nu m

be r

va lu

e

button push

0 0.2 0.4 0.6 0.8 1 0

20

40

60

80

100

120

x value

nu m

be r o

f v al

ue s

Histogram

Number machine output

0 20 40 60 80 100 0

0.2

0.4

0.6

0.8

1

button push

nu m

be r

va lu

e

0 0.2 0.4 0.6 0.8 1 0

50

100

150

200

250

x value

nu m

be r o

f v al

ue s

Histogram

normalize to the total number of button presses

0 0.2 0.4 0.6 0.8 1 0

0.05

0.1

0.15

0.2

0.25

x value

fra ct

io n

of v

al ue

s

Histogram

use more button pushes and more bins

0 0.2 0.4 0.6 0.8 1 0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

x value

fra ct

io n

of v

al ue

s

Histogram

0 0.2 0.4 0.6 0.8 1 0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

x value

fra ct

io n

of v

al ue

s

Histogram

Matlab script % ECE399 example_001 % generate and plot some random samples; create histograms % 03/19/13 D D Duncan % N = 1000; x = rand(1,N); figure(1);plot(x(1:100),'r.') ylabel('number value');xlabel('button push') numbins = 10; [num,bincen] = hist(x,numbins); figure(2);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') x = 0.5+0.1*randn(1,N); figure(3);plot(x(1:100),'r.');ylim([0 1]); xlabel('button push');ylabel('number value') [num,bincen] = hist(x,numbins); figure(4);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') % variations figure(5);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') N = 100000; x = 0.5+0.1*randn(1,N); numbins = 100; [num,bincen] = hist(x,numbins); figure(6);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') figure(7);plot(bincen,num/N,'r-');xlim([0 1]) xlabel('x value');ylabel('fraction of values')

% ECE399 example_001 % generate and plot some random samples; create histograms % 03/19/13 D D Duncan % N = 1000; x = rand(1,N); figure(1);plot(x(1:100),'r.') ylabel('number value');xlabel('button push') numbins = 10; [num,bincen] = hist(x,numbins); figure(2);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') x = 0.5+0.1*randn(1,N); figure(3);plot(x(1:100),'r.');ylim([0 1]); xlabel('button push');ylabel('number value') [num,bincen] = hist(x,numbins); figure(4);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') % variations figure(5);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') N = 100000; x = 0.5+0.1*randn(1,N); numbins = 100; [num,bincen] = hist(x,numbins); figure(6);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') figure(7);plot(bincen,num/N,'r-');xlim([0 1]) xlabel('x value');ylabel('fraction of values')

0 10 20 30 40 50 60 70 80 90 100 0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

nu m

be r

va lu

e

button push

% ECE399 example_001 % generate and plot some random samples; create histograms % 03/19/13 D D Duncan % N = 1000; x = rand(1,N); figure(1);plot(x(1:100),'r.') ylabel('number value');xlabel('button push') numbins = 10; [num,bincen] = hist(x,numbins); figure(2);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') x = 0.5+0.1*randn(1,N); figure(3);plot(x(1:100),'r.');ylim([0 1]); xlabel('button push');ylabel('number value') [num,bincen] = hist(x,numbins); figure(4);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') % variations figure(5);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') N = 100000; x = 0.5+0.1*randn(1,N); numbins = 100; [num,bincen] = hist(x,numbins); figure(6);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') figure(7);plot(bincen,num/N,'r-');xlim([0 1]) xlabel('x value');ylabel('fraction of values')

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0

20

40

60

80

100

120

140

x value

nu m

be r

of v

al ue

s

% ECE399 example_001 % generate and plot some random samples; create histograms % 03/19/13 D D Duncan % N = 1000; x = rand(1,N); figure(1);plot(x(1:100),'r.') ylabel('number value');xlabel('button push') numbins = 10; [num,bincen] = hist(x,numbins); figure(2);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') x = 0.5+0.1*randn(1,N); figure(3);plot(x(1:100),'r.');ylim([0 1]); xlabel('button push');ylabel('number value') [num,bincen] = hist(x,numbins); figure(4);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') % variations figure(5);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') N = 100000; x = 0.5+0.1*randn(1,N); numbins = 100; [num,bincen] = hist(x,numbins); figure(6);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') figure(7);plot(bincen,num/N,'r-');xlim([0 1]) xlabel('x value');ylabel('fraction of values')

0 10 20 30 40 50 60 70 80 90 100 0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

button push

nu m

be r

va lu

e

% ECE399 example_001 % generate and plot some random samples; create histograms % 03/19/13 D D Duncan % N = 1000; x = rand(1,N); figure(1);plot(x(1:100),'r.') ylabel('number value');xlabel('button push') numbins = 10; [num,bincen] = hist(x,numbins); figure(2);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') x = 0.5+0.1*randn(1,N); figure(3);plot(x(1:100),'r.');ylim([0 1]); xlabel('button push');ylabel('number value') [num,bincen] = hist(x,numbins); figure(4);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') % variations figure(5);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') N = 100000; x = 0.5+0.1*randn(1,N); numbins = 100; [num,bincen] = hist(x,numbins); figure(6);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') figure(7);plot(bincen,num/N,'r-');xlim([0 1]) xlabel('x value');ylabel('fraction of values')

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0

50

100

150

200

250

300

x value

nu m

be r

of v

al ue

s

% ECE399 example_001 % generate and plot some random samples; create histograms % 03/19/13 D D Duncan % N = 1000; x = rand(1,N); figure(1);plot(x(1:100),'r.') ylabel('number value');xlabel('button push') numbins = 10; [num,bincen] = hist(x,numbins); figure(2);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') x = 0.5+0.1*randn(1,N); figure(3);plot(x(1:100),'r.');ylim([0 1]); xlabel('button push');ylabel('number value') [num,bincen] = hist(x,numbins); figure(4);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') % variations figure(5);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') N = 100000; x = 0.5+0.1*randn(1,N); numbins = 100; [num,bincen] = hist(x,numbins); figure(6);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') figure(7);plot(bincen,num/N,'r-');xlim([0 1]) xlabel('x value');ylabel('fraction of values')

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

x value

fr ac

tio n

of v

al ue

s

% ECE399 example_001 % generate and plot some random samples; create histograms % 03/19/13 D D Duncan % N = 1000; x = rand(1,N); figure(1);plot(x(1:100),'r.') ylabel('number value');xlabel('button push') numbins = 10; [num,bincen] = hist(x,numbins); figure(2);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') x = 0.5+0.1*randn(1,N); figure(3);plot(x(1:100),'r.');ylim([0 1]); xlabel('button push');ylabel('number value') [num,bincen] = hist(x,numbins); figure(4);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') % variations figure(5);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') N = 100000; x = 0.5+0.1*randn(1,N); numbins = 100; [num,bincen] = hist(x,numbins); figure(6);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') figure(7);plot(bincen,num/N,'r-');xlim([0 1]) xlabel('x value');ylabel('fraction of values')

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

x value

fr ac

tio n

of v

al ue

s

% ECE399 example_001 % generate and plot some random samples; create histograms % 03/19/13 D D Duncan % N = 1000; x = rand(1,N); figure(1);plot(x(1:100),'r.') ylabel('number value');xlabel('button push') numbins = 10; [num,bincen] = hist(x,numbins); figure(2);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') x = 0.5+0.1*randn(1,N); figure(3);plot(x(1:100),'r.');ylim([0 1]); xlabel('button push');ylabel('number value') [num,bincen] = hist(x,numbins); figure(4);bar(bincen,num);xlim([0 1]) xlabel('x value');ylabel('number of values') % variations figure(5);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') N = 100000; x = 0.5+0.1*randn(1,N); numbins = 100; [num,bincen] = hist(x,numbins); figure(6);bar(bincen,num/N);xlim([0 1]) xlabel('x value');ylabel('fraction of values') figure(7);plot(bincen,num/N,'r-');xlim([0 1]) xlabel('x value');ylabel('fraction of values')

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

x value

fr ac

tio n

of v

al ue

s