PROBABILITY STATISTICS, Exercises of Probability and Statistics

Dữ liệu sử dụng được lấy từ UCI – Machine Learning Repository Đường dẫn: https://archive.ics.uci.edu/ml/datasets/Energy+efficiency Tập dữ liệu gồm 768 mẫu với 8 đặc tính ban đầu để dự đoán 2 đặc tính có giá trị thực, được lưu với tên “ENB2012_data.csv”

Typology: Exercises

2020/2021

Uploaded on 06/26/2023

han-gia-10
han-gia-10 🇻🇳

4 documents

1 / 28

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Hoạt động 2
ĐỀ TÀI: HIỆU SUẤT NĂNG LƯỢNG CỦA TÒA NHÀ (ENERGY
EFFICIENCY)
Dữ liệu
Dữ liệu sử dụng được lấy từ UCI – Machine Learning Repository
Đường dẫn: https://archive.ics.uci.edu/ml/datasets/Energy+efficiency
Tập dữ liệu gồm 768 mẫu với 8 đặc tính ban đầu để dự đoán 2 đặc tính
giá trị thực, được lưu với tên “ENB2012_data.csv”
Tổng số biến: 10
Danh sách biến chính trong dữ liệu:
1. X1: Độ nhỏ gọn tương đối
2. X2: Diện tích bề mặt
3. X3: Diện tích tường
4. X4: Diện tích mái nhà
5. X5: Chiều cao tổng thể
6. X6: Sự định hướng
7. X7: Diện tích kính
8. X8: Phân bố diện tích kính
9. Y1: Công suất sưởi ấm
10. Y2: Công suất làm mát
Phương pháp lý thuyết: Hồi quy tuyến tính bội + one-way Anova
Các bước thực hiện
Hồi quy tuyến tính bội :
1. Đọc dữ liệu (Import data):
2. Làm sạch dữ liệu (Data cleaning):
a. Dùng lệnh để trích ra một dữ liệu con đặt tên subset_data_ENB chỉ
bao gồm các biến chính
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c

Partial preview of the text

Download PROBABILITY STATISTICS and more Exercises Probability and Statistics in PDF only on Docsity!

Hoạt động 2

ĐỀ TÀI: HIỆU SUẤT NĂNG LƯỢNG CỦA TÒA NHÀ (ENERGY EFFICIENCY) Dữ liệu Dữ liệu sử dụng được lấy từ UCI – Machine Learning Repository Đường dẫn: https://archive.ics.uci.edu/ml/datasets/Energy+efficiency Tập dữ liệu gồm 768 mẫu với 8 đặc tính ban đầu để dự đoán 2 đặc tính có giá trị thực, được lưu với tên “ENB2012_data.csv” Tổng số biến: 10 Danh sách biến chính trong dữ liệu:

  1. X1: Độ nhỏ gọn tương đối
  2. X2: Diện tích bề mặt
  3. X3: Diện tích tường
  4. X4: Diện tích mái nhà
  5. X5: Chiều cao tổng thể
  6. X6: Sự định hướng
  7. X7: Diện tích kính
  8. X8: Phân bố diện tích kính
  9. Y1: Công suất sưởi ấm
  10. Y2: Công suất làm mát Phương pháp lý thuyết: Hồi quy tuyến tính bội + one-way Anova Các bước thực hiện Hồi quy tuyến tính bội : _1. Đọc dữ liệu (Import data):
  11. Làm sạch dữ liệu (Data cleaning):_ a. Dùng lệnh để trích ra một dữ liệu con đặt tên là subset_data_ENB chỉ bao gồm các biến chính

b. Loại bỏ các giá trị khuyết (NA)

