1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo chương III học phần SUY LUẬN THỐNG kê

45 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Báo cáo Chương III Học phần Suy luận Thống kê
Người hướng dẫn PGS. TS. Nguyễn Thị Thu Thủy
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Toán Ứng Dụng và Thống Kê
Thể loại Báo cáo thực hành
Năm xuất bản 2020
Thành phố Hà Nội
Định dạng
Số trang 45
Dung lượng 339,93 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chương 1Kiểm định giả thuyết 1.1 Kiểm định giả thuyết về kỳ vọng/trung bình Khởi tạo hàm và các tham số truyền vào.. KDGT_GiatriTrungBinh µo Bài toán kiểm định giả thuyết về kỳ vọng đượ

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN TOÁN ỨNG DỤNG VÀ TIN HỌC

———–oOo———–

BÁO CÁO BÀI THỰC HÀNH CHƯƠNG 3

Học phần: SUY LUẬN THỐNG KÊ

GV hướng dẫn: PGS TS Nguyễn Thị Thu Thủy

Trang 3

Mục lục

1.1 Kiểm định giả thuyết về kỳ vọng/trung bình 1

1.2 Kiểm định giả thuyết về tỷ lệ hay xác suất 2

1.3 Kiểm định giả thuyết về phương sai 3

Chương 2 Kiểm định giả thuyết về tham số của hai tổng thể 5 2.1 So sánh giá trị trung bình của hai tổng thể 5

2.2 So sánh hai tỷ lệ 7

2.3 So sánh hai phương sai 8

Chương 3 Kiểm định khác 9 3.1 Phân tích phương sai một nhân tố 9

3.2 Kiểm định phi tham số 10

3.2.1 Kiểm định giả thuyết về quy luật phân phối của biến ngẫu nhiên 10

3.2.2 Kiểm định giả thuyết về tính độc lập giữa hai dấu hiệu định tính 12

Chương 4 Mã Nguồn 14 4.1 Kiểm định giả thuyết 14

4.1.1 Kỳ vọng/trung bình 14

4.1.2 Tỷ lệ hay xác suất 17

4.1.3 Phương sai 18

4.2 Kiểm định giả thuyết về tổng thể 20

4.2.1 Trung bình của hai tổng thể 20

4.2.2 hai tỷ lệ 23

4.2.3 hai phương sai 24

4.3 Kiểm định khác 25

4.3.1 Phương sai một nhân tố 25

4.3.2 Phi tham số 26

4.4 Một số hàm hỗ trợ 31

Chương 5 Bài tập và ví dụ 32 5.1 Bài 3.2 32

5.2 Bài 3.6 33

5.3 Bài 3.9 34

5.4 Bài 3.11 34

Trang 4

5.5 Bài 2.12 35

5.6 Bài 3.15 36

5.7 Bài 3.19 37

5.8 Bài 3.22 37

5.9 Bài 3.23 38

5.10 Bài 3.24 39

5.11 Bài 3.25 40

Trang 5

Chương 1

Kiểm định giả thuyết

1.1 Kiểm định giả thuyết về kỳ vọng/trung bình

Khởi tạo hàm và các tham số truyền vào

KDGT_GiatriTrungBinh <- function(

Sample, n = length(Sample), variance = NULL, Alpha = 0.05, MEAN

= mean(Sample), Ho, SD = sd(Sample),

ALT = c("tow.sided", "less", "greater" ))

Trong đó:

• Sample: Mẫu cần kiểm định

• n = length(Sample): Kích thươc mẫu

• variance = NULL: Phương sai, mặc định là NULL chưa biết

• Alpha = 0.05: Mức ý nghĩa

• MEAN = mean(Sample): Giá trị kỳ vọng của mẫu

• Ho: Giá trị µ = µo

• SD = sd(Sample): Độ lệch chuẩn hiệu chỉnh của mẫu

• ALT = c("tow.sided", "less", "greater")): Loại kiểm định

two.sided: kiểm định hai phía µ 6= µo

less: kiểm định một phía µ < µo

greater: kiểm định một phía µ > µo

Bài toán kiểm định giả thuyết về kỳ vọng được chia làm các trường hợp sau:

Trường hợp đã biết phương sai: Chúng ta sẽ tra bảng phân phối chuẩn với

φ(u1 −α) = 1 − α/2 cho hai phía và φ(u1 −α) = 1 − α cho một phía.Giá trị quan sát Xqs= x−µo

σ

√nCode:

Uqs <- (MEAN - Ho)*sqrt(n)/sqrt(variance)

u1 <- qnorm(1 - Alpha/2)

u2 <- qnorm(1 - Alpha)

