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

Báo cáo bài tập lớn xác suất thống kê

27 4 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

Định dạng
Số trang 27
Dung lượng 692,43 KB

Nội dung

lOMoARcPSD|15963670 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN: XÁC SUẤT THỐNG KÊ Giáo viên hướng dẫn: Nguyễn Đình Huy Sinh viên: Lưu Hồng Phúc Hưng MSSV:2013385 Lớp: L06 Khoa Kỹ thuật xây dựng Hồồ Chí Minh, ngày 12 tháng 11 năm 2021 Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Đề tài 5: Hoạt động 1: Tập tin heat_data thu thập với mục tiêu đánh giá nhân tố ảnh hưởng đến mức độ thu nhiệt toả nhiệt ngơi nhà Các biến liệu:           X1 - Độ nhỏ gọn X2 - Diện tích bề mặt X3 - Diện tích tường X4 - Khu vực mái nhà X5 - Chiều cao tổng thể X6 - Định hướng X7 - Khu vực dán kính X8 - Phân bố khu vực dán kính y1 - Mức độ thu Nhiệt y2 - Mức độ tỏa nhiệt Các bước thực hiện: Đọc liệu (Import data): heat_date.csv Làm liệu (Data cleaning): NA (dữ liệu khuyết) Làm rõ liệu (Data visualization) (a) Chuyển đổi biến (nếu cần thiết) (b) Thống kê mô tả: dùng thống kê mẫu dùng đồ thị Mơ hình hồi quy tuyến tính : Sử dụng mơ hình hồi quy tuyến tính phù hợp để đánh giá nhân tố tác động đến mức độ thu nhiệt nhà t.test: Đề suất kiểm định phù hợp để so sánh trung bình mức thu nhiệt tỏa nhiệt nhà Thực Rstudio 1.Đọc liệu (Import data): Hãy dùng lệnh read.csv() để đọc tệp tin Khai báo thư viện (library) sử dụng tồn q trình thực tập (cần phải cài đặt thư viện thông qua Install package(s) R Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Input: >#Cai dat thu vien >install.packages("dplyr") >library(dplyr) >#Doc du lieu >setwd("C:/BTL") Thực đọc liệu cho file “heat_data.csv” thông qua read.csv() >EG = read.csv("heat_data.csv") Output: Làm liệu (Data cleaning): NA (dữ liệu khuyết): Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Input: #Kiem tra du lieu khuyet >apply(is.na(EG), 2,which) Output: Dòng lệnh >apply(is.na(new_DF),2,which) để kiểm tra vị trí liệu khuyết Đề xuất phương án xóa liệu khuyết chiếm q nhỏ liệu đề nên bỏ không ảnh hưởng Làm rõ liệu (Data visualization) Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Tính giá trị thống kê mơ tả gồm: trung bình, trung vị, độ lệch chuẩn, giá trị lớn giá trị nhỏ Xuất kết với dạng bảng hàm: mean(), median(), sd(), min(), max(), apply(), as.data.frame() Input: > #Bien lien tuc > mean = apply(EG[,c(1,2,3,4,5,7,9,10)], 2, mean, na.rm = T) > median = apply(EG[,c(1,2,3,4,5,7,9,10)], 2, median, na.rm = T) > sd = apply(EG[,c(1,2,3,4,5,7,9,10)], 2,sd, na.rm = T) > max = apply(EG[,c(1,2,3,4,5,7,9,10)], 2, max, na.rm = T) > = apply(EG[,c(1,2,3,4,5,7,9,10)], 2, min, na.rm = T) > Bangthongtin = cbind(mean, median, sd, max, min) > as.data.frame(Bangthongtin) Output: Dùng hàm boxplot() vẽ phân phối biến X1 cho nhóm phân loại Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Thống kê mô tả Thống kê biến rời rạc: Đầu tiên tạo khung liệu data.frame sau tạo bảng thống kê cho biến Table() Thay đổi tên cột khung liệu biến lệch colnames() “nhóm” , “số lượng” Input: > #Thong ke gia tri cac bien roi rac > X1=as.data.frame(table(EG$X1)) > colnames(X1)=c("Nhom","So luong") > X2=as.data.frame(table(EG$X2)) > colnames(X2)=c("Nhom","So luong") > X3=as.data.frame(table(EG$X3)) > colnames(X3)=c("Nhom","So luong") > X4=as.data.frame(table(EG$X4)) > colnames(X4)=c("Nhom","So luong") > X5=as.data.frame(table(EG$X5)) Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 > colnames(X5)=c("Nhom","So luong") > X6=as.data.frame(table(EG$X6)) > colnames(X6)=c("Nhom","So luong") > X7=as.data.frame(table(EG$X7)) > colnames(X7)=c("Nhom","So luong") > X8=as.data.frame(table(EG$X8)) > colnames(X8)=c("Nhom","So luong") Output: Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 (theo thứ tự X1, X2, X3, X4, X5, X6, X7, X8) Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Vẽ đồ thị phân phối mức độ thu tỏa nhiệt “hist” Input: > #hist Y1 Y2 > hist(EG$Y1,col = "blue", main = "Phan bo cua Y1") > hist(EG$Y2,col = "yellow", main = "Phan bo cua Y2") Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Thay đổi kiểu liệu: chuyển đổi cột liệu sang định dạng số biến Input: > X1 = as.numeric(EG$X1) > X2 = as.numeric(EG$X2) > X3 = as.numeric(EG$X3) > X4 = as.numeric(EG$X4) > X5 = as.numeric(EG$X5) > X6 = as.factor(EG$X6) > X7 = as.numeric(EG$X7) > X8 = as.factor(EG$X8) > Y1=as.numeric(EG$Y1) > Y2=as.numeric(EG$Y2) Phân tích liệu mức độ thu tỏa nhiệt (Y) phụ thuộc vào biến X biểu đồ (dùng pair) Phân phối mức độ thu nhiệt: y1 Input: #pair Y1 >pairs(Y1 ~ X1, pch = 1,col="blue", main = "Phan phoi cua Y1 voi X1") >pairs(Y1 ~ X2, pch = 1,col="blue", main = "Phan phoi cua Y1 voi X2") >pairs(Y1 ~ X3, pch = 1,col="blue", main = "Phan phoi cua Y1 voi X3") >pairs(Y1 ~ X4, pch = 1,col="blue", main = "Phan phoi cua Y1 voi X4") >pairs(Y1 ~ X5, pch = 1,col="blue", main = "Phan phoi cua Y1 voi X5") >pairs(Y1 ~ X6, pch = 1,col="blue", main = "Phan phoi cua Y1 voi X6") >pairs(Y1 ~ X7, pch = 1,col="blue", main = "Phan phoi cua Y1 voi X7") >pairs(Y1 ~ X8, pch = 1,col="blue", main = "Phan phoi cua Y1 voi X8") Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Phân phối mức độ tỏa nhiệt: y2 Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Input: #pairs Y2 >pairs(Y2 ~ X1, pch = 1,col="yellow", main = "Phan phoi cua Y2 voi X1") >pairs(Y2 ~ X2, pch = 1,col="yellow", main = "Phan phoi cua Y2 voi X2") >pairs(Y2 ~ X3, pch = 1,col="yellow", main = "Phan phoi cua Y2 voi X3") >pairs(Y2 ~ X4, pch = 1,col="yellow", main = "Phan phoi cua Y2 voi X4") >pairs(Y2 ~ X5, pch = 1,col="yellow", main = "Phan phoi cua Y2 voi X5") >pairs(Y2 ~ X6, pch = 1,col="yellow", main = "Phan phoi cua Y2 voi X6") >pairs(Y2 ~ X7, pch = 1,col="yellow", main = "Phan phoi cua Y2 voi X7") >pairs(Y2 ~ X8, pch = 1,col="yellow", main = "Phan phoi cua Y2 voi X8") Output: Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Mối quan hệ đôi (hệ số tương quan R) Input: > corX1=cbind(cor(EG$X1,EG$X1),cor(EG$X1,EG$X2),cor(EG$X1,EG$X3), + cor(EG$X1,EG$X4),cor(EG$X1,EG$X5), + cor(EG$X1,EG$X6),cor(EG$X1,EG$X7), + cor(EG$X1,EG$X8) ) > colnames(corX1) = c("X1","X2","X3","X4","X5","X6","X7","X8") > row.names(corX1)= c("X1 vs") > corX2=cbind(cor(EG$X2,EG$X1),cor(EG$X2,EG$X2), + cor(EG$X2,EG$X3),cor(EG$X2,EG$X4), + cor(EG$X2,EG$X5),cor(EG$X2,EG$X6), + cor(EG$X2,EG$X7),cor(EG$X2,EG$X8) ) > colnames(corX2) = c("X1","X2","X3","X4","X5","X6","X7","X8") Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 > row.names(corX2)= c("X2 vs") > corX3=cbind(cor(EG$X3,EG$X1),cor(EG$X3,EG$X2), + cor(EG$X3,EG$X3),cor(EG$X3,EG$X4), + cor(EG$X3,EG$X5),cor(EG$X3,EG$X6), + cor(EG$X3,EG$X7),cor(EG$X3,EG$X8) ) > colnames(corX3) = c("X1","X2","X3","X4","X5","X6","X7","X8") > row.names(corX3)= c("X3 vs") > corX4=cbind(cor(EG$X4,EG$X1),cor(EG$X4,EG$X2), + cor(EG$X4,EG$X3),cor(EG$X4,EG$X4), + cor(EG$X4,EG$X5),cor(EG$X4,EG$X6), + cor(EG$X4,EG$X7),cor(EG$X4,EG$X8) ) > colnames(corX4) = c("X1","X2","X3","X4","X5","X6","X7","X8") > row.names(corX4)= c("X4 vs") > corX5=cbind(cor(EG$X5,EG$X1),cor(EG$X5,EG$X2), + cor(EG$X5,EG$X3),cor(EG$X5,EG$X4), + cor(EG$X5,EG$X5),cor(EG$X5,EG$X6), + cor(EG$X5,EG$X7),cor(EG$X5,EG$X8) ) > colnames(corX5) = c("X1","X2","X3","X4","X5","X6","X7","X8") > row.names(corX5)= c("X5 vs") > corX6=cbind(cor(EG$X6,EG$X1),cor(EG$X6,EG$X2), + cor(EG$X6,EG$X3),cor(EG$X6,EG$X4), + cor(EG$X6,EG$X5),cor(EG$X6,EG$X6), + cor(EG$X6,EG$X7),cor(EG$X6,EG$X8) ) > colnames(corX6) = c("X1","X2","X3","X4","X5","X6","X7","X8") > row.names(corX6)= c("X6 vs") Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 > corX7=cbind(cor(EG$X7,EG$X1),cor(EG$X7,EG$X2), + cor(EG$X7,EG$X3),cor(EG$X7,EG$X4), + cor(EG$X7,EG$X5),cor(EG$X7,EG$X6), + cor(EG$X7,EG$X7),cor(EG$X7,EG$X8) ) > colnames(corX7) = c("X1","X2","X3","X4","X5","X6","X7","X8") > row.names(corX7)= c("X7 vs") > corX8=cbind(cor(EG$X8,EG$X1),cor(EG$X8,EG$X2), + cor(EG$X8,EG$X3),cor(EG$X8,EG$X4), + cor(EG$X8,EG$X5),cor(EG$X8,EG$X6), + cor(EG$X8,EG$X7),cor(EG$X8,EG$X8) ) > colnames(corX8) = c("X1","X2","X3","X4","X5","X6","X7","X8") > row.names(corX8)= c("X8 vs") > Cetable= rbind(corX1,corX2,corX3,corX4,corX5,corX6,corX7,corX8) > as.data.frame(Cetable) Mơ hình hồi quy tuyến tính Xây dựng mơ hình hồi quy tuyến tính bao gồm biến X4 biến phụ thuộc, tất biến lại biến độc lập #Hồi quy X4 > MX4 = lm(X4~X1+X2+X3+X5+X6+X7+X8) > summary(MX4) Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Theo mơ hình hồi quy tuyến tính “MX4”, mức tin cậy lớn 5% khơng có dấu nên X5, X63, X64, X65, X7 khơng mang ý nghĩa thống kê=> loại khỏi mơ hình Các biến cịn lại có ý nghĩa thống kê #Tong ket C.E Y1 > corY1=cbind(cor(EG$X1,EG$Y1),cor(EG$X2,EG$Y1), + cor(EG$X3,EG$Y1),cor(EG$X4,EG$Y1), + cor(EG$X5,EG$Y1),cor(EG$X6,EG$Y1), + cor(EG$X7,EG$Y1),cor(EG$X8,EG$Y1)) > colnames(corY1)=c("X1 vs Y1","X2 vs Y1", + "X3 vs Y1","X4 vs Y1", + "X5 vs Y1","X6 vs Y1", Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 + "X7 vs Y1","X8 vs Y1") > rownames(corY1)=c("correlation coefficient") #Tong ket C.E Y2 > corY2=cbind(cor(EG$X1,EG$Y2),cor(EG$X2,EG$Y2), + cor(EG$X3,EG$Y2),cor(EG$X4,EG$Y2), + cor(EG$X5,EG$Y2),cor(EG$X6,EG$Y2), + cor(EG$X7,EG$Y2),cor(EG$X8,EG$Y2)) > colnames(corY2)=c("X1 vs Y2","X2 vs Y2", + "X3 vs Y2","X4 vs Y2", + "X5 vs Y2","X6 vs Y2", + "X7 vs Y2","X8 vs Y2") > rownames(corY2)=c("Correlation coefficient") Sau tổng kết, xây dựng mô hình hồi quy tuyến tính cho biến Y1 Y2 #Hồi quy Y1 > M1 = lm(Y1~X1+X2+X3+X4+X5+X6+X7+X8,data = EG) > summary(M1) Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Theo mơ hình hồi quy tuyến tính “M1”, mức tin cậy lớn 5% khơng có dấu nên X6 khơng mang ý nghĩa thống kê=> loại khỏi mơ hình Các biến cịn lại có ý nghĩa thống kê #Hồi quy Y2 > M2 = lm(Y1~X1+X2+X3+X5+X7+X8,data = EG) > summary(M2) > anova(m1,m2) Đặt giả thiết : H: M1, M2 có độ phù hợp H : M1, M2 có độ phù hợp khác Ta thấy Pr(>F)= 0.8055 nhỏ lớn mức ý nghĩa 5% nên mơ hình M1, M2 có độ phù hợp giống Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Đồ thị biểu sai số hồi quy giá trị dự báo lệnh plot() > #plot fitted > plot(fitted(m2), resid(m2), xlab = "fitted values", ylab = "residuals", main = "Plot of residuals and fitted values of Y1") > plot(fitted(m22), resid(m22), xlab = "fitted values", ylab = "residuals", main = "Plot of residuals and fitted values of Y2") Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Mức độ phù hợp modelfit > new_EG= EG[,c(1,2,3,4,5,6,7,8)] > pred_Y1=data.frame(predict(m2,new_EG)) > origin_Y1=EG[,c(9)] > View(new_EG) > View(new_EG) > #modelfit > new_EG= EG[,c(1,2,3,4,5,6,7,8)] > pred_Y1=data.frame(predict(m2,new_EG)) > origin_Y1=EG[,c(9)] > sosanh=cbind(pred_Y1,origin_Y1) > as.data.frame(sosanh) new_EG2= EG[,c(1,2,3,4,5,6,7,8)] pred_Y2=data.frame(predict(m22,new_EG2)) origin_Y2=EG[,c(10)] sosanh2=cbind(pred_Y2,origin_Y2) as.data.frame(sosanh2) Downloaded by ng?c trâm (ngoctram201217@gmail.com) lOMoARcPSD|15963670 Hoạt động Downloaded by ng?c trâm (ngoctram201217@gmail.com)

Ngày đăng: 21/06/2023, 22:08

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w