Przetestowa膰 normalno艣膰 dla趎ych z pliku wzrost

# Przetestowa膰 normalno艣膰 dla danych z pliku wzrost.csv za pomoc膮 testu chi-kwadrat, w oparciu o szereg rozdzielczy o 15 klasach o jednakowej liczno艣ci teoretycznej (przyk艂ad z wyk艂adu). Nast臋pnie wykona膰 ten sam test, ale przed utworzeniem szeregu rozdzielczego dokona膰 randomizacji danych, zaburzaj膮c je o warto艣膰 z rozk艂adu jednostajnego na przedziale [-陆, 陆].

dane=read.csv2("wzrost.csv")

dane

attach(dane)

k=15

w=0:k

sr=mean(wzrost)

od=sd(wzrost)

podzial=qnorm(w/k,sr,od)

podzial

podzial[1]=min(wzrost)-5

podzial[16]=max(wzrost)+5

podzial

szereg=table(cut(wzrost,podzial))

szereg

hist(wzrost,podzial)

teor=length(wzrost)/k

stat.test=sum(((szereg-teor)^2)/teor)

stat.test

qchisq(0.95,k-3)

#czyli odrzucamy

#zaburzamy

x=seq(-0.5,0.5,0.01)

zab=sample(x,length(wzrost),replace=T)

dane2=data.frame(wzrost=wzrost+zab)

attach(dane2)

k=15

w=0:k

sr=mean(wzrost)

od=sd(wzrost)

podzial=qnorm(w/k,sr,od)

podzial

podzial[1]=min(wzrost)-5

podzial[16]=max(wzrost)+5

podzial

szereg=table(cut(wzrost,podzial))

szereg

hist(wzrost,podzial)

teor=length(wzrost)/k

stat.test=sum(((szereg-teor)^2)/teor)

stat.test

qchisq(0.95,k-3)

#zatem przyjmujemy, gdy偶 stat.test<qchisq o danych parametrach.

#Dla danych z pliku czas_wykonania2.csv przetestowa膰 hipotez臋, 偶e w艣r贸d os贸b

#na 3-cim poziomie kwalifikacji kobiety wykonuj膮 badan膮

#czynno艣膰 tak samo szybko jak m臋偶czy藕ni,

#przeciwko temu, 偶e robi膮 to wolniej na poziomie istotno艣ci 0,95.

dane = read.csv2("czas_wykonania2.csv")

dane

attach(dane)

dane_p3 = data.frame(plec = plec[kwalifikacje==3],czas = czas[kwalifikacje==3])

dane_p3

czas_K = dane_p3$czas[dane_p3$plec=="K"]

czas_M= dane_p3$czas[dane_p3$plec=="M"]

plot(czas_K)

points(czas_M, col="orange")

anova(lm(dane_p3$czas~dane_p3$plec))

#skoro Pr mniejsze od alfa=0.05 odrzucamy hipoteze ze kobiety wykonuj膮

#badana czynnosc tak samo szybko, na rzecz druhiej hipotezy...

detach(dane)

rm(list=ls())

Przeanalizowa膰 wyniki wybor贸w prezydenckich w 2010 roku (dane pzt2010.csv)

- zbada膰 popracie dla kandydat贸w pod k膮tem geograficznym. Narysowa膰 odpowiedni膮

map臋 percepcji. Czy mo偶na (i jest sens) wykonywa膰 dla takich danych

test niezalezno艣ci?

Uwaga. Aby uczyni膰 mape percepcji czytelniejsz膮 mo偶na ograniczy膰 si臋 do,

na przyk艂ad, czterech kandydat贸w z najwi臋kszym poparciem. Inne zmiany

zwi臋kszaj膮ce czytelno艣膰 dodatkowo punktowane.

dene=read.csv2("wybory.csv")

attach(dene)

dene

dane2=dene[,8:17] #z艂y nawias by艂

names(dane2)=c(1:10)

dane2

library(ca)

plot(ca(dane2),mass=T)

suma_kol=colSums(dane2)

suma_kol

#wybieram 2,3,,4,7

czterech

czterech

czterech=data.frame(K1=dane2[,2],K2=dane2[,3],K3=dane2[,4],K4=dane2[,7])

plot(ca(czterech),mass=T)

chisq.test(czterech)

Narysowa膰 histogram (o 20 klasach) oraz estymator g臋sto艣ci dla zmiennej

x w 1-szej klasie (zmienna klasa) danych dane_usmiech2.csv. Przetestowa膰

hipotez臋, 偶e dane te pochodz膮 z rozk艂adu normalnego.

dane=read.csv2("dane_usmiech2.csv")

attach(dane)

dane2=data.frame(x=dane$x[klasa==1])