3. Làm rõ dữ liệu (Data visualization): a. Phân biệt các biến liên tục, biến phân loại b. Đối với các biến liên tục, hãy tính các giá trị thống kê mô tả bao gồm: trung bình, trung vị, độ lệch chuẩn, giá trị lớn nhất và giá trị nhỏ nhất. Xuất kết quả dưới dạng bảng. (Hàm gợi ý: mean(), median(), sd(), min(), max(), apply(), as.data.frame(), rownames() ). c. Đối với các biến phân loại, hãy lập một bảng thống kê cho số lượng cho từng chủng loại (Hàm gợi ý: table() ) d. Hãy dùng hàm hist() để vẽ đồ thị phân phối của biến Y1 và Y e. Hãy dùng hàm boxplot() vẽ phân phối của biến Y1, Y2 cho từng nhóm phân loại của biến X1 → X8’ f. Dùng lệnh pairs() vẽ các phân phối của biến Y1, Y2 lần lượt theo các biến X1 → X 4. Xây dựng các 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 Y1, Y2 là biến phụ thuộc, và các biến X1 → X8 là các 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. 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 khỏi mô hình tương ứng với mức tin cậy 5% và 1%? c) Xét 4 mô hình cùng bao gồm biến Y1 là biến phụ thuộc nhưng  Mô hình M1 chứa tất cả các biến độc lập tr  Mô hình M2 loại bỏ biến X6 từ mô hình M  Mô hình M3 là loại bỏ biến X8 từ mô hình M Hãy dùng lệnh anova() để đề xuất mô hình hồi quy hợp lí hơn. d) Chọn mô hình hợp lí hơn từ câu c) và câu d) hãy suy luận sự tác động của các biến độc lập lên Y1.

(2) Nhấp vào tab Import dataset sau đó R Studio hiện lên bảng như sau: (3) Đặt tên bảng dữ liệu được trính ra là ENB2012_data , sau đó nhấn Import. (4) Nhấp vào “ENB2012_data” ở cột data của bảng Environment

2. Làm sạch dữ liệu (Data cleaning):

(1) Trích ra một dữ liệu con đặt tên là new_DF chỉ bao gồm các biến chính mà ta quan tâm trong phần giới thiệu dữ liệu. Từ đây mọi yêu cầu của đề tài đều được xử lý trên tập dữ liệu con new_DF này. Biến phân loại là X1->X8 và biến liên tục Y1, Y Ta dùng lệnh: new_DF<- ENB2012_data[,c("X1","X2","X3","X4","X5","X6","X7","X8","Y1","Y2")] View(new_DF) Sau khi trích suất dữ liệu qua tệp con new_DF, thì ta nhấp vào “new_DF” ở cột data của bảng Environment để kiểm tra có trích xuất dữ liệu đủ theo yêu cầu đề bài. (2) Kiểm tra các dữ liệu có bị khuyết trong tập tin. Và phương án thay thế cho những dữ liệu khuyết này (nếu có). Ta dùng lệnh : apply(is.na(new_DF),2,which) Kết quả : Ta thấy không có dữ liệu nào bị khuyết

3. Làm rõ dữ liệu (Data visualization): (1) Lập bảng tính các giá trị thống kê mô tả bao gồm: trung bình, trung vị, độ lệch chuẩn, giá trị lớn nhất, giá trị nhỏ nhất cho các biến liên tục dưới dạng bảng: Ta dùng các lệnh sau : Min=c(min(new_DF$Y1),min(new_DF$Y2)) Max=c(max(new_DF$Y1),max(new_DF$Y2)) Mean=c(mean(new_DF$Y1),mean(new_DF$Y2)) Med=c(median(new_DF$Y1),median(new_DF$Y2))

Count_of_X2 = data.frame(table(new_DF$X2)) Count_of_X3 = data.frame(table(new_DF$X3))

Count_of_X4 = data.frame(table(new_DF$X4)) Count_of_X5 = data.frame(table(new_DF$X5)) Count_of_X6 = data.frame(table(new_DF$X6)) Count_of_X7 = data.frame(table(new_DF$X7)) Count_of_X8 = data.frame(table(new_DF$X8))