Trang 6

Trường hợp chưa biết phương sai,cỡ mẫu lớn (n ≥ 30): Trường hợp này chúng

ta sẽ tra bảng giống với trường hợp đã biết phương sai

Giá trị quan sát Xqs= X−µo

S

√nCode:

Uqs <- (MEAN - Ho)*(sqrt(n))/SD

u1 <- qnorm(1 - Alpha/2)

u2 <- qnorm(1 - Alpha)

Trường hợp chưa biết phương sai,cỡ mẫu nhỏ (n < 30): Trường hợp này chúng

ta sẽ tra bảng phân phối STUDENT với tn −1

1 −α/2 cho hai phía và tn −1

1 −α chomột phía

Giá trị quan sát tqs = x−µo

s

√nCode:

Tqs <- (MEAN - Ho)*(sqrt(n))/SD

t1 <- qt(1-Alpha/2, n - 1)

t2 <- qt(1 -Alpha, n - 1)

1.2 Kiểm định giả thuyết về tỷ lệ hay xác suất

Khởi tạo hàm với các tham số truyền vào

• ALT = c("tow.sided", "less", "greater")): Loại kiểm định

two.sided: kiểm định hai phía p 6= po

less: kiểm định một phía p < po

greater: kiểm định một phía p > po

Để giải bài toán kiểm định tỷ lệ cần kiểm tra điều kiện npo> 5v(1−n)po> 5.Nếu đúng thì U ∼ N(0,1) Tra bảng phân phối chuẩn với φ(u1 −α) = 1 − α/2cho hai phía và φ (u1 −α) = 1 − α cho một phía

Giá trị quan sát uqs= √ f−po

p 0 (1−p o )

n, f = mnCode:

Trang 7

c 3

u1 <- qnorm(1-Alpha/2)

u2 <- qnorm(1 - Alpha)

Uqs <- (f- Po)*sqrt(n)/sqrt(Po*(1-Po))

1.3 Kiểm định giả thuyết về phương sai

Khởi tạo hàm và các tham số truyền vào

• Sample: Mẫu cần kiểm định

• n = length(Sample): Kích thươc mẫu

• Expected = NULL: Kỳ vọng, mặc định là NULL chưa biết

• Alpha = 0.05: Mức ý nghĩa

• Vo: Giá trị σ2= σo2

• SD = sd(Sample): Độ lệch chuẩn hiệu chỉnh của mẫu

• ALT = c("tow.sided", "less", "greater")): Loại kiểm định

two.sided: kiểm định hai phía σ2

6= σo2

less: kiểm định một phía σ2< σo2

greater: kiểm định một phía σ2> σ2

Trang 8

Xqs <- X/Vox1 <- qchisq(Alpha/2, n)x11 <- qchisq(1 - Alpha/2, n)x2 <- qchisq(Alpha, n)

x3 <- qchisq(1 - Alpha, n)

Trang 9

Chương 2

Kiểm định giả thuyết về tham số của hai

tổng thể

2.1 So sánh giá trị trung bình của hai tổng thể

Khởi tạo hàm và các tham số truyền vào

sigma.x = sd(Sample.X), sigma.y = sd(Sample.Y),

ALT = c("nuy1 != nuy2", "nuy1 < nuy2", "nuy1 > nuy2" ))

Trong đó:

• Sample.X: Mẫu so sánh X

• Sample.Y: Mẫu so sánh Y

• n1 = length(Sample.X): Kích thươc mẫu X

• n2 = length(Sample.Y): Kích thươc mẫu Y

• Alpha = 0.05: Mức ý nghĩa

• haveVar = FALSE: Đã biết phương sai hay chưa

• MEAN.x = mean(Sample.X): Giá trị kỳ vọng của mẫu X

• MEAN.x = mean(Sample.X): Giá trị kỳ vọng của mẫu X

• sigma.x = sd(Sample.X): Độ lệch chuẩn hiệu chỉnh của mẫu X

• sigma.y = sd(Sample.Y): Độ lệch chuẩn hiệu chỉnh của mẫu Y

• ALT = c("nuy1 != nuy2", "nuy1 < nuy2", "nuy1 > nuy2")): Loại kiểmđịnh

nuy1 != nuy2: đối thuyết µ16= µ2

nuy1 < nuy2: đối thuyết µ1< µ2

nuy1 > nuy2: đối thuyết µ1> µ2

Trang 10

Bài toán so sánh giá trị trung bình của hai tổng thể được chia làm các trườnghợp sau:

Trường hợp đã biết phương sai σ2

