library(AER)
## Loading required package: car
## Loading required package: carData
## Loading required package: lmtest
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Loading required package: sandwich
## Loading required package: survival
library(DT)
library(DescTools)
##
## Attaching package: 'DescTools'
## The following object is masked from 'package:car':
##
## Recode
library(ggplot2)
library(epitools)
##
## Attaching package: 'epitools'
## The following object is masked from 'package:survival':
##
## ratetable
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.2 ✔ readr 2.1.4
## ✔ forcats 1.0.0 ✔ stringr 1.5.0
## ✔ lubridate 1.9.2 ✔ tibble 3.2.1
## ✔ purrr 1.0.1 ✔ tidyr 1.3.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ✖ dplyr::recode() masks car::recode()
## ✖ purrr::some() masks car::some()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(readxl)
Data_PTDLDT <- read_excel("/Users/lenhuquynh/Downloads/Data_PTDLDT.xlsx")
Bảng tần số
table(Data_PTDLDT$Gender)
##
## Female Male
## 79 156
a <- prop.table(table(Data_PTDLDT$Gender)) * 100
Đồ thị
pie(a, labels = paste(names(a), round(a, 2), "%"),
main = "Đồ thị tròn về tỷ lệ nam nữ")
Kết quả
Qua bảng tần số và đồ thị trên cho thấy trong bộ dữ liệu nghiên cứu số quan sát mang giới tính Nữ (Female) là 79 quan sát chiếm 33.62% và 156 quan sát còn lại là giới tính Nam (Male) chiếm 66.38%.
Bảng tần số
table(Data_PTDLDT$Department) %>% addmargins ()
##
## B.com Accounting and Finance B.com ISM
## 15 28
## BCA Commerce
## 132 60
## Sum
## 235
prop.table(table(Data_PTDLDT$Department)) * 100
##
## B.com Accounting and Finance B.com ISM
## 6.382979 11.914894
## BCA Commerce
## 56.170213 25.531915
Đồ thị
b <- as.data.frame(table(Data_PTDLDT$Department))
colnames(b) <- c("Ngành", "Count")
ggplot(b, aes(x = Ngành, y = Count, fill = Ngành)) +
geom_bar(stat = "identity") +
labs(title = "Biểu đồ thể hiện số lượng sinh viên theo các ngành học", x = "Các ngành học của sinh viên", y = "Số lượng") +
theme_minimal()
Kết quả
Trong tổng 235 sinh viên được khảo sát: Sinh viên theo ngành BCA (Quản trị thương mại) chiếm hơn một nửa với 56,17% (132 sinh viên) và sinh viên theo ngành Accounting and Finance (Kế toán và Tài chính) là ít nhất với 6,383% (15 sinh viên). Sinh viên theo ngành Commerce (Kinh doanh thương mại) chiếm 25,532% (60 sinh viên), còn lại 28 sinh viên theo ngành học ISM (Quản lý hệ thống thông tin) chiếm 11,915%.
Bảng tần số, thống kê mô tả
table(Data_PTDLDT$`12th Mark`)
##
## 45 47 48 49.5 50 51 52 53 54 55 57 58 59
## 2 1 2 1 11 1 1 2 3 8 4 2 1
## 60 61 61.3 61.33 61.6 61.67 62 62.6 63 63.3 63.66 64 64.8
## 24 3 1 1 1 1 3 1 4 1 1 6 1
## 65 65.3 65.5 66 67 67.5 68 68.1 68.3 69 69.7 70 71
## 12 1 1 2 3 1 3 1 1 6 1 24 2
## 72 72.8 73 73.3 73.8 74 75 76 76.77 77 78 79 79.5
## 3 1 4 1 1 3 16 3 1 2 4 4 1
## 80 81 82 83 83.5 84 85 86 87 88 89 90 91
## 13 2 1 1 2 1 8 4 1 4 1 5 1
## 92 94
## 1 1
summary (Data_PTDLDT$`12th Mark`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 45.00 60.00 69.00 68.78 76.00 94.00
Đồ thị
hist(Data_PTDLDT$`12th Mark`)
Kết quả
Kết quả của thống kê mô tả cho ta biết được số điểm lớp 12 mà sinh viên trong bộ dữ liệu đạt được trung bình là 68.8 điểm, số điểm cao nhất và thấp nhất mà sinh viên có thể đạt được lần lượt là 94 điểm và 45 điểm. Chủ yếu sinh viên có điểm lớp 12 trong khoảng từ 55 điểm tới 80 điểm là nhiều nhất. Từ 45 điểm tới dưới 55 điểm có số sinh viên đạt được thứ 2 và khoảng điểm ít sinh viên đạt được nhất là trên 80 điểm.
Thay đổi biến định lượng thành định tính
Data_PTDLDT$`college mark` <- cut(Data_PTDLDT$`college mark`, breaks = c(0, 60, 80, 100), labels = c("Low", "Medium", "High"))
c <- as.data.frame(table(Data_PTDLDT$`college mark`))
c
Bảng tần số
prop.table(table(Data_PTDLDT$`college mark`)) * 100
##
## Low Medium High
## 25.53191 53.61702 20.85106
Đồ thị
d <- (prop.table(table(Data_PTDLDT$`college mark`)) * 100)
pie(d, labels = paste(names(d), round(d, 2), "%"),
main = "Đồ thị tròn về tỷ lệ điểm theo levels")
Kết quả
Với bộ dữ liệu nghiên cứu, tỷ lệ sinh viên đạt điểm đại học ở mức trung bình (60-80) chiếm đa số với 53,62%. Tỷ lệ sinh viên đạt điểm đại học ở mức thấp (0-60) chiếm 25,53% nhiều hơn tỷ lệ sinh viên đạt điểm đại học ở mức cao (80-100) chiếm 20.85%.