Dữ liệu student_performace_data.csv
HSSV=read.csv("student_performance_data.csv",header = T)
str(HSSV)
## 'data.frame': 500 obs. of 9 variables:
## $ StudentID : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Gender : chr "Male" "Female" "Male" "Male" ...
## $ Age : int 24 22 22 24 18 20 19 18 19 24 ...
## $ StudyHoursPerWeek : int 37 37 10 10 19 17 21 14 9 1 ...
## $ AttendanceRate : num 90.8 74.9 53.4 70.3 74.9 ...
## $ GPA : num 3.47 2.32 2.38 3.46 2.31 2.47 3.93 2.51 3.32 3.96 ...
## $ Major : chr "Arts" "Education" "Business" "Science" ...
## $ PartTimeJob : chr "Yes" "No" "No" "Yes" ...
## $ ExtraCurricularActivities: chr "No" "No" "No" "No" ...
head(HSSV)
## StudentID Gender Age StudyHoursPerWeek AttendanceRate GPA Major
## 1 1 Male 24 37 90.75 3.47 Arts
## 2 2 Female 22 37 74.90 2.32 Education
## 3 3 Male 22 10 53.36 2.38 Business
## 4 4 Male 24 10 70.26 3.46 Science
## 5 5 Male 18 19 74.87 2.31 Education
## 6 6 Female 20 17 86.01 2.47 Business
## PartTimeJob ExtraCurricularActivities
## 1 Yes No
## 2 No No
## 3 No No
## 4 Yes No
## 5 Yes No
## 6 Yes No
View(HSSV)
table(HSSV$Age)
##
## 18 19 20 21 22 23 24
## 75 78 57 73 88 59 70
hist(HSSV$Age, breaks = seq (18,24,1), col = 'lightblue', main='Bieu do phan phoi tan so cua tuoi',ylab='Tan so (don vi: tuoi)',xlab='Tuoi')
#Nhận xét: Phân phối dữ liệu về Tuổi của sinh viên có xu hướng tập trung nhiều ở bên trái và nhiều nhất ở vùng dữ liệu 18 đến 19 tuổi. Đây là dữ liệu lệch phải.
Age_group <- cut(HSSV$Age, breaks = seq(18, 25, 1), right = FALSE)
table(Age_group)
## Age_group
## [18,19) [19,20) [20,21) [21,22) [22,23) [23,24) [24,25)
## 75 78 57 73 88 59 70
#Nhận xét: Số lượng phân bố không đều, sinh viên chủ yếu tập trung vào khoảng 18–23 tuổi, với số lượng tương đối đồng đều nhưng có đỉnh ở 22 tuổi.
table(HSSV$GPA)
##
## 2 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.1 2.11 2.12 2.13 2.14 2.15
## 3 1 2 3 3 2 1 1 1 2 2 2 1 2 4 2
## 2.16 2.17 2.18 2.19 2.2 2.21 2.22 2.23 2.24 2.25 2.27 2.28 2.3 2.31 2.32 2.33
## 1 2 4 3 1 4 5 2 4 4 2 4 5 4 5 3
## 2.34 2.35 2.36 2.37 2.38 2.39 2.4 2.41 2.42 2.43 2.44 2.45 2.46 2.47 2.48 2.49
## 3 3 5 2 4 3 1 1 2 1 2 4 4 4 1 4
## 2.5 2.51 2.52 2.53 2.54 2.55 2.56 2.58 2.59 2.6 2.62 2.63 2.64 2.65 2.66 2.67
## 1 6 2 4 2 2 4 1 3 2 2 3 5 2 1 2
## 2.68 2.69 2.7 2.71 2.72 2.73 2.74 2.75 2.76 2.77 2.78 2.79 2.8 2.81 2.82 2.83
## 3 2 1 2 1 3 1 5 4 5 5 2 3 1 2 1
## 2.84 2.85 2.86 2.87 2.88 2.89 2.9 2.91 2.92 2.94 2.95 2.96 2.97 2.98 2.99 3
## 1 4 2 1 2 5 2 1 1 1 4 5 3 1 2 4
## 3.01 3.02 3.03 3.04 3.05 3.06 3.07 3.08 3.09 3.1 3.11 3.12 3.13 3.15 3.16 3.17
## 2 3 2 3 5 2 1 4 2 4 1 2 3 5 3 1
## 3.19 3.2 3.21 3.22 3.23 3.24 3.26 3.27 3.28 3.29 3.3 3.31 3.32 3.33 3.34 3.35
## 6 4 4 3 5 3 4 3 3 5 3 3 4 4 5 3
## 3.36 3.37 3.38 3.41 3.43 3.44 3.45 3.46 3.47 3.48 3.49 3.5 3.51 3.52 3.53 3.54
## 3 1 2 1 1 2 3 3 2 2 3 3 4 3 2 3
## 3.55 3.56 3.57 3.58 3.59 3.6 3.62 3.63 3.64 3.65 3.66 3.67 3.68 3.69 3.7 3.72
## 2 3 3 3 3 2 4 3 4 5 4 2 2 1 4 2
## 3.73 3.74 3.75 3.76 3.78 3.79 3.8 3.81 3.83 3.84 3.85 3.86 3.87 3.88 3.89 3.9
## 4 2 4 5 1 2 3 2 1 3 1 3 2 3 1 1
## 3.91 3.92 3.93 3.94 3.95 3.96 3.98 3.99
## 4 2 3 1 3 3 3 2
boxplot(HSSV$GPA,horizontal=T,col='pink',main='Bieu do hop va rau cua GPA', xlab='Diem trung binh tich luy')
#Nhận xét: Phân phối dữ liệu Điểm trung bình tích lũy của sinh viên có phân phối đều, đối xứng.
GPA_group <- cut(HSSV$GPA, breaks=seq(0, 4, by=0.5), right=FALSE)
table(GPA_group)
## GPA_group
## [0,0.5) [0.5,1) [1,1.5) [1.5,2) [2,2.5) [2.5,3) [3,3.5) [3.5,4)
## 0 0 0 0 129 118 132 121
#Nhận xét: Nếu phần lớn sinh viên rơi vào khoảng [2.0,2.5), [2.5,3.0) và [3.0,3.5), tức là điểm trung bình tập trung quanh 2.5–3.5. Điều này cho thấy phần lớn sinh viên có GPA ở mức khá và không quá thấp.
table(HSSV$Gender)
##
## Female Male
## 256 244
pie(table(HSSV$Gender),col=rainbow(2),labels=c('Female','Male'),main='Bieu do bien Gender')
#Nhận xét: Nhìn vào biểu đồ ta có thể thấy lượng sinh viên nữ giới chiếm nhiều hơn lượng sinh viên nam giới, tuy nhiên sự cách biệt là không quá lớn
table(HSSV$Major)
##
## Arts Business Education Engineering Science
## 100 114 97 109 80
barplot(table(HSSV$Major),names.arg=c('Art','Education','Business',' Science','Engineering'), col=rainbow(5) ,main='Bieu do bien Major')
#Nhận xét: Nhìn vào biểu đồ thanh của biến Major, ta thấy cột tần số của 5 cột khá đều, gần bằng nhau. Trong đó cột Business cao nhất trong 4 cột ở trên, tức là số lượng sinh viên học chuyên ngành Business chiếm tỉ lệ nhiều nhất trong bảng số liệu, tiếp theo sau đó là Engineering ở vị trí thứ 2, theo sau là Arts, Education và cuối cùng là Science với tỉ lệ thấp nhất trong bảng dữ liệu.
mean(HSSV$Age)
## [1] 20.956
#Nhận xét: Trung bình: Cho biết độ tuổi trung bình của sinh viên là 20.956
median(HSSV$Age)
## [1] 21
#Nhận xét: Trung vị: Cho biết 50% số sinh viên có độ tuổi không quá 22
which(table(HSSV$Age)==max(table(HSSV$Age)))
## 22
## 5
#Nhận xét: Mode: Độ tuổi xuất hiện nhiều nhất là 22, nằm ở vị trí thứ 5 trên bảng tần số
range(HSSV$Age)
## [1] 18 24
#Nhận xét: Khoảng biến thiên về độ tuổi sinh viên là từ 18 đến 24
var(HSSV$Age)
## [1] 4.002068
#Nhận xét: Phương sai: Độ biến động về độ tuổi sinh viên là 4.002068
sd(HSSV$Age)
## [1] 2.000517
#Nhận xét: Độ lệch chuẩn : Độ phân tán độ tuổi của HSSV so với độ tuổi trung bình của HSSV là 2.000517
quantile(HSSV$Age)
## 0% 25% 50% 75% 100%
## 18 19 21 23 24
#Nhận xét: Tứ phân vị:
# Tứ phân vị thứ 1: Cho biết 25% số HSSV có độ tuổi không vượt quá 19
# Tứ phân vị thứ 2: Cho biết 50% số HSSV có độ tuổi không vượt quá 21
# Tứ phân vị thứ 3: Cho biết 75% số HSSV có độ tuổi không vượt quá 24
mean(HSSV$GPA)
## [1] 2.98516
#Nhận xét: Điểm trung bình tích lũy (GPA) của sinh viên là 2.98516 điểm
median(HSSV$GPA)
## [1] 3
#Nhận xét: Cho biết 50% sinh viên có Điểm trung bình tích lũy (GPA) không vượt quá 3 điểm
which(table(HSSV$GPA)==max(table(HSSV$GPA)))
## 2.51 3.19
## 50 113
#Nhận xét: Điểm trung bình tích lũy (GPA) mà sinh viên đạt được nhiều nhất là 2.51 điểm và 3.19 điểm.
range(HSSV$GPA)
## [1] 2.00 3.99
#Nhận xét: Khoảng biến thiên về Điểm trung bình tích lũy của sinh viên là từ 2.00 đến 3.99
var(HSSV$GPA)
## [1] 0.3176679
#Nhận xét: Độ biến động về Điểm trung bình tích lũy (GPA) của sinh viên là 0.3176679 điểm
sd(HSSV$GPA)
## [1] 0.5636204
#Nhận xét: Độ phân tán về Điểm trung bình tích lũy của sinh viên so với Điểm trung bình tích lũy trung bình là 0.5636204
quantile(HSSV$GPA)
## 0% 25% 50% 75% 100%
## 2.0000 2.4875 3.0000 3.4800 3.9900
#Nhận xét:
# Tứ phân vị thứ 1: Cho biết 25% số sinh viên có Điểm trung bình tích lũy (GPA) không vượt quá 2.4875 điểm.
# Tứ phân vị thứ 2: Cho biết 50% số sinh viên có Điểm trung bình tích lũy (GPA) không vượt quá 3 điểm.
# Tứ phân vị thứ 3: Cho biết 75% số sinh viên có Điểm trung bình tích lũy (GPA) không vượt quá 3.48 điểm.
which(table(HSSV$Gender)==max(table(HSSV$Gender)))
## Female
## 1
#Nhận xét: Các sinh viên có giới tính xuất hiện nhiều nhất là Female(Nữ), nằm ở vị trí thứ 1 trên bảng tần số
which(table(HSSV$Major)==max(table(HSSV$Major)))
## Business
## 2
#Nhận xét: Các sinh viên xuất hiện nhiều nhất là thuộc ngành Business(Kinh doanh), nằm ở vị trí thứ 2 trên bảng tần số
mean(HSSV$Age)
## [1] 20.956
#Nhận xét: Ước lượng điểm cho số tuổi trung bình của học sinh là 20.956 tuổi
sum(HSSV$GPA>3.0)/length(HSSV$GPA)
## [1] 0.498
#Nhận xét: Ước lượng điểm cho tỷ lệ học sinh có điểm trung bình(GPA) lớn hơn 3.0 theo dữ liệu điều tra là 49.8%
var(HSSV$Age)
## [1] 4.002068
#Nhận xét: Ước lượng điểm cho phương sai của Tuổi (Age) là 4.002068 tuổi
t.test(HSSV$GPA,conf.level=0.9)
##
## One Sample t-test
##
## data: HSSV$GPA
## t = 118.43, df = 499, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 90 percent confidence interval:
## 2.943623 3.026697
## sample estimates:
## mean of x
## 2.98516
#Nhận xét: Khoảng tin cậy 90% cho Điểm trung bình (GPA) của sinh viên là [2.943623 ; 3.026697]
sum(HSSV$GPA>3)
## [1] 249
length(HSSV$GPA)
## [1] 500
prop.test(249,500,conf.level = 0.9,correct = FALSE)
##
## 1-sample proportions test without continuity correction
##
## data: 249 out of 500, null probability 0.5
## X-squared = 0.008, df = 1, p-value = 0.9287
## alternative hypothesis: true p is not equal to 0.5
## 90 percent confidence interval:
## 0.4613301 0.5346914
## sample estimates:
## p
## 0.498
#Nhận xét: p̂ = 0.498, tức khoảng 49.8% sinh viên có GPA >3.0. Với 90% độ tin cậy, tỉ lệ sinh viên GPA>3.0 trong toàn bộ sinh viên nằm trong khoảng 46.1% -53.5%
#Gọi p là tỷ lệ sinh viên nữ có điểm trung bình tích lũy(GPA)trên 3.5
#H0: p<=0.5
#H1: P>0.5
length(HSSV$GPA)
## [1] 500
sum(HSSV$GPA>3.5)
## [1] 118
prop.test(118,500,p=0.5,alt="g",correct = FALSE)
##
## 1-sample proportions test without continuity correction
##
## data: 118 out of 500, null probability 0.5
## X-squared = 139.39, df = 1, p-value = 1
## alternative hypothesis: true p is greater than 0.5
## 95 percent confidence interval:
## 0.2062374 1.0000000
## sample estimates:
## p
## 0.236
#p-value = 1>0.5 => Không bác bỏ H0
#kết luận: Không có cơ sở cho rằng tỷ lệ sinh viên có điểm trung bình tích lũy (GPA) trên 3.5 có hơn 50%
#Gọi m là số học sinh nữ có điểm trung bình tích lũy (GPA) trên 2.5
#H0: p<=2.5
#H1: p>2.5
t.test(HSSV$GPA,mu=2.5,alt="g")
##
## One Sample t-test
##
## data: HSSV$GPA
## t = 19.248, df = 499, p-value < 2.2e-16
## alternative hypothesis: true mean is greater than 2.5
## 95 percent confidence interval:
## 2.943623 Inf
## sample estimates:
## mean of x
## 2.98516
# p-value<2.2e-16 <0.05 => Bác bỏ H0
#Kết luận: Tại mức 5%, điểm trung bình tích lũy (GPA) của sinh viên trên 2.5
#Gọi m1, m2 lần lượt là điểm trung bình tích lũy (GPA) của sinh viên nam và sinh viên nữ
#H0: m1-m2<=0
#H1: m1-m2>0
t.test(subset(HSSV$GPA,HSSV$Gender=="Male"),subset(HSSV$GPA,HSSV$Gender=="Female"),mu=0,alt="g",paired = FALSE,var.equal = TRUE)
##
## Two Sample t-test
##
## data: subset(HSSV$GPA, HSSV$Gender == "Male") and subset(HSSV$GPA, HSSV$Gender == "Female")
## t = -0.41381, df = 498, p-value = 0.6604
## alternative hypothesis: true difference in means is greater than 0
## 95 percent confidence interval:
## -0.1040518 Inf
## sample estimates:
## mean of x mean of y
## 2.974467 2.995352
#p-value = 0.6604>0.05 => Chấp nhận H0
#Kết luận: Điểm trung bình tích lũy (GPA) của sinh nam không cao hơn điểm trung bình tích lũy (GPA) của sinh viên nữ
#Gọi p1,p2 lần lượt là tỷ lệ GPA >3.5 của sinh viên Nam và Nữ
#H0: p1<=p2
#H1: p1>p2
nrow(subset(HSSV,HSSV$Gender=="Male"&HSSV$GPA>3.5))
## [1] 59
nrow(subset(HSSV,HSSV$Gender=="Female"&HSSV$GPA>3.5))
## [1] 59
table(HSSV$Gender)
##
## Female Male
## 256 244
prop.test(c(59,59),c(244,256),alt="g",correct=F)
##
## 2-sample test for equality of proportions without continuity correction
##
## data: c(59, 59) out of c(244, 256)
## X-squared = 0.089015, df = 1, p-value = 0.3827
## alternative hypothesis: greater
## 95 percent confidence interval:
## -0.05117327 1.00000000
## sample estimates:
## prop 1 prop 2
## 0.2418033 0.2304688
#p-value = 0.3827>0.05 => Không bác bỏ H0
#Kết luận: Tại mức ý nghĩa 5% không có cơ sở cho rằng tỷ lệ sinh viên Nam có GPA > 3.5 có cao hơn tỷ lệ sinh viên Nữ có GPA > 3.5
#Gọi m1,m2 lần lượt là phương sai GPA cùa sinh viên nam và nữ
#Ho: m1=m2
#H1:m1#m2
x<-subset(HSSV,HSSV$Gender=="Male")$GPA
y<-subset(HSSV,HSSV$Gender=="Female")$GPA
var.test(x,y,alt="t",correct=F)
##
## F test to compare two variances
##
## data: x and y
## F = 1.0644, num df = 243, denom df = 255, p-value = 0.622
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
## 0.8300644 1.3659687
## sample estimates:
## ratio of variances
## 1.064417
#p-value = 0.622> 0.05 => Không bác bỏ H0
#Kết luận: Tại mức ý nghĩa 5%, chưa có đủ bằng chứng thống kê để bác bỏ giả thuyết phương sai GPA của sinh viên Nam và Nữ là bằng nhau.
#Gọi m1,m2,m3,m4,m5 lần lượt là GPA trung bình của sinh viên các nghành tương ứng Arts, Business, Education, Engineering, Science.
#H0:m1=m2=m3=m4=m5
#H1: tồn tại i # j sao cho mi#mj
anova(lm(HSSV$GPA~HSSV$Major))
## Analysis of Variance Table
##
## Response: HSSV$GPA
## Df Sum Sq Mean Sq F value Pr(>F)
## HSSV$Major 4 0.625 0.15618 0.4896 0.7434
## Residuals 495 157.892 0.31897
#P value(0.7437)> p ý nghĩa(0.05) => Không bác bỏ H0
#Kết luận: Tại mức ý nghĩa 5%, không có cơ sở cho rằng GPA trung bình các nghành học là khác nhau.
TukeyHSD(aov(HSSV$GPA~HSSV$Major))
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = HSSV$GPA ~ HSSV$Major)
##
## $`HSSV$Major`
## diff lwr upr p adj
## Business-Arts 0.02886491 -0.1829919 0.2407218 0.9958732
## Education-Arts -0.06823402 -0.2885953 0.1521273 0.9154310
## Engineering-Arts -0.03425596 -0.2483714 0.1798594 0.9923437
## Science-Arts -0.04885000 -0.2807919 0.1830919 0.9784500
## Education-Business -0.09709893 -0.3106939 0.1164960 0.7251343
## Engineering-Business -0.06312088 -0.2702660 0.1440243 0.9198821
## Science-Business -0.07771491 -0.3032382 0.1478084 0.8797421
## Engineering-Education 0.03397806 -0.1818573 0.2498134 0.9928022
## Science-Education 0.01938402 -0.2141466 0.2529146 0.9994078
## Science-Engineering -0.01459404 -0.2422404 0.2130523 0.9997872
#TukeyHSD cho kết quả:
#Tất cả các cặp Major đều có p value rất lớn (> 0.7 đến 0.999)
#Tất cả khoảng tin cậy (lwr–upr) đều chứa số 0
#Kết luận Tukey: Không có Major nào có GPA cao hơn hoặc thấp hơn một cách đáng kể so với các ngành khác
#H0: Ngành học độc lập với giới tính
#H1: Ngành học không độc lập với giới tính
table(HSSV$Gender,HSSV$Major)
##
## Arts Business Education Engineering Science
## Female 55 57 41 60 43
## Male 45 57 56 49 37
chisq.test(HSSV$Gender,HSSV$Major)
##
## Pearson's Chi-squared test
##
## data: HSSV$Gender and HSSV$Major
## X-squared = 4.5943, df = 4, p-value = 0.3315
# p-value(0.3315)> p ý nghĩa(0.05) => Không báC bỏ H0
#Kết luận: Ngành học và giới tính được xem là độc lập với nhau.
#H0: Phân phối sinh viên theo ngành học phù hợp với phân phối lý thuyết (mỗi ngành chiếm 20%).
#H1: Phân phối sinh viên theo ngành học không phù hợp với phân phối lý thuyết
Sosinhvien<-c(100,114,97,109,80)
chisq.test(Sosinhvien,p=rep(0.2,5))
##
## Chi-squared test for given probabilities
##
## data: Sosinhvien
## X-squared = 6.86, df = 4, p-value = 0.1435
#p-value (0.1435)> p ý nghĩa (0.05) => Không bác bỏ H0
#Kết luận: Chưa có đủ bằng chứng thống kê để kết luận rằng phân bố số sinh viên giữa các ngành học khác phân bố đều.
#Gọi md là trung vị số tuổi của sinh viên trong trường
#H0: md<=20
#H1: md>20
wilcox.test(HSSV$Age,mu = 20,alt = "g")
##
## Wilcoxon signed rank test with continuity correction
##
## data: HSSV$Age
## V = 74943, p-value < 2.2e-16
## alternative hypothesis: true location is greater than 20
# p-value < 2.2e-16 < 0.05 =>bác bỏ giả thuyết H0.
# Kết luận: Có đủ bằng chứng thống kê để kết luận rằng trung vị tuổi của sinh viên trong trường lớn hơn 20.