1, σ22: Chúng ta sẽ tra bảng phân phối chuẩnvới φ (u1 −α) = 1 − α/2 cho hai phía và φ(u1 −α) = 1 − α cho một phía.Giá trị quan sát uqs= r x−y

σ 21n1 +σ 22 n2

Code:

Uqs < (MEAN.x

-MEAN.y)/sqrt((sigma.x^2/n1)+(sigma.y^2/n2))u1 <- qnorm(1 - Alpha/2)

u2 <- qnorm(1 - Alpha))

Trường hợp chưa biết phương sai σ2

1, σ2

2,cỡ mẫu lớn (n ≥ 30): Trường hợp này

chúng ta sẽ tra bảng giống với trường hợp đã biết phương sai

Giá trị quan sát uqs= rX−Y

S21n1 +S22 n2

Code:

Uqs < (MEAN.x

-MEAN.y)/sqrt((sigma.x^2/n1)+(sigma.y^2/n2))u1 <- qnorm(1 - Alpha/2)

u2 <- qnorm(1 - Alpha)

Trường hợp chưa biết phương sai σ2

1, σ2

2,cỡ mẫu nhỏ (n < 30): Trường hợp này

chúng ta sẽ tra bảng phân phối STUDENT với tn 1 +n 2

1 −α/2 cho hai phía và

t1 <- qt(1 - Alpha/2, n1 + n2 - 2)

t2 <- qt(1 - Alpha, n1 + n2 -2)

Trường hợp hai mẫu không độc lập:so sánh cặp: Ta sẽ thiết lập Z = X −Y

và đưa bài toán về dạng kiểm định giá trị kỳ vọng

Code:

SosanhCapHaiTrungbinh <- function( OB = object, Alpha =

0.05, ){

colnames(OB) <- c("X","Y")

OB$Z <- OB$X - OB$Y

Trang 11

c 7

tmp <- Alpha

cat("\nSo sanh hai gia tri trung binh khong doc lap: Sosanh cap")

cat("\nThiet lap Z = X - Y")

cat("\nDua ve bai toan kiem dinh gia thuyet gia tri

trung binh cua Z voi Ho = 0.")KDGT_GiatriTrungBinh(OB$Z,Alpha = tmp,Ho = 0 ,ALT =

"two.sided")}

Trang 12

2.3 So sánh hai phương sai

Khai báo hàm và các tham số truyền vào

SoSanhHaiPhuongSai <- function(

Sample.X, Sample.Y, n.1 = length(Sample.X), n.2 =

length(Sample.Y),

sigma.x = sd(Sample.X), sigma.y = sd(Sample.Y), Alpha = 0.05,

ALT = c("var.x != var.y", "var.x > var.y"))

Trong đó:

• Sample.X: Mẫu so sánh X

• Sample.Y: Mẫu so sánh Y

• n.1 = length(Sample.X): Kích thươc mẫu X

• n.2 = length(Sample.Y): Kích thươc mẫu Y

• Alpha = 0.05: Mức ý nghĩa

• sigma.x = sd(Sample.X) : Độ lệch chuẩn hiệu chỉnh của mẫu X

• sigma.y = sd(Sample.Y) : Độ lệch chuẩn hiệu chỉnh của mẫu Y

• ALT = c("var.x != var.y", "var.x > var.y")): Loại kiểm định

var.x != var.y: đối thuyết σ2

1 6= σ22

var.x > var.y: đối thuyết σ2

1 > σ2 2

