1. 2. i 3. vježba (r)d

31

Upload: danijel-lesic

Post on 27-Dec-2015

35 views

Category:

Documents


4 download

DESCRIPTION

d

TRANSCRIPT

Page 1: 1. 2. i 3. Vježba (R)d

Zadatak 1. Prodava£ u butiku biljeºi koli£inu prodanih majica pojedineveli£ine i dobiveni su podaci dani sljede¢om tablicom

XS 2S 9M 30L 16XL 7XXL 3

Gra�£ki prikaºite podatke pomo¢u(a) stup£astog dijagrama(b) stukturalnog kruga(c) Pareto dijagrama

Rje²enje:

(a)

> imena<-c('XS','S','M','L','XL','XXL')

> f<-c(2,9,30,16,7,3)

> fr<-f/sum(f)

> kf<-cumsum(f)

> kfr<-cumsum(fr)

> majice<-data.frame(imena,f,kf,fr,kfr)

> majice

imena f kf fr kfr

1 XS 2 2 0.02985075 0.02985075

2 S 9 11 0.13432836 0.16417910

3 M 30 41 0.44776119 0.61194030

4 L 16 57 0.23880597 0.85074627

5 XL 7 64 0.10447761 0.95522388

6 XXL 3 67 0.04477612 1.00000000

## Nacrtajmo histogram