Nhận xét: Dựa trên đồ thị, ta nhận thấy công suất sưởi ấm cao nhất từ 10- 15 (265) công suất sưởi ấm càng cao từ 25 thì Frequence càng giảm đồ thị không đồng đều Ta dùng lệnh: Y2=new_DF$Y hist(Y2,main="Distribution graph of the variable Y2",label=T,col="pink") Nhận xét: Đồ thị phân phối của biến liên tục Y2 khá giống Y1 cao nhất Y2 từ 15- (198) Công suất sưởi ấm từ 20-30 thì tần số tang sau đó tần số giảm về 13. ➔Đồ thị không đồng đều (4) Hãy dùng hàm boxplot() vẽ phân phối của biến Y1, Y2 (chọn đại diện Y1) cho từng nhóm phân loại của biến X1 → X8(chọn đại diện X1,X3,X5) Vẽ biểu đồ Boxplot của biến Y1 cho biến X

Ta dùng lệnh: boxplot(Y1~X1,horizontal = TRUE,main="Distribution of variable Y1 for each classification group of variable X1",col="green") Vẽ biểu đồ Boxplot của biến Y1 cho biến X Ta dùng lệnh: X5=new_DF$X boxplot(Y1~X5,horizontal = TRUE,main="Distribution of variable Y1 for each classification group of variable X5",col="green")

(5) Dùng lệnh pairs() vẽ các phân phối của biến Y1, Y2 (chọn đại diện Y1)lần lượt theo các biến X1 → X8(chọn đại diện X1,X5,X7). Vẽ các phân phối của biến Y1 theo biến X Ta dùng lệnh: X1=new_DF$X F1=data.frame(Y1,X1) pairs(F1,pch=16)

Vẽ các phân phối của biến Y1 theo biến X Ta dùng lệnh: X5=new_DF$X F2=data.frame(Y1,X5) pairs(F2,pch=16)

4. Xây dựng các mô hình hồi quy tuyến tính (Fitting linear regression models) (1)Xét mô hình hồi quy tuyến tính bao gồm biến Y1, Y2 là biến phụ thuộc, và các biến X1 → X8 là các 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. Ta dùng các lệnh :

M1=lm(Y1+Y2~X1+X2+X3+X4+X5+X6+X7+X8,data=new_DF) summary(M1)

Cách đánh giá mô hình: Những dấu () cho ta biết ý nghĩa thống kê ( mức ý nghĩa ), ứng với () thì mức ý nghĩa là 0, (), thì mức ý nghĩa là 0,01, () thì mức ý nghĩa là 0,01 v..v tương tự cho các trường hợp còn lại Multiple R_Squared : hay trong Slide gọi là R 2 (hệ số R 2 ). Adjusted R_squared : hệ số R 2 hiệu chỉnh. Estimate: giá trị ước lượng của từng biến khi tăng lên 1 đơn vị thì sẽ ảnh hưởng đến giá nhà (price) Std.Error: sai số chuẩn (2) 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 khỏi mô hình tương ứng với mức tin cậy 5% và 1%? Giả thiết H0: Hệ số hồi quy không có ý nghĩa thống kê Giả thiết H1: Hệ số hồi quy có ý nghĩa thống kê

Ta dùng lệnh sau để xây dựng mô hình hồi quy tuyến tính M2 :

M2=lm(Y1~X1+X2+X3+X5+X7+X8,data=new_DF) summary(M2) Ta dung lệnh sau để xây dựng mô hình hồi quy tuyến tính M3: M3=lm(Y1~X1+X2+X3+X5+X7,data=new_DF) summary(M3)

  • Phân tích phương sai cho hai mô hình tuyến tính M1 và M..Ta dùng lệnh :

anova(M1,M2) Giả thiết H0: Hai mô hình M1 và M2 hiệu quả giống nhau. Giả thiết H1: Hai mô hình M1 và M2 hiệu quả khác nhau. Vì Pr(>F) = 0,8055 lớn hơn mức ý nghĩa 0,05 nên chưa bác bỏ giả thiết H0, tức 2 mô hình M1 và M2 hiệu quả như nhau. (1)

  • Phân tích phương sai cho hai mô hình tuyến tính M2 và M3.Ta dùng lệnh

anova(M2,M3) Giả thiết H0: Hai mô hình M2 và M3 hiệu quả giống nhau.