Đối với dạng bài toán này chúng ta sẽ tra bảng phân phối Fisher với F(α/2)(n1−1;n2−1), F(1−α/2)(n1cho đối thuyết σ2

1 6= σ22 và F(1−α/2)(n1−1;n2−1) cho đối thuyết σ2

1 > σ22Tính giá trị quan sát fqs = s21

Trang 13

Chương 3

Kiểm định khác

3.1 Phân tích phương sai một nhân tố

Khai báo hàm và các tham số truyền vào

PhanTichPhuongSai1NhanTo <- function( object,Alpha = 0.05, )

Trong đó:

• object: Dữ liệu truyền vào dưới dạng data.frame

• Alpha = 0.05: Mức ý nghĩa 5%

Để giải quyết bài toán này đầu tiên chúng ta sẽ đặt lại tên cột của data.frame

để dễ dàng thao tác bằng lệnhcolnames(object)<- c("Data","Group")

Sử dụng lệnhcount trong thư việnlibrary(plyr) để gộp các nhóm lại vớinhautmp <- count(object$Group)

Tính các giá trị

SST = Σki=1Σni

j=1x2i j−tn2SSF = Σk

i=1

ti2

ni −tn2 =SSE = SST − SSFMSF = kSSF−1, k − 1 là bậc tự do của SSFMSE = nSSE−k, n − k là bậc tự do của SSE

fqs= MSFMSETra bảng Fisher với bậc tự do là (k − 1,n − k): F(1−α)(k−1)(n−k)

Trang 14

3.2 Kiểm định phi tham số

3.2.1 Kiểm định giả thuyết về quy luật phân phối của biến

ngẫu nhiên

Kiểm định phân phối chuẩn

Khai báo hàm và các tham số truyền vào

KDPPChuan <- function(object, Alpha = 0.05)

Trong đó:

• object: Dữ liệu truyền vào dưới dạng data.frame

• Alpha = 0.05: Mức ý nghĩa 5%

Ý tưởng giải quyết bài toán:

Sử dụng thư viện library(gsubfn)để loại bỏ dấu cận trên và dưới của biếnngẫu nhiên Sau đó tách ra thành 2 cột dữ liệu cận trên và dưới để tiện choquá trình tính toán

mean.ob = sum(S.object$Ssum*S.object$Freq)/n

Trang 15

c 11

s = sqrt(sum((S.object$Ssum mean.ob)^2*S.object$Freq)/(n 1))

-S.object[1,1] = -Inf

S.object[nrow(S.object),2] = Inf

object$U.i = (S.object$CD - mean.ob)/s

object$U.j = (S.object$CT - mean.ob)/s

Kiểm định phân phối Poison

Khai báo hàm và các tham số truyền vào

KiemDinhPhanPhoiPoison <- function(object, Alpha = 0.05, )

Trang 16

So sánh với χ2

(1−α)(k−r−1), r = 1, để đưa ra kết luận

Kiểm định phân phối Nhị thức

Thực hiện tương tự như hàm kiểm định phân phối Poison với:

Pi = P(x=k)= Ck

npk(1 − p)n −kp.i[i] = Px_nhithuc(k-1,x,p)

Khai báo hàm và các tham số truyền vào

KDGT_DocLapGiua2DauHieuDinhTinh <-function(object, Alpha =

Trang 17

c 13

So sánh với χ2

(1−α)(k−)(h−1), để đưa ra kết luận

Trang 20

if( Uqs < -u1 || Uqs > u1 ){

cat("\nMien bac bo: ( -inf ;",-u1,")U(",u1,"; inf )")

Trang 21

if( Uqs < -u1 || Uqs > u1 ){

cat("\nMien bac bo: ( -inf ;",-u1,")U(",u1,"; inf )")

Trang 24

4.2 Kiểm định giả thuyết về tổng thể

4.2.1 Trung bình của hai tổng thể

sigma.x = sd(Sample.X), sigma.y = sd(Sample.Y),

ALT = c("nuy1 != nuy2", "nuy1 < nuy2", "nuy1 > nuy2" )

if( Uqs < -u1 || Uqs > u1 ){

cat("\nMien bac bo: ( -inf ;",-u1,")U(",u1,"; inf )")

Trang 25

cat("\nSo sanh hai gia tri trung binh cua hai tong the chua

biet phuong sai.")

if( n1 < 30 && n2 < 30){

cat("\nVoi co mau hai tong the < 30 va muc y nghia", Alpha*100,

"% tra bang phan phoi STUDENT ta co:")

tmp < (((n1 1)*sigma.x^2 + (n2 1)*sigma.y^2)/(n1 + n2 2))*(1/n1 + 1/n2)

Trang 26

cat("\nVoi co mau hai tong the > 30 va muc y nghia", Alpha*100,

"% tra bang phan phoi CHUAN ta co:")

Uqs <- (MEAN.x - MEAN.y)/sqrt((sigma.x^2/n1)+(sigma.y^2/n2))u1 <- qnorm(1 - Alpha/2)

u2 <- qnorm(1 - Alpha)

result = switch (

ALT,

"nuy1 != nuy2" =(

if( Uqs < -u1 || Uqs > u1 ){

cat("\nMien bac bo: ( -inf ;",-u1,")U(",u1,"; inf )")

Trang 27

cat("\nThiet lap Z = X - Y")

cat("\nDua ve bai toan kiem dinh gia thuyet gia tri trung binhcua Z voi Ho = 0.")

KDGT_GiatriTrungBinh(OB$Z,Alpha = tmp,Ho = 0 ,ALT = "two.sided")}

if( Uqs < -u1 || Uqs > u1){

cat("\nMien Bac bo: ( -inf ;", -u1, ") U (",u1,"; inf )")

Trang 28

cat("\nSo sanh hai phuong sai.")

cat("\nVoi muc y nghia", Alpha*100, "% tra bang phan phoi

Trang 29

4.3.1 Phương sai một nhân tố

PhanTichPhuongSai1NhanTo <- function( object,Alpha = 0.05, ){

Trang 30

cat("\nPhan tich phuong sai mot nhan to One-Way ANOVA.")

cat("\nGia thuyet ban dau Ho: nuy1 = nuy2 = nuyk ( k =",length(tmp$x), ")")

cat("\nGia thuyet kiem dinh H1: Ton tai i,j | nuyi != nuyj.")cat("\nVoi muc y nghia ", Alpha*100," % tra bang Fisher ta co:

")

cat("\nMien Bac bo: Wa = (", F1, "; inf )")

cat("\n\tBang Phan tich phuong sai ANOVA.\n")

print(ANOVA)

cat("\nTu bang phan tich phuong sai ta thay: ")

if( Fqs > F1){

cat("Gia tri quan sat thuoc vao mien bac bo")

cat("\n=> Bac bo gia thuyet Ho ")

}else{

cat("Gia tri quan sat khong thuoc vao mien bac bo")

cat("\n=> Chua co du co so de bac bo gia thuyet Ho ")

Trang 31

cat("\nMien bac bo : (", Chi, "; inf )")

cat("\nTu bang so lieu tren ta tinh toan duoc Xqs = ", Xqs)

if(Xqs > Chi){

cat("\nGia tri quan sat thuoc vao mien bac bo")

cat("\n=> Bac bo gia thuyet Ho ")

cat("\nHai dac tinh nay phu thuoc vao nhau.")

}else{

cat("\nGia tri quan sat khong thuoc vao mien bac bo")

cat("\n=> Chua co du co so de bac bo gia thuyet Ho ")

cat("\nHai dac tinh doc lap.")

Trang 32

cat("\n\tKiem dinh phan phoi Poison.")

cat("\nGia thuyet Ho: Bien ngau nhien tuan theo luat phan phoiPoison.")

cat("\nThuyet doi H1: Bien ngau nhien ko tuan theo luat phanphoi Poison.")

cat("\nTu du lieu dau vao ta xay dung duoc bang sau:\n")

print(R.object)

Xqs <- R.object$Xiqs[k+1]

cat("\nTu bang giua lieu ta co gia tri quan sat Xqs = ", Xqs)cat("\nVoi muc y nghia", Alpha*100,"% tra bang Chi-Square taduoc:")

cat("\nMien bac bo : (", qchisq(1-Alpha,k-2),"; inf )")

if(Xqs > qchisq(1-Alpha,k-2)){

cat("\nTa thay gia tri quan sat thuoc vao mien bac bo")

cat("\n=> Bac bo gia thuyet Ho ")

cat("\nBien ngau nhien ko tuan theo luat phan phoi Poison")

}else{

cat("\nTa thay gia tri quan sat ko thuoc vao mien bac bo")

cat("\n=>Chua co du co so de bac bo gia thuyet Ho ")

cat("\nBien ngau nhien tuan theo luat phan phoi Poison")

Trang 33

S.object[nrow(S.object),2] = Inf

object$U.i = (S.object$CD - mean.ob)/s

object$U.j = (S.object$CT - mean.ob)/s

paste("(",S.object$CD[nrow(object)],",Inf)")

cat("\n\tKiem dinh phan phoi Chuan.")

cat("\nGia thuyet Ho: Bien ngau nhien tuan theo luat phan phoiChuan.")

cat("\nThuyet doi H1: Bien ngau nhien ko tuan theo luat phanphoi Chuan.")

cat("\nTu du lieu dau vao ta xay dung duoc bang sau:\n")

print(object)

cat("\nTu bang giua lieu ta co gia tri quan sat Xqs = ", Xqs)cat("\nVoi muc y nghia", Alpha*100,"% tra bang Chi-Square taduoc:")

cat("\nMien bac bo : (", qchisq(1-Alpha,nrow(object) - 3),";inf )")

if(Xqs > qchisq(1-Alpha,nrow(object) - 3)){

cat("\nTa thay gia tri quan sat thuoc vao mien bac bo")

cat("\n=> Bac bo gia thuyet Ho ")

cat("\nBien ngau nhien ko tuan theo luat phan phoi Chuan.")

}else{

cat("\nTa thay gia tri quan sat ko thuoc vao mien bac bo")

cat("\n=>Chua co du co so de bac bo gia thuyet Ho ")

cat("\nBien ngau nhien tuan theo luat phan phoi Chuan.")

Ngày đăng: 22/12/2022, 10:09

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w