> barplot(f,col=rainbow(length(f)),legend.text=imena, main='Histogram broja

prodanih majica po veli£ini')

(b)

> postotci<-round(f/sum(f)*100)

> imena1<-paste(imena,postotci, sep=", ")

> imena1<-paste(imena1,"%")

1

Page 2: 1. 2. i 3. Vježba (R)d

XS S M L XL XXL

XSSMLXLXXL

Histogram broja prodanih majica po velicini

05

1015

2025

30

> pie(f,labels=imena1,col=rainbow(6),main='Strukturalni krug

broja prodanih majica po veli£ini')

XS, 3 %

S, 13 %M, 45 %

L, 24 %

XL, 10 %

XXL, 4 %

Strukturalni krug broja prodanih majica po velicini

## ili ako zelimo 3D prikaz

>library(plotrix)

>pie3D(f,labels=imena1,col=heat.colors(6),border=F,explode=0.05,

2

Page 3: 1. 2. i 3. Vježba (R)d

main='Strukturalni krug broja prodanih majica po veli£ini')

Strukturalni krug broja prodanih majica po velicini

XS 3%,%

S 13%,%M 45%,%

L 24%,%

XL 10%,%

XXL 4%,%

(c)

>names(f)<-imena

>f<-data.frame(f)

>library(qcc)

>pareto.chart(f,main='Pareto dijagram broja prodanih majica po veli£ini')

Pareto chart analysis for f

Frequency Cum.Freq. Percentage Cum.Percent.

M 30.000000 30.000000 44.776119 44.776119

L 16.000000 46.000000 23.880597 68.656716

S 9.000000 55.000000 13.432836 82.089552

XL 7.000000 62.000000 10.447761 92.537313

XXL 3.000000 65.000000 4.477612 97.014925

XS 2.000000 67.000000 2.985075 100.000000

## ili ako zelimo u nekoj drugoj boji

>pareto.chart(f,col=terrain.colors(6),main='Pareto dijagram

broja prodanih majica po veli£ini')

## ostale mogu¢e boje su: rainbow(), heat.colors(), topo.colors()

3

Page 4: 1. 2. i 3. Vježba (R)d

M L S XL

XX

L

XS

Pareto dijagram broja prodanih majica po velicini

Fre

quen

cy

010

2030

4050

6070

0%25

%50

%75

%10

0%

Cum

ulat

ive

Per

cent

age

## ako zelimo dodati vertikalnu liniju koja nam oznacava mjesto gdje kumulativna

suma dostize 75% od najvece vrijednosti koristimo sljedecu naredbu

> abline(h=(sum(f)*.75),col="red",lwd=3)

4

Page 5: 1. 2. i 3. Vježba (R)d

M L S XL

XX

L

XS

Pareto dijagram broja prodanih majica po velicini

Fre

quen

cy

010

2030

4050

6070

0%25

%50

%75

%10

0%

Cum

ulat

ive

Per

cent

age

Zadatak 2. Promatraju¢i boju o£iju u£enika jednog razreda dobiveni susljede¢i podaci:Boja o£iju Frekvencija

Plava 10Sme�a 11Crna 2Zelena 7

Odredite tablicu relativnih i kumulativnih frekvencija. Skicirajte histogram,strukturalni krug, te Pareto diagram za dane podatke.

5

Page 6: 1. 2. i 3. Vježba (R)d

Zadatak 3. Kontrolor uzima serije od 30 proizvoda i svaki put zapi²ebroj defektnih proizvoda u seriji. Nakon 20 pregledanih serija dobiveni susljede¢i podaci:

0 0 1 1 0 0 3 1 0 2

0 1 0 0 4 0 0 3 2 0

(a) Odredite tablicu frekvencija i relativnih frekvencija i kumulanti

(b) Nacrtajte histogram, poligon frekvencija i kumulantu distribucije

Rje²enje:

(a)

> def<-c(0,0,1,1,0,0,3,1,0,2,0,1,0,0,4,0,0,3,2,0)

> def.f<-table(def)

> def.f

def

0 1 2 3 4

11 4 2 2 1

> def.fr<-def.f/sum(def.f)

> def.fr

def

0 1 2 3 4

0.55 0.20 0.10 0.10 0.05

> def.kf<-cumsum(def.f)

> def.kf

0 1 2 3 4

11 15 17 19 20

> def.kfr<-cumsum(def.fr)

> def.kfr

0 1 2 3 4

0.55 0.75 0.85 0.95 1.00

> defektni<-cbind(def.f,def.kf,def.fr,def.kfr)

> defektni

def.f def.kf def.fr def.kfr

0 11 11 0.55 0.55

1 4 15 0.20 0.75

2 2 17 0.10 0.85

3 2 19 0.10 0.95

4 1 20 0.05 1.00

6

Page 7: 1. 2. i 3. Vježba (R)d

(b)

> plot(def.f,type="b",lty=5,pch=10, col="dark blue", xlab="Broj

defektnih proizvoda u seriji od 20", ylab="Frekvencija")

> plot(def.fr,type="b")

> plot(def.kfr,type="b")

##ili

> plot(def.f,type="b")

> plot(def.fr,type="b")

> plot(def.kfr,type="s")

Zadatak 4. U 16 drºava izmjerena je prosje£na konzumacija maslinovogulja (u litrama) po glavi stanovnika u toku jedne godine i dobiveni su podaci

9.9 5.6 10.8 6.3 3.9 11.2 5.7 8.4

7.2 4.2 5.8 15.2 10.9 3.1 7.4 9.1

Nacrtajte histogram , poligon relativnih frekvencija i kumulantu distribucijeza dane podatke.Rje²enje:

>podaci<-c(9.9,5.6,10.8,6.3,3.9,11.2,5.7,8.4,7.2,4.2,5.8,15.2,10.9,3.1,7.4,9.1)

> range(podaci)

[1] 3.1 15.2

> k<-round(1+3.3*log(length(podaci))/log(10))

> k

[1] 5

> r<-(max(podaci)-min(podaci))/k

> r

[1] 2.42

> razredi<-seq(3.0,15.5,by=2.5)

> razredi

[1] 3.0 5.5 8.0 10.5 13.0 15.5

## svakom od podataka pridruzimo razred u kojem se nalazi koristeci

funkciju 'cut'

> podaci.cut<-cut(podaci,razredi,right=F)

> podaci.cut

[1] [8,10.5) [5.5,8) [10.5,13) [5.5,8) [3,5.5) [10.5,13) [5.5,8)

[8] [8,10.5) [5.5,8) [3,5.5) [5.5,8) [13,15.5) [10.5,13) [3,5.5)

[15] [5.5,8) [8,10.5)

Levels: [3,5.5) [5.5,8) [8,10.5) [10.5,13) [13,15.5)

7

Page 8: 1. 2. i 3. Vježba (R)d

> podaci.f<-table(podaci.cut)

> podaci.f

podaci.cut

[3,5.5) [5.5,8) [8,10.5) [10.5,13) [13,15.5)

3 6 3 3 1

> cbind(podaci.f)

podaci.f

[3,5.5) 3

[5.5,8) 6

[8,10.5) 3

[10.5,13) 3

[13,15.5) 1

> podaci.fr<-podaci.f/sum(podaci.f)

> podaci.fr

podaci.cut

[3,5.5) [5.5,8) [8,10.5) [10.5,13) [13,15.5)

0.1875 0.3750 0.1875 0.1875 0.0625

> podaci.kf<-cumsum(podaci.f)

> podaci.kfr<-cumsum(podaci.fr)

## postavljamo da se podaci ispisuju zaokruzeni na 1 znamenku

(kada je broj u normaliziranom obliku)

> old=options(digits=1)

> cbind(podaci.f,podaci.fr,podaci.kf,podaci.kfr)

podaci.f podaci.fr podaci.kf podaci.kfr

[3,5.5) 3 0.19 3 0.2

[5.5,8) 6 0.38 9 0.6

[8,10.5) 3 0.19 12 0.8

[10.5,13) 3 0.19 15 0.9

[13,15.5) 1 0.06 16 1.0

>options(old)

## Nacrtajmo histogram

> hist(podaci,breaks=razredi,col='light green',border='green',

xlab="prosje£na konzumacija maslinovog ulja(l)",ylab="Frekvencija",

main="Histogram prosje£ne konzumacije maslinovog ulja")

## Nacrtajmo histogram povrsine 1

hist(podaci,breaks=razredi, freq=FALSE, col='light green',border='green',

xlab="prosje£na konzumacija maslinovog ulja(l)",ylab="Frekvencija",

main="Histogram prosje£ne konzumacije maslinovog ulja")

## Nacrtajmo histogram relatoivnih frekvencija

8

Page 9: 1. 2. i 3. Vježba (R)d

h = hist(podaci,breaks=razredi,col='light green',border='green',

xlab="prosje£na konzumacija maslinovog ulja(l)",ylab="Frekvencija",

main="Histogram prosje£ne konzumacije maslinovog ulja")

h$density = h$counts/sum(h$counts)

plot(h,freq=F)

## Nacrtajmo graf relativnih frekvencija

>sredine<-(razredi[2:length(razredi)]+razredi[1:length(razredi)-1])/2

> sredine

[1] 4.25 6.75 9.25 11.75 14.25

> plot(sredine,podaci.fr,xlab="Prosje£na konzumacija maslinovog

ulja u l ", ylab="Relativne frekvencije","b")

>

## Nacrtajmo graf kumulante relativnih frekvencija

> kfr<-c(0,podaci.kfr)

> plot(razredi,kfr,"b",xlab="Prosje£na konzumacija maslinovog

ulja u l",ylab="kumulanta relativnih frakvencija")

Histogram prosjecne konzumacije maslinovog ulja

prosjecna konzumacija maslinovog ulja(l)

Fre

kven

cija

4 6 8 10 12 14 16

01

23

45

6

9

Page 10: 1. 2. i 3. Vježba (R)d

● ●

4 6 8 10 12 14

Prosjecna konzumacija maslinovog ulja u l

Rel

ativ

ne fr

ekve

ncije

4 6 8 10 12 14 16

0.0

0.2

0.4

0.6

0.8

1.0

Prosjecna konzumacija maslinovog ulja u l

kum

ulan

ta r

elat

ivni

h fr

akve

ncija

Zadatak 5. Zadani su sljede¢i podaci

44 63 68 84 46 72 76 106

81 88 72 49 64 66 75 47

Za dane podatke nacrtaje:(a) stem and leaf diagram

10

Page 11: 1. 2. i 3. Vježba (R)d

(b) dijagram to£akaRje²enje:

(a)

> podaci<-c(44,63,68,84,46,72,76,106,81,88,72,49,64,75,47)

> stem(podaci)

The decimal point is 1 digit(s) to the right of the |

4 | 4679

6 | 3482256

8 | 148

10 | 6

> library(epicalc)

> dotplot(floor(podaci/10),pch=20,main="Dijagram to£aka")

05

1015

20

Dijagram tocaka

Fre

quen

cy

4 5 6 7 8 9 10

11

Page 12: 1. 2. i 3. Vježba (R)d

Zadatak 6. Zadani su podaci

−23.67 10.2 − 3.40 4.43 15.51 5.67 16.87 − 12.55 56.8 0.23

1.11 − 12.45 − 3.57 24.71 5.91 33.5 52.42 30.99 2.55 − 11.98

Nacrtajte stem and leaf diagram i diagram to£aka za dane podatke.

12

Page 13: 1. 2. i 3. Vježba (R)d

Zadatak 7. Mjereno je vrijeme izvo�enja neke radne operacije i dobivenisu sljede¢i podaci (u sekundama)

24 28 22 26 24

27 26 25 26 23

30 26 29 25 27

24 26 25 24 27

Odredite sredinu, medijan, mod, raspon, interkvartil i standardnu devijacijuza dane podatke.Rje²enje:

## Ucitajmo podatke

>podaci<-c(24,28,22,26,24,27,26,25,26,23,30,26,29,25,27,24,26,25,24,27)

> podaci

[1] 24 28 22 26 24 27 26 25 26 23 30 26 29 25 27 24 26 25 24 27

## Odredimo srednju vrjednost (aritmeticku sredinu) podataka

> mean(podaci)

[1] 25.7

## Odredimo harmonijsku sredinu podataka

library(psych)

> harmonic.mean(podaci)

[1] 25.55752

## Odredimo geometrijsku sredinu podataka

> geometric.mean(podaci)

[1] 25.62846

## Odredimo medijan podataka

> median(podaci)

[1] 26

## Odredimo mod podataka

## Prvo moramo definirati funkciju statmod

> statmod<-function(x){

+ z<-table(as.vector(x))

+ names(z)[z==max(z)]

+ }

> statmod(podaci)

[1] "26"

## Odredimo standardnu devijaciju

> sd(podaci)

13

Page 14: 1. 2. i 3. Vježba (R)d

[1] 1.976174

## Odredimo varijancu

> var(podaci)

[1] 3.905263

## Odredimo raspon podataka

> max(podaci)-min(podaci)

[1] 8

## Odredimo maksimalni podatak

> max(podaci)

[1] 30

## Odredimo minimalni podatak

> min(podaci)

[1] 22

## Odredimo donji kvartil

> quantile(podaci,0.25,type=6)

25%

24

## Drugi nacin odredivanja medijana

> quantile(podaci,0.5,type=6)

50%

26

## Odredimo gornji kvartil

> quantile(podaci,0.75,type=6)

75%

27

## Odredimo interkvartil

> IQR(podaci)

[1] 3

## Nacrtajmo dijagram pravokutnika

> boxplot(podaci)

14

Page 15: 1. 2. i 3. Vježba (R)d

2224

2628

30

Zadatak 8. Mjerenjem koncentracije krvne plazme β−endor�na trka£anakon utrke dobiveni su podaci (u pmol/l)

66 72 79 84 102 110 123 144 162 169 414

Konstruirajte diagram pravokutnika za ove podatke.

15

Page 16: 1. 2. i 3. Vježba (R)d

Zadatak 9. Sukcesivnim mjerenjima gusto¢e novootkrivenog materijaladobivene su sljede¢e vrijednosti (u g/cm3)

xi fi

[19.59, 19.60〉 3[19.60, 19.61〉 9[19.61, 19.62〉 10[19.62, 19.63〉 11[19.63, 19.64〉 15[19.64, 19.65〉 10[19.65, 19.66〉 5[19.66, 19.67〉 6[19.67, 19.68〉 2[19.68, 19.69〉 1

Odredite sredinu, medijan i standardnu devijaciju uzorka.Rje²enje:

> sredine<-seq(19.595,19.685,0.01)

> f<-c(3,9,10,11,15,10,5,6,2,1)

> library(Hmisc)

> wtd.mean(sredine,f)

[1] 19.63236

> wtd.var(sredine,f)

[1] 0.0004450509

> sqrt(wtd.var(sredine,f))

[1] 0.02109623

> wtd.quantile(sredine,f,probs=c(0,0.25,0.5,0.75,1))

0% 25% 50% 75% 100%

19.595 19.615 19.635 19.645 19.685

> wtd.Ecdf(sredine,f)

$x

[1] 19.595 19.595 19.605 19.615 19.625 19.635 19.645 19.655 19.665 19.675

[11] 19.685

$ecdf

[1] 0.00000000 0.04166667 0.16666667 0.30555556 0.45833333 0.66666667

[7] 0.80555556 0.87500000 0.95833333 0.98611111 1.00000000

> F<-wtd.Ecdf(sredine,f)

>plot(F$x,F$ecdf,'l',xlab='gusto¢a materijala',

ylab='kumulanta relativnih frekvencija')

> abline(h=0.75,col='dark red')

16

Page 17: 1. 2. i 3. Vježba (R)d

> abline(h=0.25,col='orange')

> abline(h=0.5,col='red')

19.60 19.62 19.64 19.66 19.68

0.0

0.2

0.4

0.6

0.8

1.0

gustoca materijala

kum

ulan

ta r

elat

ivni

h fr

ekve

ncija

17

Page 18: 1. 2. i 3. Vježba (R)d

Zadatak 10. Promatramo ocjene iz Matematike u£enika 1. razredajedne srednje ²kole, te su dobiveni sljede¢i podaci:

5 3 4 4 2 5 3 3 2 2 2 5 4

4 1 2 3 3 3 3 4 4 2 1 2 2

Nacrtajte histogram relativnih frekvencija, te odredite aritmeti£ku sredinu,mod ,medijan, standardnu devijaciju, te gornji i donji kvantil uzorka. Nacr-tajte dijagram pravokutnika za dane podatke.

Rje²enje:

> ocjene<-c(5,3,4,4,2,5,3,3,2,2,2,5,4,1,2,2,3,3,3,3,4,4,2,1,2,2)

> n<-lenght(ocjene)

> f<-data.frame(table(ocjene))

> f

ocjene Freq

1 1 2

2 2 9

3 3 7

4 4 5

5 5 3

>f<-data.frame(f,f[2]/sum(f[2]))

> f

ocjene Freq Freq.1

1 1 2 0.08

2 2 9 0.35

3 3 7 0.27

4 4 5 0.19

5 5 3 0.12

> hist(ocjene,probability=TRUE,breaks=c(0.5,1.5,2.5,3.5,4.5,5.5,6.5),

xlab="ocjene",ylab="relativne frekvencije",main="Histogram",col="red")

> mean(ocjene)

[1] 3

> sd(ocjene)

[1] 1

> var(ocjene)

[1] 1

> summary(ocjene)

Min. 1st Qu. Median Mean 3rd Qu. Max.

18

Page 19: 1. 2. i 3. Vježba (R)d

1 2 3 3 4 5

> quantile(ocjene,0.25)

25%

2

> quantile(ocjene,0.5)

50%

3

> median(ocjene)

[1] 3

> quantile(ocjene,0.75)

75%

4

>boxplot(ocjene)

Zadatak 11. Na nekom fakultetu je odabran uzorak od 40 studenata iizmjerene su im visine:

140 188 175 176 177 168 162 181

183 187 187 162 184 161 180 169

195 171 170 199 181 169 189 191

172 182 183 178 180 165 185 205

183 187 188 182 163 179 178 188

Odredite karakteristi£nu petorku uzorka, te nacrtajte dijagram pravokutnika.

19

Page 20: 1. 2. i 3. Vježba (R)d

Zadatak 12. Podaci o cijenama litre mlijeka sakupljene na 100 pro-dajnih mjesta dane su u datoteci 'mlijeko' . Nacrtajte histogram, poligonrelativnih frekvencija i kumulantu za dane podatke.Rje²enje:

> x<-scan('mlijeko')

Read 100 items

> x

[1] 5.05 6.37 4.50 3.70 4.72 6.58 5.46 4.82 5.46 5.61 4.75 4.42 5.59 5.05 5.88

[16] 4.85 3.91 5.04 6.39 5.22 4.74 6.07 5.65 4.87 6.45 6.46 6.78 5.60 5.19 5.16

[31] 7.35 7.00 5.69 6.62 5.36 5.94 4.09 5.60 6.15 6.25 5.40 7.19 6.27 7.48 4.88

[46] 4.01 5.42 3.87 4.47 4.32 4.97 6.09 4.84 4.38 5.57 5.96 6.60 4.92 6.01 5.89

[61] 4.91 5.76 4.76 5.19 5.66 6.80 5.48 5.27 6.16 5.35 3.97 5.20 5.27 5.58 4.96

[76] 5.69 5.26 4.81 5.71 4.57 5.79 6.28 5.01 6.28 5.61 6.17 4.07 4.06 4.80 7.15

[91] 6.51 5.33 7.42 5.14 6.24 5.66 6.74 5.61 6.35 4.32

Zadatak 13. Izmjeren je kapacitet 494 istovrsnih kondenzatora. Podaci ofrekvenciji fi pojavljivanja odre�enih vrijednosti unutar intervala [ai, bi〉 danesu u datoteci 'kondenzatori'. Odredite aritmeti£ku sredinu, medijan, mod,gornji i donji kvantil, te skicirajte histogram(povr²ine 1), poligon relativnihfrekvencija i kumulante za dane podatke.

Rje²enje:

## Ucitajmo podatke iz datoteke 'kondenzatori' u varijablu y

> y<-read.table('kondenzatori')

> y

a b f

1 20.0 20.5 8

2 20.5 21.0 15

3 21.0 21.5 50

4 21.5 22.0 93

5 22.0 22.5 85

6 22.5 23.0 100

7 23.0 23.5 67

8 23.5 24.0 46

9 24.0 24.5 20

10 24.5 25.0 9

11 25.0 25.5 1

## Odredimo velicinu uzorka

20

Page 21: 1. 2. i 3. Vježba (R)d

> N<-sum(y$f)

> N

[1] 494

## Odredimo sredine razreda

> s<-(y$a+y$b)/2

> s

[1] 20.25 20.75 21.25 21.75 22.25 22.75 23.25 23.75 24.25 24.75 25.25

## Odredimo aritmeticku sredinu uzorka (uocimo da smo mogli koristiti

funkcije wtd.mean, wtd.quantile, wtd.Ecdf iz biblioteke Hmisc)

> as<-crossprod(s,y$f)/N

> as

[,1]

[1,] 22.48583

## Odredimo karakteristicnu petorku

## Buduci da nemamo "`pravi" uzorak, prvo formiramo uzorak u kojem ce se

svako od opazanja iz pojedinog razreda biti positovjeceno sa sredinom razreda

> y.uzorak<-rep(s,y$f)

> summary(y.uzorak)

Min. 1st Qu. Median Mean 3rd Qu. Max.

20.25 21.75 22.25 22.49 23.25 25.25

## Odredimo relativne frekvencije razreda

> fr<-y$f/N

> fr

[1] 0.016194332 0.030364372 0.101214575 0.188259109 0.172064777 0.202429150

[7] 0.135627530 0.093117409 0.040485830 0.018218623 0.002024291

## Odredimo kumulantu relativnih frekvencija razreda

> Fr<-cumsum(fr)

## Dodajmo u tablicu y stupac s relativnim frekvencijama i

kumulantom relativnih frekvencija

> y<-data.frame(y,fr,Fr)

> y

a b f fr Fr

1 20.0 20.5 8 0.016194332 0.01619433

2 20.5 21.0 15 0.030364372 0.04655870

3 21.0 21.5 50 0.101214575 0.14777328

4 21.5 22.0 93 0.188259109 0.33603239

5 22.0 22.5 85 0.172064777 0.50809717

6 22.5 23.0 100 0.202429150 0.71052632

7 23.0 23.5 67 0.135627530 0.84615385

8 23.5 24.0 46 0.093117409 0.93927126

9 24.0 24.5 20 0.040485830 0.97975709

21

Page 22: 1. 2. i 3. Vježba (R)d

10 24.5 25.0 9 0.018218623 0.99797571

11 25.0 25.5 1 0.002024291 1.00000000

## Skicirajmo histogram povrsine 1

> hist(y.uzorak,breaks=seq(20,25.5,by=0.5),freq=FALSE,col='dark violet',

border='white', main='Histogram kapaciteta istvorsnih kondenzatora')

## Skicirajmo poligon relativnih frekvencija

> plot(s,fr,'l',xlab='Kapacitet kondenzatora',ylab='relativna

frekvencija',main='Poligon relativnih frekvencija',col='blue')

## Skicirajmo kumulantu relativnih frekvencija

> plot(c(20,y$b),c(0,Fr),'l',xlab='Kapacitet kondenzatora',

ylab='kumulanta relativna frekvencija',main='Kumulanta relativnih frekvencija',

col='blue')

> abline(h=0.75,col='dark red')

> abline(h=0.25,col='orange')

> abline(h=0.5,col='red')

Histogram kapaciteta istvorsnih kondenzatora

y.uzorak

Den

sity

20 21 22 23 24 25

0.0

0.1

0.2

0.3

0.4

22

Page 23: 1. 2. i 3. Vježba (R)d

21 22 23 24 25

0.00

0.05

0.10

0.15

0.20

Poligon relativnih frekvencija

Kapacitet kondenzatora

rela

tivna

frek

venc

ija

20 21 22 23 24 25

0.0

0.2

0.4

0.6

0.8

1.0

Kumulanta relativnih frekvencija

Kapacitet kondenzatora

kum

ulan

ta r

elat

ivna

frek

venc

ija

Zadatak 14. Pra¢enjem broja stanovnika jednog gradi¢a u periodu od50 godina dobiveni su podaci spremljeni u datoteku 'stanovnici'. Odrediteprosje£nu brzinu rasta broja stanovnika u datom periodu.

Rje²enje:

## Ucitajmo podatke iz datoteke

> x<-read.table('stanovnici')

23

Page 24: 1. 2. i 3. Vježba (R)d

## Izracunajmo brzinu rasta stanovnistva po periodima od godinu dana

> v<-x$brstanovnika[2:50]/x$brstanovnika[1:49]

> v

[1] 0.8569815 1.2246781 0.9882441 0.3617324 1.1435850 0.9791414 0.9633919

[8] 1.0622585 1.0531528 1.3565534 1.0198048 0.9422944 1.1433829 1.2119222

[15] 0.7309041 0.5177326 1.0429534 0.6069987 1.2106430 1.6076923 1.0401003

[22] 1.0138007 1.1285653 1.2042887 0.8337043 1.1557971 1.2445141 1.6412568

[29] 1.2935380 1.1415636 1.1732947 1.2179589 0.6554126 1.2931316 0.8150942

[36] 1.0948634 0.7583886 1.4266934 0.8521446 0.7400922 0.7863235 0.9145444

[43] 0.8411716 0.5676802 0.7846652 0.5579411 1.1258017 0.9877301 0.9099379

## Izracunajmo geometrijsku i aritmeticku sredinu

> vg=geometric.mean(v)

> va=mean(v)

> vg

[1] 0.9654123

> va

[1] 1.004572

## Uocimo

> x$brstanovnika[50]

[1] 2051

> x$brstanovnika[1]*vg^49

[1] 2051

> x$brstanovnika[1]*va^49

[1] 14391.89

24

Page 25: 1. 2. i 3. Vježba (R)d

Zadatak 15. Na pet strojeva razli£ite starosti izra�uje se isti proizvod,odnosno strojevi su razli£ito produktivni. U osamsatnom radnom vremenuutvr�en je prosje£an utro²ak vremena po jedinici proizvoda u minutama danu tabeli. Kolika je prosje£na produktivnost strojeva izraºena utro²kom vre-mena po proizvodu?

Stroj Utro²eno vrijeme po jedinici proizvoda (u min)

A 0, 8B 1, 0C 1, 2D 1, 2E 1, 5

Rje²enje:

## Za prosjecan utrosak vremena po proizvodu koristimo

harmonijsku sredinu

> u<-c(0.8,1.0,1.2,1.2,1.5)

> h<-harmonic.mean(u)

> h

[1] 1.090909

## Buduci da je ukupan broj proizvedenih proizvoda po stroju

> b<-8*60/u

> b

[1] 600 480 400 400 320

## pa je prosjecan utrosak vremena po proizvodu

> 8*60/mean(b)

[1] 1.090909

25

Page 26: 1. 2. i 3. Vježba (R)d

Zadatak 16. Za podatke dane u datotekama 'dat1', 'dat2' ,'dat3' i'dat4' odredite aritmeti£ku sredinu, medijan, skicirajte poligon relativnihfrekvencija i histogram, te odredite koe�cijent asimetri£nosti i zaobljenosti.

Rje²enje:

## Ucitajmo podatke iz datoteke 'dat1'

> x1<-read.table('dat1')

> x1<-x1[,1]

## Odredimo opseg podataka

> N<-length(x1)

> N

[1] 1000

## Ispisimo prvih 10 vrijednosti da odredimo tip podataka

> x1[1:10]

[1] 3.7001099 0.8816091 -6.4772521 4.5499841 2.9771401 7.1217207

[7] 5.2422784 -6.1089050 6.9055011 2.6734968

## Odredimo aritmeticku sredinu i medijan

> as<-mean(x1)

> med<-median(x1)

> as

[1] 4.802439

> med

[1] 4.911762

## Podjelimo podatke u razrede

> m=min(x1)

> M=max(x1)

> k=ceiling(1+3.3*log(1000)/log(10))

> k

[1] 11

> m

[1] -7.04834

> M

[1] 19.27563

> d=ceiling((M-m)/k*10)/10

> d

[1] 2.4

> r<-seq(-7.1,19.7,by=2.4)

> r

[1] -7.1 -4.7 -2.3 0.1 2.5 4.9 7.3 9.7 12.1 14.5 16.9 19.3

> x1.cut<-cut(x1,r,right=F)

> x1.f<-table(x1.cut)

26

Page 27: 1. 2. i 3. Vježba (R)d

> x1.fr<-x1.f/sum(x1.f)

> cbind(x1.f,x1.fr)

x1.f x1.fr

[-7.1,-4.7) 9 0.009

[-4.7,-2.3) 33 0.033

[-2.3,0.1) 69 0.069

[0.1,2.5) 169 0.169

[2.5,4.9) 219 0.219

[4.9,7.3) 239 0.239

[7.3,9.7) 156 0.156

[9.7,12.1) 67 0.067

[12.1,14.5) 30 0.030

[14.5,16.9) 8 0.008

[16.9,19.3) 1 0.001

## Nacrtajmo poligon relativnih frekvencija

> length(r)

[1] 12

> s<-(r[2:12]+r[1:11])/2

> s

[1] -5.9 -3.5 -1.1 1.3 3.7 6.1 8.5 10.9 13.3 15.7 18.1

> plot(s,x1.fr,'l',col='dark red',lwd=2,

main='Poligon relativnih frekvencija podataka iz dat1' )

##Nactrajmo histogram

> hist(x1,breaks=r,col='orange',border='white',

main='Histogram podataka iz dat1')

## Odredimo koeficijent asimetrije i zaobljenosti

> library(e1071)

> a3=skewness(x1)

> a3

[1] -0.0118604

> a4=kurtosis(x1)+3

> a4

[1] 3.05184538

## Buduci da je koeficijent asimetrije a3 blizu 0 zakljucujemo

da je distribucija simetricna, a buduci da je koeficijent

zaobljenosti a4 blizu 3 zaklju£ujemo da je distribucija

normalno zaobljena.

## Ucitajmo podatke iz dat2

27

Page 28: 1. 2. i 3. Vježba (R)d

−5 0 5 10 15

Poligon relativnih frekvencija podataka iz dat1

s

x1.fr

Histogram podataka iz dat1

x1

Fre

quen

cy

−5 0 5 10 15 20

050

100

150

200

> x2<-read.table('dat2')

> x2<-x2[,1]

## Odredimo opseg uzoreka

>length(x2)

[1] 1000

## Ispisimo prvih 10 podataka da utvrdimo o kojem se tipu vrijednosti radi

> x2[1:10]

28

Page 29: 1. 2. i 3. Vježba (R)d

[1] 1 4 5 3 9 4 4 4 6 4

## Odredimo frekvencije pojavljivanja odredenih vrijednosti

> f<-data.frame(table(x2))

## Odredimo relativne frekvencije

> f<-data.frame(f,fr=f$Freq/sum(f$Freq))

> f

x2 Freq fr

1 0 10 0.010

2 1 29 0.029

3 2 92 0.092

4 3 129 0.129

5 4 179 0.179

6 5 171 0.171

7 6 143 0.143

8 7 98 0.098

9 8 74 0.074

10 9 40 0.040

11 10 22 0.022

12 11 5 0.005

13 12 4 0.004

14 13 2 0.002

15 14 2 0.002

## Odredimo aritmeticku sredinu, medijan i mod

> mean(x2)

[1] 5.044

> median(x2)

[1] 5

## Uocimo da je mod=4, te da je mod< medijan < aritmeticka sredina

## Nacrtajmo poligon relativnih frekvencija

> plot(0:14,f$fr,'b',xlab='podaci iz dat2',ylab='relativne frekvencije',

col='dark green',main='Poligon relativnih frekvencija za podatke iz dat2',lwd=2,lty=3)

## Nacrtajmo histogram

> hist(x2,breaks=seq(-0.5,14.5,by=0.5),col='light green', border='white',

main='Histogram podataka iz dat2')

## Odredimo koeficijent asimetrije i zaobljenosti

> skewness(x2)

[1] 0.4649913

> kurtosis(x2)+3

[1] 3.257166

## Buduci da je koeficijent asimetrije a3 > 0 zakljucujemo da je

distribucija pozitivno asimetri£na, a buduci da je koeficijent

29

Page 30: 1. 2. i 3. Vježba (R)d

zaobljenosti a4 > 3 zakljucujemo da je distribucija zaobljena.

## Ako zelimo odrediti moment ili centralni moment nekog reda

uzorka, to radimo na sljedeci nacin

## npr. 5-ti moment

>library(e1071)

> moment(x2,order=3, center=F)

[1] 214.078

## ili 4-ti centralni moment

> moment(x2,order=4,center=T)

[1] 91.40272

● ● ● ●

0 2 4 6 8 10 12 14

0.00

0.05

0.10

0.15

Poligon relativnih frekvencija za podatke iz dat2

podaci iz dat2

rela

tivne

frek

venc

ije

30

Page 31: 1. 2. i 3. Vježba (R)d

Histogram podataka iz dat2

x2

Fre

quen

cy

0 5 10 15

050

100

150

31