BÁO CÁO BÀI TẬP LỚN XÁC SUẤT VÀ THỐNG KÊ

53 40 0
BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

Đ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

BÁO CÁO BÀI TẬP LỚN XÁC SUẤT VÀ THỐNG KÊ GVHD: Nguyễn Bá Thi Sinh viên: Trần Lê Trọng Nghĩa MSSV: 1914327 Nhóm: 05 Lớp: L11 Thành phố Hồ Chí Minh - 2021 HỒI QUY TUYẾN TÍNH BỘI Mơ hình biến phụ thuộc với hai nhiều biến độc lập gọi hồi quy bội Phương trình hồi quy tuyến tính bội Y = β0 + β1*X1 + β2*X2 + … + βk*Xk + ε • Với Y : biến phụ thuộc • Xi ( i = 1, …, k) : biến độc lập • β0 : giá trị ước lượng Y Y không phụ thuộc vào Xi ( tức X1 = X2 = … = Xk= 0) • βi ( i = 1, …, k) : hệ số hồi quy riêng, cho thấy ảnh hưởng riêng biến Xi đến Y • ε: sai số ngẫu nhiên thể ảnh hưởng yếu tố khác đến Y Nguồn sai số Bậc tự Tổng số bình Bình Giá trị thống phương phương kê trung bình Hồi quy k SSR MSR=SSR/ k Sai số N-k-1 SSE MSE= SSE/(N-k-1) Tổng cộng N-1 SST = SSR + SSE Giá trị thống kê SSR kF Giá trị R2 hiệu chỉnh 𝑹2 = SST = ( N −k −1 )+ kF Độ lệch chuẩn: 𝑺 = √ SSE N −k −1 F=MSR/MSE Phần chung Bài tập 1: Tập tin”gia_nha.csv” chứa thông tin giá bán thị trường (đơn vị đô la) 21613 nhà quận King nước Mỹ khoảng thời gian từ 5/2014 đến 5/2015 Bên cạnh giá nhà, liệu cịn bao gồm thuộc tính mơ tả chất lượng nhà Dữ liệu gốc cung cấp tại: https://www.kaggle.com/harlfoxem/housesalesprediction Các biến liệu:  Price: giá nhà bán  Sqft_living15: Diện tích trung bình 15 nhà gần khu dân cư  Floors: Số tầng nhà, phân loại từ 1- 3.5  Condition: Điều kiện kiến trúc nhà từ 1-5, 1: tệ 5: tốt  Sqft_above: Diện tích ngơi nhà  Sqft_living: Diện tích khn viên Câu hỏi: Đọc liệu (Import data) Input: setwd (/Users/trongnghia/Documents/XSTK/BTL2) d=read csv (gia_nha.csv ,header =TRUE) Giải thích: - Tìm thư mục hành chứa file lệnh setwd - Đọc liêu từ tệp “gia_nha.csv” lệnh read.csv() - “header = True” giữ lại tên biến Làm liệu (Data cleaning): (a) Hãy trích liệu đặt tên new_DF bao gồm biến mà ta quan tâm trình bày phần giới thiệu liệu Từ câu hỏi sau, yêu cầu xử lý dựa tập liệu new_DF Input: new DF =d [, c (price , sqft_living15 , floors ,condition , sqft_above , sqft_living)] Giải thích: Dữ liệu đặt tên new_DF bao gồm biến chính: price, sqft_living115, floors, condition, sqft_above, sqft_living (b) Kiểm tra liệu bị khuyết tật tập tin (Các câu lệnh tham khảo: is.na(), which(), apply()) Nếu có liệu bị khuyết tật, đề xuất phương pháp thay cho liệu bị khuyết tật Input: apply (is na(new DF ), , which) colSums (is na (new DF )) Giải thích: - Kiểm tra xuất giá trị khuyết tật biến liệu new_DF (apply) - Xuất số giá trị bị khuyết theo cột (colsums) Output: Theo kết thu được, ta nhận thấy có 20 giá trị bị khuyết biến price ta cần sử lý dựa phương pháp sau: + Phương pháp 1: Delete(xóa): phương pháp sử dụng số giá trị bị khuyết không đáng kể + Phương pháp 2: Mean/ Mode/ Median Imputation: phương pháp để điền vào giá trị thiếu với ước tính định Ta chọn phương pháp xóa quan sát mà biến bị khiếm khuyết Input: new DF =na omit( new DF ) apply (is na(new DF ), , which) Output: “interger(0)”: khơng có giá trị bị khuyết tật Làm rõ liệu (Data visualization) (a) Chuyển đổi biến price, sqft_living15, sqft_above, sqft_living thành log(price), log(sqft_living15), log(sqft_above), log(sqft_living) Từ tính tốn với biến hiểu qua đổi biến dạng log Input: new DF [,1]=log 10(new DF [,1]) new DF [,2]=log 10(new DF [,2]) new DF [,5]=log 10(new DF [ ,5 ]) new DF [,6 ]=log10( new DF [, 6]) Giải thích: dùng hàm log10 để chuyển tất cột có số thứ tự 1,2,5,6 (Tương ứng với biến price, sqft_living15, sqft_above, sqft_living) (b) Đối với biến liên tục, tính giá trị thống kê mơ tả bao gồm: trung bình, trung vị, độ lệch chuẩn, giá trị lớn giá trị nhỏ Xuất kết dạng bảng (Hàm gợi ý: mean(), median(), sd(), min(), max(), apply(), as.data.frame(), rownames()) Input: attach(new_DF) mean = apply(new_DF[, c(1,2,5,6)], 2, mean) median = apply(new_DF[, c(1,2,5,6)], 2, median) sd = apply(new_DF[, c(1,2,5,6)], 2, sd) max = apply(new_DF[, c(1,2,5,6)], 2, max) = apply(new_DF[, c(1,2,5,6)], 2, min) descriptive=data.frame(mean,median,sd,max,min) descriptive Output: Giải thích: - Lấy liệu từ tập new_DF - Tính trung bình, trung vị, độ lệch chuẩn, giá trị lớn nhất, nhỏ biến price, sqft_living15, sqft_above, sqft_living - Dùng lệnh data.frame để đưa kết vừa tính dạng bảng xuất kết (c) Đối với biến phân loại lập bảng thống kê số lượng cho chủng loại Input: tb_floors=as.data.frame(table(new_DF$floors)) tb_condition=as.data.frame(table(new_DF$condition)) Output: (floors) (condition) (d) Dùng hàm hist() để vẽ đồ thị phân phối biến price Input: hist(new_DF$price, xlab ="price", main = "Histogram of price") Output: Nhận xét: Giá nhà tập trung nhiều khoảng 5.4 – 5.9 Đồ thị có dạng phân phối chuẩn (e) Vẽ phân phối biến price theo biến phân loại floors condition Input: boxplot(price ~ floors,main="Boxplot of house price for each category of floor",data= new_DF) boxplot(price ~ condition, main="Boxplot of house price for each category of condition", data = new_DF) Output: Nhận xét: - Ta nhận thấy biểu đồ hộp vng nhỏ phân tán ít, đường màu đen đường trung vị - Biểu đồ biến price theo biến floors condition có nhiều ngoại lai (e) Dùng lệnh pairs vẽ phân phối iến price theo biến sqft_living15, sqft_above, sqft living Input: pairs( price sqft living 15 , main=pairs of house price for sqft_living15 , data=new DF ) pairs( price sqft above , main=pairs of house price for sqft_above , data=new DF ) pairs( price sqft living , main=pairs of house price for sqft_living , data=new DF ) Output: Nhận xét: Dựa kết thu được, ta nhận thấy khơng có giá trị khuyết biến quality Làm rõ liệu (Data visualization) a Đối với biến liên tục, tính giá trị thống kê mơ tả bao gồm: trung bình, trung vị, độ lệch chuẩn, giá trị lớn giá trị nhỏ Xuất kết dạng bảng (Hàm gợi ý: mean(), median(), sd(), min(), max() , apply(),as.data.frame(), rownames()) Input: gttk ¿ =new DF %> % select (−quality)% >% apply (2 , function(x ){c (mean=mean( x ), median=median(x ), sd=sd (x) , min=min ( x), max=max( x))}) as data frame () Output: b Đối với biến phân loại, lập bảng thống kê số lượng cho chủng loại Input: tk quality=as data frame (table( quality)) Output: c Hãy dùng hàm hist() để vẽ đồ thị phân phối biến quality Input: hist (quality ) Output: Nhận xét: - Phần lớn quality tập trung nhiều từ đến - Nhiều quality = - Ít quality = 0, 1, 2, 9, 10 d Hãy dùng hàm boxplot() vẽ phân phối biến quality với biến lại Input: boxplot (¿ acidity quality ) boxplot ( volatile acidity quality ) boxplot ( citric acid quality) boxplot (residual sugar quality) boxplot ( chlorides quality ) boxplot ( free sulfur dioxide quality ) boxplot (total sulfur dioxide quality ) boxplot ( density quality ) boxplot ( pH quality ) boxplot ( sulphates quality ) boxplot ( alcohol quality ) Output: Xây dựng mơ hình hồi quy tuyến tính (Fitting linear regression models): a Xét mơ hình hồi quy tuyến tính bao gồm biến quality biến phụ thuộc, tất biến lại biến độc lập Hãy dùng lệnh lm() để thực thi mơ hình hồi quy tuyến tính bội Input: M 1=select (new DF ,−quality ) Mohinh1=lm(quality , data=M 1) summary (Mohinh1) Output: b Dựa vào kết mô hình hồi quy tuyến tính trên, loại biến với mức tin cậy 5% khỏi mơ hình tương ứng Giả thiết: - H: Hệ số hồi quy khơng có ý nghĩa thống kê - H´ : Hệ số hồi quy có ý nghĩa thống kê Biện luận: - Pv < α bác bỏ H chấp nhận H̅ tức biến có ý nghĩa thống kê - Từ ta đưa kết luận với mức tin cậy α = 0.05 ta loại biến: fixed.acidity, citric.acid, chlorides, free.sulfur.dioxide, total.sulfur.dioxide, alcohol c Xét mơ hình tuyến tính bao gồm biến quality biến phụ thuộc nhưng:  Mơ hình M1 chứa tất biến cịn lại biến độc lập  Mơ hình M2 loại bỏ fixed.acidity, citric.acid, chlorides, free.sulfur.dioxide, total.sulfur.dioxide, alcohol từ M1 Hãy dùng anova() để đề xuất mơ hình hợp lí Input: M 2=select ( M ,−¿ acidity ,−citric acid ,−chlorides ,−free sulfur dioxide ,−total sulfur dioxide ,−alcoho Mohinh2=lm(quality , data=M 2) summary (Mohinh2) Output: Input: anova (Mohinh1, Mohinh2) Output: Giải thích: Ta đặt giả thuyết H: Hai mơ hình tuyến tính H̅ : Hai mơ hình tuyến tính khác Nhận xét: Vì kết thu bảng Anova cho mơ hình Mohinh1 Mohinh2 Pr(>F) = 0.3259 lớn 0.05 nên ta chấp nhận H Hai mơ hình Mohinh1 có Adjusted R-squared: 0.2801 > Mohinh2 Adjusted Rsquared: 0.2787 Nên chọn Mohinh1 hợp lý d Từ mơ hình hồi quy hợp lý từ câu (c) suy luận tác động biến đến chất lượng rượu Từ Mohinh1, ta xây dựng phương trình hồi quy tuyến tính sau: Y(quality) = 2.578e+02 - 1.327e+00X1(volatile.acidity) + 7.940e02X2(residual.sugar) -2.586e+02X3(density) + 1.060e+00X4(pH) + 1.320e+00X5(sulphates) Nghĩa là: Khi axit bay tăng chất lượng giảm 1.327e+00, lượng đường dư tăng chất lượng tăng 7.940e-02, tỉ trọng tăng chất lượng giảm 2.586e+02, nồng độ pH tăng chất lượng tăng 1.060e+00 nồng độ SO42- tăng chất lượng tăng 1.44710 (sự thay đổi tăng hay giảm đơn vị đo lường) e Từ mơ hình hồi quy hợp lý từ câu (c) dùng lệnh plot() để vẽ đồ thị biểu thị sai số hồi quy giá trị dự báo Nêu ý nghĩa nhận xét Input: plot(fitted(Mohinh2), resid(Mohinh2), xlab ="gia tri du bao", ylab = "sai so hoi quy", main = "do thi bieu thi sai so hoi quy va gia tri du bao") plot(Mohinh2, which = 1) Output: Nhận xét: mối liên hợp âm (mối tương quan chúng tỉ lệ nghịch) Dự báo (Predictions): a Trong liệu bạn, tạo thêm biến đặt tên evaluate, biến biểu diễn tỷ lệ đạt (quality >= 5) không đạt (quality < ) Hãy thống kê tỷ lệ đạt/không đạt (Hàm gợi ý: cbind()) Input: evaluate = as.data.frame(prop.table(table(new_DF$quality >= 5))) names(evaluate) = c("Dat", "Ti le") Output: b Xét mơ hình hồi quy hợp lý mà bạn chọn câu 4(c) Hãy lập bảng số liệu đặt tên New_X bao gồm toàn biến độc lập mơ hình này, dùng lênh predict() để đưa số liệu dự báo cho biến quality phụ thuộc vào New_dX Gọi kết dự báo biến pred_quality Input: new_X = select(new_DF, volatile.acidity, residual.sugar, density, pH, sulphates) new_X$pred_quality = predict(Mohinh2, new_X) Output: c Khảo sát độ xác kết dự báo câu cách lập bảng so sánh kết dự báo pred_quality với kết thực tế biến quality Input: evaluate_table = as.data.frame(prop.table(rbind(table(new_DF$quality >= 5), table(new_X$pred_quality >= 5)), 1)) colnames(evaluate_table) = c("Khong dat", "Dat") rownames(evaluate_table) = c("Quan sat", "Du bao") evaluate_table Output: ... câu (c) hãy dùng lệnh plot() để vẽ đồ thị biểu thị sai số hồi quy và giá trị dự báo Nêu ý nghĩa và nhận xét Input: plot(fitted(M2),resid(M2),xlab = "fittedvalues",ylab =