dane2

plot(dane2)

attach(dane2)

k = 20

mi = mean(dane2)

sigma = sd(dane2)

ile = length(dane2)

w=1:k

podzial = qnorm(w/k, mi, sigma)

podzial

podzial[1] = min(dane2)-0.1

podzial[length(podzial)] = max(dane2)+0.1

szereg = table(cut(dane2[,], podzial))

szereg

(t=chisq.test(szereg))

t

1-pchisq(t$statistic, k-3)

(hist(dane2[,], podzial, col = "yellow"))

plot(density(dane2[,]))

detach(dane2)

detach(dane)

Dla danych z pliku wzrost.csv sporz膮dzi膰 wykres zawieraj膮cy:

* histogram (oko艂o 15 klas)

* j膮drowy estymator g臋sto艣ci

* g臋sto艣膰 rozk艂adu normalnego o parametrach estymowanych na podstawie danych

dane=read.csv2("wzrost.csv")

dane

attach(dane)

length(wzrost)

k=15

dl=(max(wzrost)-min(wzrost))/(k-1)

dl

podzial=dl*(0:k)-dl/2+min(wzrost)

podzial

table(cut(wzrost,podzial))

podzial2=podzial[c(1,3:13,16)]

podzial2

szereg=table(cut(wzrost,podzial2))

hist(wzrost,podzial2)

plot(density(wzrost))

sr=mean(wzrost)

od=sd(wzrost)

gest=function(x) dnorm(x,sr,od)

x=seq(min(wzrost),max(wzrost),0.5)

hist(wzrost,podzial2)

lines(x,gest(x),col="red",lwd=3)

lines(density(wzrost),col="blue",lwd=3)

Dla zale偶no艣ci y od x (dane regresja2.csv) dopasowa膰 krzyw膮 regresji

zadan膮 r贸wnaniem y = a * sin(b*x) + c oraz wybran膮 nieparametryczn膮 metod膮

regresji. Narysowa膰 (i por贸wnac) wykresy. Dla metody parametrycznej wyznaczy膰

warto艣c wsp贸艂czynnika R^2.

dane =read.csv2("regresja2.csv")

dane

attach(dane)

#regresja paramteryczna

reg = nls(y ~ a*(sin(b*x))+c , start=list(a=1,b=1,c=0))

summary(reg)

#regresja nie parametryczna

reg2=loess(y~x)

summary(reg2)

#wykresy

plot(x,y)

ndane = data.frame(x = seq(min(x), max(x), length = 300))

#parametryczny

lines(ndane$x, predict(reg, ndane), lwd = 2, col = "blue")

#nie parametryczny

lines(ndane$x, predict(reg2, ndane), lwd = 2, col = "red")

#obliczamy R_kwadrat dla regresji parametrycznej

a = 2.008283

b=1.001095

c = 0.014549

x=dane$x

y = a*(sin(b*x))+c

y_t=y

y=dane$y

roznica1= (y-mean(y))^2

roznica2 = (y_t-mean(y))^2

R_kwadrat = sum(roznica2)/sum(roznica1)

R_kwadrat

Narysowa膰 histogram oraz estymator g臋sto艣ci dla zmiennej x w 1-szej klasie danych dane_usmiech2.csv. Przetestowa膰 hipotez臋, 偶e dane te pochodz膮 z rozk艂adu normalnego.

dane=read.csv2("dane_usmiech2.csv")

attach(dane)

dane2=data.frame(x=dane$x[klasa==1])

dane2

k = 40

mi = mean(x)

sigma = sd(x)

ile = length(x)

w = 0:k

podzial = qnorm(w/k, mi, sigma)

podzial

podzial[1] = min(x)-0.1

podzial[length(podzial)] = max(x)+0.1

szereg = table(cut(x, podzial))

szereg

t=chisq.test(szereg)

t

1-pchisq(t$statistic, k-3)

(hist(x, podzial, col = "violet"))

Narysowa膰 histogram o 20 klasach dla zmiennej x dla danych z pliku

dane_perla2.csv (z wy艂膮czeniem klasy 3-ciej). Przetestowa膰 hipotez臋, 偶e

pochodz膮 one z rozk艂adu jednostajnego na przedziale [-1,38; 1,385].

dane=read.csv2("dane_perla2.csv")

attach(dane)

dane_1_2=x[klasa!="3"]

dane_1_2

detach(dane)

plot(dane_1_2)

hist(dane_1_2)

k = 20

mi = mean(dane_1_2)

sigma = sd(dane_1_2)

ile = length(dane_1_2)

w=0:k

podzial = qunif(w/k, mi, sigma)

podzial

szereg = table(cut(dane_1_2, podzial))

szereg

(t=chisq.test(szereg))