Ngày đăng: 26/10/2021, 06:31

Hình ảnh liên quan

- Dùng lệnh data.frame để đưa kết quả vừa tính được về dạng bảng và xuất kết quả ra. - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

ng.

lệnh data.frame để đưa kết quả vừa tính được về dạng bảng và xuất kết quả ra Xem tại trang 6 của tài liệu.
4. Xây dựng các mô hình hồi quy tuyến tính (Fitting linear regression models): Chúng ta muốn khám phá rằng có những nhân tố nào và tác động như thế nào đến giá nhà ở quận King - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

4..

Xây dựng các mô hình hồi quy tuyến tính (Fitting linear regression models): Chúng ta muốn khám phá rằng có những nhân tố nào và tác động như thế nào đến giá nhà ở quận King Xem tại trang 11 của tài liệu.
- Xây dựng mô hình M1 thể hiện sự phụ thuộc của biến price với tất cả các biến các lại. - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

y.

dựng mô hình M1 thể hiện sự phụ thuộc của biến price với tất cả các biến các lại Xem tại trang 12 của tài liệu.
(d) Chọn mô hình hợp lý hơn từ câ uc hãy suy luận sự tác động của các biến lên giá nhà - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

d.

Chọn mô hình hợp lý hơn từ câ uc hãy suy luận sự tác động của các biến lên giá nhà Xem tại trang 13 của tài liệu.
- Xây dựng mô hình M2 từ M1 và bỏ đi biến condition. - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

y.

dựng mô hình M2 từ M1 và bỏ đi biến condition Xem tại trang 13 của tài liệu.
(a) Từ mô hình bạn chọn trong câu (c), hãy dùng lệnh predict() để dự báo giá nhà tại 2 thuộc tính như sau: - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

a.

Từ mô hình bạn chọn trong câu (c), hãy dùng lệnh predict() để dự báo giá nhà tại 2 thuộc tính như sau: Xem tại trang 15 của tài liệu.
(b) Đối với các biến phân loại, hãy lập một bảng thống kê số lượng cho từng chủng - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

b.

Đối với các biến phân loại, hãy lập một bảng thống kê số lượng cho từng chủng Xem tại trang 21 của tài liệu.
(b) Dựa vào kết quả của mô hình hồi quy tuyến tính trên, những biến nào bạn sẽ loại - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

b.

Dựa vào kết quả của mô hình hồi quy tuyến tính trên, những biến nào bạn sẽ loại Xem tại trang 27 của tài liệu.
Giải thích: Xây dựng mô hình tuyến tính bội M3 (đã loại bỏ biến failures từ M2). - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

i.

ải thích: Xây dựng mô hình tuyến tính bội M3 (đã loại bỏ biến failures từ M2) Xem tại trang 29 của tài liệu.
- Giả thiết H0: Mô hình M1 và M2 như nhau. - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