Pogrupowa膰 dane z pliku dane_perla2.csv wed艂ug p贸l x i y na 4 klasy metod膮 k-艣rednich. Nast臋pnie przeanalizowa膰 cz臋sto艣ci wyst臋powania element贸w z r贸偶nych klas (pole klasa) w wybranych skupiskach. Policzy膰 jaka cze艣膰 element贸w "odstaje" od najcz臋stszych wybor贸w w swoich skupiskach.

Uwaga: przed wykonaniem zadania proponuj臋 ustawi膰 generator liczb pseudolosowych poleceniem set.seed(2011).

dane = read.csv2("dane_usmiech2.csv")

dane

attach(dane)

x= x[klasa ==1]

x

detach(dane)

#wykonajmy histogram dla danych x

hist (x,20)

#widzimy ze program dobra艂 z艂y podzia艂 i mamy wi臋cej niz 20 klas

#dokonajmy w艂asnego podzialu

k = 20

mi = mean(x)

sigma = sd(x)

w =0:k

podzial = qnorm(w/k, mi , sigma)

podzial

podzial[1]=min(x)-0.05

podzial[length(podzial)]=max(x)+0.05

podzial

#histogram wedlug naszego podzialu

hist(x,podzial)

#dokonajmy testu na normalno艣膰 rozk艂adu naszej zmiennej

szereg=table(cut(x,podzial))

szereg

(t=chisq.test(szereg))

t

1-pchisq(t$statistic,k-3)

#z testu wynika ze p-value jest bliskie 1 dlatego przyjmujemy hipoteze

Dla zmiennych x i y z uzwgl臋dnieniem podzia艂u na klasy policzy膰:

- 艣redni膮

- median臋

- wariancj臋

- sko艣no艣膰

Traktuj膮c dane z pliku dane_perla2.csv jako pr贸bk臋 statystyczn膮 pochodz膮dz膮 z pr贸by prostej o pewnym rozk艂adzie.

perla=read.csv2("dane_perla2.csv")

perla

attach(perla)

x_1=x[klasa=="1"]

x_2=x[klasa=="2"]

x_3=x[klasa=="3"]

y_1=y[klasa=="1"]

y_2=y[klasa=="2"]

y_3=y[klasa=="3"]

#Podzial x i y na klasy, lacznie 6 grup

#Srednia

(mean(x_1))

(mean(x_2))

(mean(x_3))

(mean(y_1))

(mean(y_2))

(mean(y_3))

#mediana

(median(x_1))

(median(x_2))

(median(x_3))

(median(y_1))

(median(y_2))

(median(y_3))

#wariancja

(var(x_1))

(var(x_2))

(var(x_3))

(var(y_1))

(var(y_2))

(var(y_3))

#skosnosc, nalezy wczytac pakiet: e1071

e1071::skewness(x_1)

e1071::skewness(x_2)

e1071::skewness(x_3)

e1071::skewness(y_1)

e1071::skewness(y_2)

e1071::skewness(y_3)

detach(perla)

#Dla danych z pliku czas_wykonania2.csv przetestowa膰 hipotez臋, 偶e w艣r贸d os贸b

#na 3-cim poziomie kwalifikacji kobiety wykonuj膮 badan膮

#czynno艣膰 tak samo szybko jak m臋偶czy藕ni,

#przeciwko temu, 偶e robi膮 to wolniej na poziomie istotno艣ci 0,95.

dane = read.csv2("czas_wykonania2.csv")

dane

attach(dane)

dane_p3 = data.frame(plec = plec[kwalifikacje==3],czas = czas[kwalifikacje==3])

dane_p3

czas_K = dane_p3$czas[dane_p3$plec=="K"]

czas_M= dane_p3$czas[dane_p3$plec=="M"]

plot(czas_K)

points(czas_M, col="orange")

anova(lm(dane_p3$czas~dane_p3$plec))

#skoro Pr mniejsze od alfa=0.05 odrzucamy hipoteze ze kobiety wykonuj膮

#badana czynnosc tak samo szybko, na rzecz druhiej hipotezy...

detach(dane)

rm(list=ls())


Wyszukiwarka

Podobne podstrony:
T11 Wzrost gospodarczy
02b Rozk艂ad normalnyid 4039 ppt
bd normalizacja
skr贸cony Wzrost i rozw贸j ro艣lin
2a Normalizacja
Cytokiny i czynniki wzrostowe (2)
rozwoj plodowy i pozaurodzeniowy wzrost czaszki
ODCHY艁KI NORMALNE Tablice
11 Wzrost i rozw贸j ro艣lin
CERA NORMALNA
Propedeutyka Wzrost Rozw贸j

wi臋cej podobnych podstron