i.

ả thiết H0: Mô hình M1 và M2 như nhau Xem tại trang 30 của tài liệu.
- Giả thiết H0: Mô hình M2 và M3 như nhau. - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

i.

ả thiết H0: Mô hình M2 và M3 như nhau Xem tại trang 31 của tài liệu.
Giải thích: vẽ đồ thị sai số hồi quy và sai số dự báo của mô hình M3. Output: - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

i.

ải thích: vẽ đồ thị sai số hồi quy và sai số dự báo của mô hình M3. Output: Xem tại trang 32 của tài liệu.
Nhận xét: Nhìn vào 2 đồ thị của mô hình M2 và M3, ta nhận thấy đường màu đỏ của - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

h.

ận xét: Nhìn vào 2 đồ thị của mô hình M2 và M3, ta nhận thấy đường màu đỏ của Xem tại trang 33 của tài liệu.
4. Xây dựng các mô hình hồi quy tuyến tính (Fitting linear regression models): - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

4..

Xây dựng các mô hình hồi quy tuyến tính (Fitting linear regression models): Xem tại trang 47 của tài liệu.
b. Dựa vào kết quả của mô hình hồi quy tuyến tính trên, loại những biến với các mức tin cậy 5% khỏi mô hình tương ứng. - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

b..

Dựa vào kết quả của mô hình hồi quy tuyến tính trên, loại những biến với các mức tin cậy 5% khỏi mô hình tương ứng Xem tại trang 48 của tài liệu.
 Mô hình M2 là loại bỏ fixed.acidity, citric.acid, chlorides, free.sulfur.dioxide, total.sulfur.dioxide, alcohol từ M1 - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

h.

ình M2 là loại bỏ fixed.acidity, citric.acid, chlorides, free.sulfur.dioxide, total.sulfur.dioxide, alcohol từ M1 Xem tại trang 49 của tài liệu.
H: Hai mô hình tuyến tính như nhau H̅ : Hai mô hình tuyến tính khác nhau - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

ai.

mô hình tuyến tính như nhau H̅ : Hai mô hình tuyến tính khác nhau Xem tại trang 50 của tài liệu.
b. Xét mô hình hồi quy hợp lý nhất mà bạn đã chọn trong câu 4(c). Hãy lập một bảng số liệu mới đặt tên là New_X bao gồm toàn bộ các biến độc lập trong mô hình này, và dùng lênh predict() để đưa ra số liệu dự báo cho biến quality phụ thuộc vào New_dX - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

b..

Xét mô hình hồi quy hợp lý nhất mà bạn đã chọn trong câu 4(c). Hãy lập một bảng số liệu mới đặt tên là New_X bao gồm toàn bộ các biến độc lập trong mô hình này, và dùng lênh predict() để đưa ra số liệu dự báo cho biến quality phụ thuộc vào New_dX Xem tại trang 52 của tài liệu.
b. Xét mô hình hồi quy hợp lý nhất mà bạn đã chọn trong câu 4(c). Hãy lập một bảng số liệu mới đặt tên là New_X bao gồm toàn bộ các biến độc lập trong mô hình này, và dùng lênh predict() để đưa ra số liệu dự báo cho biến quality phụ thuộc vào New_dX - BÁO CÁO BÀI TẬP LỚN  XÁC SUẤT VÀ THỐNG KÊ

b..

Xét mô hình hồi quy hợp lý nhất mà bạn đã chọn trong câu 4(c). Hãy lập một bảng số liệu mới đặt tên là New_X bao gồm toàn bộ các biến độc lập trong mô hình này, và dùng lênh predict() để đưa ra số liệu dự báo cho biến quality phụ thuộc vào New_dX Xem tại trang 52 của tài liệu.

Tài liệu cùng người dùng

Tài liệu liên quan