Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 122

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SÀI GÒN




TIỂU LUẬN
Đề tài:
Phân tích ảnh hưởng của một số yếu tố đến kết quả học tập của sinh
viên hệ CLC, khóa 2021, ngành Công nghệ Thông tin, Trường ĐH Sài
Gòn
Môn học:
PHÂN TÍCH DỮ LIỆU

Lớp : DCT121C5
Giảng viên : PGS. TS. Nguyễn Tuấn Đăng
MSSV - Họ tên thành viên : 3121411162 - La Hiểu Phong
3121411084 - Nguyễn Công Huy
3121411228 - Nguyễn Long Vũ
3121411122 - Võ Khánh Linh
Năm học : 2023-2024 / HK2

Thành phố Hồ Chí Minh, tháng 05 năm 2024.



LỜI CẢM ƠN

Đầu tiên, chúng em xin gửi lời cảm ơn chân thành đến Khoa Công nghệ
thông tin, Trường đại học Sài Gòn đã tạo điều kiện thuận lợi cho chúng em học tập
và hoàn thành đồ án môn học này. Đặc biệt, chúng em xin bày tỏ lòng biết ơn sâu
sắc đến thầy Nguyễn Tuấn Đăng đã dày công truyền đạt kiến thức cho chúng em.
Chúng em đã cố gắng vận dụng những kiến thức đã học được trong học kỳ
qua để hoàn thành đồ án này. Nhưng do kiến thức hạn chế và không có nhiều kinh
nghiệm thực tiễn nên khó tránh khỏi những thiếu sót trong quá trình làm bài và
trình bày. Chúng em rất mong nhận được sự góp ý của thầy để bài thu hoạch của
chúng em được hoàn thiện hơn.
Chúng em xin chân thành cảm ơn!
NHẬN XÉT, ĐÁNH GIÁ
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
Điểm:................................
(Bằng chữ: ..........................................................................)
MỤC LỤC
I. Giới thiệu về dự án: Phân Tích Dữ Liệu Trên PySpark.......................................................1
II. Cơ sở lý thuyết........................................................................................................................2
1. Python..............................................................................................................................................2
2. PySpark............................................................................................................................................2
III. Nội dung đã thực hiện........................................................................................................3
1. Thu thập dữ liệu..............................................................................................................................3
1.1. Xác Định Mục Tiêu Thu Thập Dữ Liệu:.................................................................................................3
1.2. Xây Dựng Biểu Mẫu Hoặc Phiếu Khảo Sát:..........................................................................................3
1.3. Phân Phối Biểu Mẫu hoặc Phiếu Khảo Sát:............................................................................................3
1.4. Thu Thập Dữ Liệu:.................................................................................................................................3
1.5. Kiểm Tra và Xử Lý Dữ Liệu:..................................................................................................................3
1.6. Lưu Trữ Dữ Liệu:....................................................................................................................................4
1.7. Sử Dụng Dữ Liệu Cho Phân Tích:..........................................................................................................4
1.8. Tạo Báo Cáo và Phân Tích:....................................................................................................................4
1.9. Chia Sẻ Kết Quả:....................................................................................................................................4
2. Xây dựng dataset:...........................................................................................................................5
3. Phân tích và xử lí dữ liệu................................................................................................................6
3.1. ResultofFirstYear....................................................................................................................................6
3.2. ResultofSecondYear................................................................................................................................8
3.3. DistancetoSchool..................................................................................................................................10
3.4. DistancetoSchool..................................................................................................................................12
3.5. MonthyIncome......................................................................................................................................15
3.6. NumberofSiblings.................................................................................................................................18
3.7. NumberofCloseFriends.........................................................................................................................21
3.8. AVGResult............................................................................................................................................24
4. Trực quan hóa dữ liệu..................................................................................................................26
4.1. Khởi tạo.................................................................................................................................................26
4.1.1. Khai báo thư viện.............................................................................................................................26
4.1.2. Đọc file CSV....................................................................................................................................26
4.1.3. In dữ liệu và kiểu dữ liệu.................................................................................................................26
4.1.4. Kiểm tra số lượng giá trị null...........................................................................................................27
4.1.5. Kiểm tra dòng trùng lặp...................................................................................................................27
4.1.6. Tóm tắt thống kê cho DataFrame (numeric và non-numeric)..........................................................28
4.2. KDE với mật độ của từng biến trước và sau khi xử lí dữ liệu (-0.5 < Skewness < 0.5).......................30
4.2.1. ResultofFirstYear.............................................................................................................................30
4.2.2. ResultofSecondYear.........................................................................................................................31
4.2.3. DistancetoSchool.............................................................................................................................32
4.2.4. OvertimeHours.................................................................................................................................33
4.2.5. MonthyIncome.................................................................................................................................35
4.2.6. NumberofSiblings............................................................................................................................37
4.2.7. NumberofCloseFriends....................................................................................................................39
4.2.8. AVGResult.......................................................................................................................................41
4.3. Vẽ chi tiết các biểu đồ + nhận xét.........................................................................................................42
4.3.1. Biểu đồ cột (đôi): "Result of First Year" & "Result of Second Year" of All Students.....................42
4.3.2. Biểu đồ cột (so sánh): Overview of Scores for "Result of First Year" & "Result of Second Year".44
4.3.3. Biểu đồ cột (so sánh - có đường "Mean"): Scores for "Result of First Year" & "Result of Second
Year" 46
4.3.4. Biểu đồ cột (so sánh): High/ Medium/ Low Scores for "Result of First Year" & "Result of Second
Year" 48
4.3.5. Biểu đồ scatter (so sánh): Scatter Plot of "Distance to School" vs "Result of First Year" | "Result of
Second Year"..................................................................................................................................................51
4.3.6. Biểu đồ box (so sánh): Box Plot of Students with "Overtime Hours" | "Monthly Income"............53
4.3.7. Biểu đồ box (so sánh): Violin Plot of Students with "Overtime Hours" | "Monthly Income".........56
4.3.8. Biểu đồ scatter (so sánh): High/ Medium/ Low Scores in "Result of First Year" & "Result of
Second Year" with "NumberofCloseFriends".................................................................................................59
4.3.9. Biểu đồ tròn: Pie Chart of Number of Siblings................................................................................62
4.3.10. Biểu đồ đường: Line Chart of Number of Siblings.....................................................................64
4.3.11. ** Biểu đồ đường: Line Chart of Number of Siblings (Excluding 4 & 6)..................................65
4.3.12. Biểu đồ hist: Frequency Distribution of AVGResult...................................................................67
4.3.13. Biểu đồ joint: Joint Plot of All Students and AVGResult............................................................68
4.3.14. Biểu đồ cột: Bar Plot of "AVGResult"........................................................................................70
4.3.15. ** Biểu đồ cột: Bar Plot of "AVGResult" (After Dropping Rows with AVGResult < 6.5)........72
4.3.16. Biểu đồ heatmap: Heatmap of All Student Data Information.....................................................74
4.3.17. Biểu đồ pair: Pairplot of All Student Data Information..............................................................77
4.4. Kỹ thuật hồi quy — Fitness Prediction.................................................................................................80
Sử dụng "train_test_split" từ "sklearn.model_selection" để chia dữ liệu thành tập huấn luyện và tập kiểm tra,
sau đó sử dụng LinearRegression từ "sklearn.linear_model" để thực hiện hồi quy tuyến tính...........................80
4.4.1. Khai báo các thư viện cần thiết........................................................................................................80
4.4.2. Hồi quy tuyến tính............................................................................................................................80
4.4.3. Hồi quy logistic................................................................................................................................80
4.4.4. Trình phân loại cây quyết định.........................................................................................................81
5. Nhận xét + Kết luận......................................................................................................................82
IV. Tài liệu tham khảo................................................................................................................83
V. Trình bày toàn bộ code + các hình vẽ (Phụ lục).................................................................84
DANH MỤC HÌNH ẢNH
Biểu đồ KDE: KDE Plot of Result of First Year..........................................................................................30
Biểu đồ KDE: KDE Plot of Result of Second Year......................................................................................31
Biểu đồ KDE: KDE Plot of Distance to School..........................................................................................32
Biểu đồ KDE: KDE Plot of Overtime Hours...............................................................................................33
Biểu đồ KDE: KDE Plot of Overtime Hours (After Removing Outliers)....................................................34
Biểu đồ KDE: KDE Plot of Monthy Income................................................................................................35
Biểu đồ KDE: KDE Plot of Monthy Income (After Removing Outliers).....................................................36
Biểu đồ KDE: KDE Plot of Number of Siblings..........................................................................................37
Biểu đồ KDE: KDE Plot of Number of Siblings (After Removing Outliers)...............................................38
Biểu đồ KDE: KDE Plot of Number of Close Friends................................................................................39
Biểu đồ KDE: KDE Plot of Monthy of Close Friends (After Removing Outliers)......................................40
Biểu đồ KDE: KDE Plot of AVG Result......................................................................................................41
Biểu đồ cột (đôi): "Result of First Year" & "Result of Second Year" of All Students..................................43
Biểu đồ cột (so sánh): Overview of Scores for "Result of First Year" & "Result of Second Year".............44
Biểu đồ cột (so sánh - có đường "Mean"): Scores for "Result of First Year" & "Result of Second Year". .47
Biểu đồ cột (so sánh): High/ Medium/ Low Scores for "Result of First Year" & "Result of Second Year".49
Biểu đồ scatter (so sánh): Scatter Plot of "Distance to School" vs "Result of First Year" | "Result of
Second Year"................................................................................................................................................51
Biểu đồ box (so sánh): Box Plot of Students with "Overtime Hours" | "Monthly Income".........................55
Biểu đồ violin (so sánh): Violin Plot of Students with "Overtime Hours" | "Monthly Income"..................58
Biểu đồ scatter (so sánh): High/ Medium/ Low Scores in "Result of First Year" & "Result of Second Year"
with "NumberofCloseFriends"....................................................................................................................60
Biểu đồ tròn: Pie Chart of Number of Siblings...........................................................................................63
Biểu đồ tròn: Pie Chart of Number of Siblings...........................................................................................64
** Biểu đồ đường: Line Chart of Number of Siblings (Excluding 4 & 6)...................................................65
Biểu đồ hist: Frequency Distribution of AVGResult...................................................................................67
Biểu đồ joint: Joint Plot of All Students and AVGResult............................................................................68
Biểu đồ cột: Bar Plot of "AVGResult".........................................................................................................70
** Biểu đồ cột: Bar Plot of "AVGResult" (After Dropping Rows with AVGResult < 6.5)..........................72
Biểu đồ heatmap: Heatmap of All Student Data Information.....................................................................75
Biểu đồ pair: Pairplot of All Student Data Information..............................................................................78
Phân tích dữ liệu
I. Giới thiệu về dự án: Phân Tích Dữ Liệu Trên PySpark
Đến với dự án phân tích dữ liệu đỉnh cao trên nền tảng PySpark - một hành trình khám
phá sức mạnh của dữ liệu lớn và sự linh hoạt của Python! Dự án này đặc biệt nhấn mạnh
vào việc áp dụng công nghệ PySpark - một framework phân tán và mạnh mẽ, để phân
tích ảnh hưởng của các yếu tố đến kết quả học tập của sinh viên hệ Chất lượng cao, khóa
2021, ngành Công nghệ Thông tin tại Trường Đại học Sài Gòn.

 Khám Phá Sức Mạnh của PySpark:


PySpark không chỉ là một công cụ, mà là một cánh cửa mở ra thế giới của dữ liệu lớn.
Với khả năng xử lý dữ liệu phân tán và tính toán song song, PySpark là ngôn ngữ lý
tưởng cho việc xây dựng hệ thống phân tích dữ liệu mạnh mẽ và hiệu quả.

 Mục Tiêu của Dự Án:


Dự án này nhằm mục đích nghiên cứu sâu sự ảnh hưởng của các yếu tố như thời gian
học, hoạt động ngoại khóa, môi trường học tập, và nhiều yếu tố khác đối với kết quả học
tập của sinh viên. Bằng cách sử dụng PySpark, chúng tôi sẽ khai thác một cách toàn diện
các dữ liệu được thu thập từ hệ thống học tập của trường, từ đó đưa ra các phân tích sâu
sắc và dự đoán chính xác về hiệu suất học tập.

 Lợi Ích của Dự Án:


Hiểu rõ hơn về những yếu tố nào có ảnh hưởng đáng kể đến kết quả học tập của sinh
viên.
Xây dựng mô hình dự đoán để giúp cải thiện hiệu suất học tập và hỗ trợ quyết định trong
quản lý giáo dục.
Phát triển kỹ năng và kiến thức về phân tích dữ liệu phân tán và machine learning trên
PySpark.

 Vai Trò của PySpark:


PySpark không chỉ là công cụ, mà còn là người bạn đồng hành đáng tin cậy trong hành
trình khám phá dữ liệu. Tận dụng sức mạnh của PySpark, chúng tôi sẽ xây dựng các quy
trình phân tích dữ liệu tự động và mạnh mẽ, từ việc tiền xử lý dữ liệu đến xây dựng mô
hình dự đoán.

Dự án phân tích dữ liệu trên PySpark không chỉ là một dự án nghiên cứu, mà còn là một
hành trình đầy thách thức và hứa hẹn. Chúng em rất mong được chia sẻ những khám
phá mới mẻ và những kết quả đáng kinh ngạc từ dự án này đến với thầy. Hãy cùng nhau
khám phá và tạo ra những giá trị mới từ dữ liệu lớn và PySpark!

1
II. Cơ sở lý thuyết
Để có thể phân tích dữ liệu trên PySpark, người dùng cần phải nắm vững các kiến
thức cơ bản về lập trình Python, các khái niệm về hệ thống phân tán và xử lý dữ
liệu trên PySpark, cùng với các kỹ thuật phân tích dữ liệu.

1. Python
Người dùng cần nắm vững các kiến thức cơ bản về cú pháp, kiểu dữ liệu, biến,
toán tử, cấu trúc rẽ nhánh và lặp, hàm và module. Các khái niệm này được giải
thích chi tiết trong sách "Python for Data Science Handbook" của tác giả Jake
VanderPlas.
(https://jakevdp.github.io/PythonDataScienceHandbook/ )

2. PySpark
Để hiểu rõ hơn về PySpark, người dùng cần nắm vững các khái niệm cơ bản về hệ
thống phân tán và xử lý dữ liệu trên PySpark, bao gồm:

 Apache Spark: một framework xử lý dữ liệu phân tán mở rộng và mạnh mẽ.
 RDD (Resilient Distributed Datasets): một cấu trúc dữ liệu cơ bản trong
PySpark, được sử dụng để lưu trữ và xử lý dữ liệu phân tán.
 Transformations và Actions: các thao tác trên RDD, được sử dụng để thực
hiện các tính toán phức tạp trên dữ liệu phân tán.
 Spark SQL: một module trong PySpark, cho phép thực hiện truy vấn dữ liệu
bằng SQL trên RDD.
 DataFrame: một cấu trúc dữ liệu trong PySpark, được sử dụng để lưu trữ và
xử lý dữ liệu dưới dạng bảng. Các khái niệm này được giải thích chi tiết
trong sách "Learning PySpark" của tác giả Tomasz Drabas và Denny Lee.
(https://www.packtpub.com/product/deep-learning-with-tensorflow-2-and-
keras-second-edition/9781838823412 )

Ngoài ra, người dùng cần nắm vững các kỹ thuật phân tích dữ liệu như tiền xử lý
dữ liệu, phân tích thống kê, phân tích đa biến, trực quan hóa dữ liệu, và máy học.
Các khái niệm này được giải thích chi tiết trong sách "Python Data Science
Handbook" của tác giả Jake VanderPlas.
(https://jakevdp.github.io/PythonDataScienceHandbook/ )

2
III. Nội dung đã thực hiện
1. Thu thập dữ liệu

Dữ liệu cần bao gồm các thông tin sau:

 Mã đối tượng khảo sát (phải che giấu các thông tin cá nhân của người được
khảo sát như mã số sinh viên và họ tên sinh viên...).
 Điểm trung bình năm 1 và năm 2 của mỗi sinh viên.
 Khoảng cách từ nhà đến trường (km).
 Thu nhập hàng tháng do làm thêm ngoài giờ học (triệu đồng).
 Số anh em trong gia đình.
 Số bạn thân trong lớp.

1.1. Xác Định Mục Tiêu Thu Thập Dữ Liệu:


Xác định mục tiêu cụ thể của việc thu thập dữ liệu, bao gồm các biến cần
thiết như đã nêu ở trên.

1.2. Xây Dựng Biểu Mẫu Hoặc Phiếu Khảo Sát:


Tạo một biểu mẫu hoặc phiếu khảo sát điện tử để thu thập thông tin từ sinh
viên.
Biểu mẫu nên bao gồm các trường thông tin cần thiết như mã đối tượng
khảo sát (đảm bảo che giấu thông tin cá nhân như mã số sinh viên và tên), điểm
trung bình năm 1 và năm 2, khoảng cách từ nhà đến trường, thu nhập hàng tháng từ
làm thêm ngoài giờ học, số anh em trong gia đình, số bạn thân trong lớp, vv.

1.3. Phân Phối Biểu Mẫu hoặc Phiếu Khảo Sát:


Phân phối biểu mẫu hoặc phiếu khảo sát cho sinh viên tham gia vào dự án.
Có thể sử dụng các phương tiện như email, trang web của trường, các nhóm
lớp học, hoặc các cuộc họp sinh viên để phân phối.

1.4. Thu Thập Dữ Liệu:


Sinh viên sẽ điền thông tin vào biểu mẫu hoặc phiếu khảo sát theo yêu cầu.
Đảm bảo rằng các thông tin được cung cấp là chính xác và đầy đủ.

1.5. Kiểm Tra và Xử Lý Dữ Liệu:


Sau khi thu thập, kiểm tra lại dữ liệu để đảm bảo tính chính xác và đầy đủ.
Xử lý dữ liệu nếu cần thiết, bao gồm việc loại bỏ dữ liệu không hợp lệ hoặc xử lý
các giá trị ngoại lệ.
3
1.6. Lưu Trữ Dữ Liệu:
Lưu trữ dữ liệu một cách an toàn và bảo mật, đảm bảo tuân thủ các quy định về
bảo vệ thông tin cá nhân.

1.7. Sử Dụng Dữ Liệu Cho Phân Tích:


Sử dụng dữ liệu đã thu thập để thực hiện các phân tích và mô hình hóa dữ liệu trên
nền tảng PySpark.

1.8. Tạo Báo Cáo và Phân Tích:


Tạo báo cáo và phân tích dữ liệu để đưa ra các nhận định và kết luận có ích cho dự
án phân tích dữ liệu.

1.9. Chia Sẻ Kết Quả:


Chia sẻ kết quả và nhận định từ dự án với các thành viên trong nhóm và cộng đồng
nghiên cứu cùng với giảng viên.

Quan trọng nhất là đảm bảo tính chính xác, đầy đủ và bảo mật của dữ liệu trong
quá trình thu thập và sử dụng.

4
2. Xây dựng dataset:

Với tập tin CSV (Final Project.csv) sau khi đã tạo dataset và tạo các biến như:

 Nums: Số thứ tự của sinh viên.


 StudentID: Mã sinh viên duy nhất định danh cho mỗi sinh viên.
 FirstName: Tên đầu tiên của sinh viên.
 LastName: Họ của sinh viên.
 Date of birth: Ngày sinh của sinh viên.
 ResultofFirstYear: Kết quả học tập của sinh viên trong năm đầu.
 ResultofSecondYear: Kết quả học tập của sinh viên trong năm thứ hai.
 DistancetoSchool: Khoảng cách từ nơi ở của sinh viên đến trường.
 OvertimeHours: Số giờ làm thêm của sinh viên hàng tháng.
 MonthyIncome: Thu nhập hàng tháng của sinh viên.
 NumberofSiblings: Số lượng anh chị em của sinh viên.
 NumberofCloseFriends: Số lượng bạn thân của sinh viên.
 AVGResult: Kết quả học tập trung bình của sinh viên.

Dưới đây là file CSV thể hiện đầy đủ tất cả điều đó:

3. Phân tích và xử lí dữ liệu


5
Tính các giá trị Mean, Median, Mode, Skewness, Sample Variance, Sample
Standard deviation, Coefficient of variation và xử lí dữ liệu (cụ thể là Skewness)

3.1. ResultofFirstYear

Với file Excel

6
Với code PySpark

Nhận xét: Dữ liệu với skewness trong khoảng [-0.5, 0.5] thường cho thấy một phân
phối gần với phân phối chuẩn và không có sự nghiêng lệch đáng kể về bất kỳ
hướng nào. Trong trường hợp này, skewness của dữ liệu là rất nhỏ
(0.006352161019771928), chỉ ra rằng phân phối của dữ liệu gần với phân phối
chuẩn.

7
3.2. ResultofSecondYear

Với file Excel

8
Với code PySpark

Nhận xét: Dữ liệu với skewness trong khoảng [-0.5, 0.5] thường cho thấy một phân
phối gần với phân phối chuẩn và không có sự nghiêng lệch đáng kể về bất kỳ
hướng nào. Trong trường hợp này, skewness của dữ liệu là rất nhỏ
(0.018463929542805662), chỉ ra rằng phân phối của dữ liệu gần với phân phối
chuẩn.

9
3.3. DistancetoSchool

Với file Excel

10
Với code PySpark

Nhận xét : Dữ liệu với skewness trong khoảng [-0.5, 0.5] thường cho thấy một
phân phối gần với phân phối chuẩn và không có sự nghiêng lệch đáng kể về bất kỳ
hướng nào. Trong trường hợp này, skewness của dữ liệu là tiêu cực nhỏ (-
0.03525064942300509), chỉ ra rằng phân phối của dữ liệu có một sự nghiêng nhỏ
về bên trái, nhưng không đáng kể.

11
3.4. DistancetoSchool

Với file Excel

12
Với code PySpark

Ta thấy giá trị Skewness: 0.922931794736483 không nằm trong khoảng [-0.5 đến
0.5]
Nhận xét: Biểu đồ lệch hướng dương, hoặc skewness dương, thường xuất hiện khi
dữ liệu phân phối lệch về phía phải của trục x. Điều này có nghĩa là có một số
lượng lớn các quan sát có giá trị lớn hơn so với giá trị trung bình, khiến cho phân
phối đỉnh của biểu đồ nằm bên trái và đuôi dài về bên phải. Trong trường hợp này,
skewness dương (0.922931794736483) chỉ ra rằng dữ liệu có phân phối lệch về
phía phải, có nghĩa là có một số lượng lớn hơn các giá trị cao hơn giá trị trung
bình. Điều này có thể được hình dung trong biểu đồ histogram nơi mà đỉnh của
phân phối nằm ở bên trái và có một đuôi dài về phía bên phải.

13
Sau khi loại bỏ các outliers

Skewness giảm xuống còn 0.0399382126872358, gần với 0 hơn so với trước khi
loại bỏ outliers. Điều này cho thấy phân phối của dữ liệu trở nên ít lệch hơn về bất
kỳ hướng nào và gần với một phân phối chuẩn hơn.
Dữ liệu hiện đã nằm trong khoảng từ -0.5 đến 0.5, chỉ ra rằng dữ liệu không còn
chứa các giá trị ngoại lai lớn hơn ngưỡng đã chọn và phân phối trở nên gần gũi hơn
với một phân phối chuẩn.

14
3.5. MonthyIncome

Với file Excel

15
Với code PySpark

Ta thấy giá trị Skewness: 5.8818491453418185 không nằm trong khoảng [-0.5 đến
0.5]
Nhận xét: Biểu đồ lệch hướng dương, hoặc skewness dương, thường xuất hiện khi
dữ liệu phân phối lệch về phía phải của trục x. Điều này có nghĩa là có một số
lượng lớn các quan sát có giá trị lớn hơn so với giá trị trung bình, khiến cho phân
phối đỉnh của biểu đồ nằm bên trái và đuôi dài về bên phải. Trong trường hợp này,
skewness dương (5.8818491453418185) chỉ ra rằng dữ liệu có phân phối lệch về
phía phải, có nghĩa là có một số lượng lớn hơn các giá trị cao hơn giá trị trung
bình. Điều này có thể được hình dung trong biểu đồ histogram nơi mà đỉnh của
phân phối nằm ở bên trái và có một đuôi dài về phía bên phải.

16
Sau khi loại bỏ outliers

Skewness giảm xuống còn khoảng 0.28296010167085106, gần với 0 hơn so với
trước khi loại bỏ outliers. Điều này cho thấy phân phối của dữ liệu trở nên ít lệch
hơn về bất kỳ hướng nào và gần gũi hơn với một phân phối chuẩn.
Dữ liệu hiện đã nằm trong khoảng từ -0.5 đến 0.5 trên trục x, chỉ ra rằng dữ liệu
không còn chứa các giá trị ngoại lai lớn hơn ngưỡng đã chọn và phân phối trở nên
gần gũi hơn với một phân phối chuẩn.

17
3.6. NumberofSiblings

Với file Execel

18
Với code PySpark

Ta thấy giá trị Skewness: 1.368552213419976 không nằm trong khoảng [-0.5 đến
0.5]
Nhận xét: Biểu đồ lệch hướng dương, hoặc skewness dương, thường xuất hiện khi
dữ liệu phân phối lệch về phía phải của trục x. Điều này có nghĩa là có một số
lượng lớn các quan sát có giá trị lớn hơn so với giá trị trung bình, khiến cho phân
phối đỉnh của biểu đồ nằm bên trái và đuôi dài về bên phải. Trong trường hợp này,
skewness dương (1.368552213419976) chỉ ra rằng dữ liệu có phân phối lệch về
phía phải, có nghĩa là có một số lượng lớn hơn các giá trị cao hơn giá trị trung
bình. Điều này có thể được hình dung trong biểu đồ histogram nơi mà đỉnh của
phân phối nằm ở bên trái và có một đuôi dài về phía bên phải.

19
Sau khi loại bỏ outliers

Skewness giảm xuống còn khoảng 0.1000214568085034, gần với 0 hơn so với
trước khi loại bỏ outliers. Điều này cho thấy phân phối của dữ liệu trở nên ít lệch
hơn về bất kỳ hướng nào và gần gũi hơn với một phân phối chuẩn.
Dữ liệu hiện đã nằm trong khoảng từ -0.5 đến 0.5 trên trục x, chỉ ra rằng dữ liệu
không còn chứa các giá trị ngoại lai lớn hơn ngưỡng đã chọn và phân phối trở nên
gần gũi hơn với một phân phối chuẩn.

20
3.7. NumberofCloseFriends

Với file Excel

21
Với code PySpark

Ta thấy giá trị Skewness: 1.00549848505845 không nằm trong khoảng [-0.5 đến
0.5]
Nhận xét: Biểu đồ lệch hướng dương, hoặc skewness dương, thường xuất hiện khi
dữ liệu phân phối lệch về phía phải của trục x. Điều này có nghĩa là có một số
lượng lớn các quan sát có giá trị lớn hơn so với giá trị trung bình, khiến cho phân
phối đỉnh của biểu đồ nằm bên trái và đuôi dài về bên phải. Trong trường hợp này,
skewness dương (1.00549848505845) chỉ ra rằng dữ liệu có phân phối lệch về phía
phải, có nghĩa là có một số lượng lớn hơn các giá trị cao hơn giá trị trung bình.
Điều này có thể được hình dung trong biểu đồ histogram nơi mà đỉnh của phân
phối nằm ở bên trái và có một đuôi dài về phía bên phải.

22
Sau khi loại bỏ outliers

Skewness giảm xuống còn khoảng 0.3404499694063034, gần với 0 hơn so với
trước khi loại bỏ outliers. Điều này cho thấy phân phối của dữ liệu trở nên ít lệch
hơn về bất kỳ hướng nào và gần gũi hơn với một phân phối chuẩn.
Dữ liệu hiện đã nằm trong khoảng từ -0.5 đến 0.5 trên trục x, chỉ ra rằng dữ liệu
không còn chứa các giá trị ngoại lai lớn hơn ngưỡng đã chọn và phân phối trở nên
gần gũi hơn với một phân phối chuẩn.

23
3.8. AVGResult

Với file Excel

24
Với code PySpark

Nhận xét : Dữ liệu với skewness trong khoảng [-0.5, 0.5] thường cho thấy một
phân phối gần với phân phối chuẩn và không có sự nghiêng lệch đáng kể về bất kỳ
hướng nào. Trong trường hợp này, skewness của dữ liệu là tiêu cực nhỏ
(0.012300817280595304), chỉ ra rằng phân phối của dữ liệu có một sự nghiêng
nhỏ về bên phải, nhưng không đáng kể.

25
4. Trực quan hóa dữ liệu

4.1. Khởi tạo

4.1.1. Khai báo thư viện

4.1.2. Đọc file CSV

4.1.3. In dữ liệu và kiểu dữ liệu

26
4.1.4. Kiểm tra số lượng giá trị null

Không có giá trị null (rỗng) nào trong bộ dữ liệu. Tất cả các cột đều có dữ liệu đầy
đủ cho mọi hàng.

4.1.5. Kiểm tra dòng trùng lặp

Trả về False nên không có giá trị trùng lặp nào trong bộ dữ liệu. Mỗi hàng có một
bản ghi duy nhất.

27
4.1.6. Tóm tắt thống kê cho DataFrame (numeric và non-numeric)

Bảng tóm tắt thống kê cho DataFrame "df" bao gồm cả các biến số và không phải
biến số như sau:
Biến số (numeric variables):
 Số lượng quan sát (count): 38
 Giá trị trung bình (mean):
o ResultofFirstYear: 7.355263
o ResultofSecondYear: 7.365789
o DistancetoSchool: 8.965789
o OvertimeHours: 27.5
o MonthyIncome: 5,258,789
o NumberofSiblings: 1.421053
o NumberofCloseFriends: 5.710526
o AVGResult: 7.360526
 Độ lệch chuẩn (standard deviation):
o ResultofFirstYear: 1.332281
o ResultofSecondYear: 1.356123
o DistancetoSchool: 4.201240
o OvertimeHours: 22.270754
o MonthyIncome: 16,028,774
o NumberofSiblings: 1.307599
o NumberofCloseFriends: 4.936942
o AVGResult: 1.331386
 Giá trị nhỏ nhất (min):
o ResultofFirstYear: 5.2

28
o ResultofSecondYear: 5.1
o DistancetoSchool: 1.8
o OvertimeHours: 0
o MonthyIncome: 0
o NumberofSiblings: 0
o NumberofCloseFriends: 0
o AVGResult: 5.3
 Giá trị 25% (25th percentile), 50% (median), và 75% (75th percentile) cho
mỗi biến.
 Giá trị lớn nhất (max):
o ResultofFirstYear: 9.5
o ResultofSecondYear: 9.5
o DistancetoSchool: 16.6
o OvertimeHours: 90
o MonthyIncome: 100,000,000
o NumberofSiblings: 6
o NumberofCloseFriends: 20
o AVGResult: 9.4

Không phải biến số (non-numeric variables):


 Số lượng quan sát (count), số lượng giá trị duy nhất (unique), giá trị xuất
hiện nhiều nhất (top), và tần suất xuất hiện của giá trị xuất hiện nhiều nhất
(freq) cho mỗi biến không phải biến số.

29
4.2. KDE với mật độ của từng biến trước và sau khi xử lí dữ liệu (-0.5 <
Skewness < 0.5)

4.2.1. ResultofFirstYear

Ta thấy giá trị Skewness: 0.006352161019771928 nằm trong khoảng [-0.5 đến 0.5]
Hợp lệ

Biểu đồ KDE: KDE Plot of Result of First Year

30
4.2.2. ResultofSecondYear

Ta thấy giá trị Skewness: 0.018463929542805662 nằm trong khoảng [-0.5 đến 0.5]
Hợp lệ

Biểu đồ KDE: KDE Plot of Result of Second Year

31
4.2.3. DistancetoSchool

Ta thấy giá trị Skewness: -0.03525064942300509 nằm trong khoảng [-0.5 đến 0.5]
Hợp lệ

Biểu đồ KDE: KDE Plot of Distance to School

32
4.2.4. OvertimeHours

Ta thấy giá trị Skewness: 0.922931794736483 nằm trong khoảng [-0.5 đến 0.5]
Không hợp lệ

Biểu đồ KDE: KDE Plot of Overtime Hours

Nên dữ liệu sau khi được thay đổi hợp lệ:

33
Biểu đồ KDE: KDE Plot of Overtime Hours (After Removing Outliers)

34
4.2.5. MonthyIncome

Ta thấy giá trị Skewness: 5.8818491453418185 nằm trong khoảng [-0.5 đến 0.5]
Không hợp lệ

Biểu đồ KDE: KDE Plot of Monthy Income

Nên dữ liệu sau khi được thay đổi hợp lệ:

35
Biểu đồ KDE: KDE Plot of Monthy Income (After Removing Outliers)

36
4.2.6. NumberofSiblings

Ta thấy giá trị Skewness: 1.368552213419976 nằm trong khoảng [-0.5 đến 0.5]
Không hợp lệ

Biểu đồ KDE: KDE Plot of Number of Siblings

Nên dữ liệu sau khi được thay đổi hợp lệ:

37
Biểu đồ KDE: KDE Plot of Number of Siblings (After Removing Outliers)

38
4.2.7. NumberofCloseFriends

Ta thấy giá trị Skewness: 1.00549848505845 nằm trong khoảng [-0.5 đến 0.5]
Không hợp lệ

Biểu đồ KDE: KDE Plot of Number of Close Friends

Nên dữ liệu sau khi được thay đổi hợp lệ:

39
Biểu đồ KDE: KDE Plot of Monthy of Close Friends (After Removing Outliers)

40
4.2.8. AVGResult

Ta thấy giá trị Skewness: 0.012300817280595304 nằm trong khoảng [-0.5 đến 0.5]
Hợp lệ

Biểu đồ KDE: KDE Plot of AVG Result

41
4.3. Vẽ chi tiết các biểu đồ + nhận xét

4.3.1. Biểu đồ cột (đôi): "Result of First Year" & "Result of Second Year"
of All Students

42
Biểu đồ cột (đôi): "Result of First Year" & "Result of Second Year" of All
Students

Nhận xét: Biểu đồ thể hiện kết quả học tập của tất cả học sinh năm nhất và năm
hai.
 Điểm số năm nhất cao hơn năm hai: Nhìn chung, học sinh năm nhất đạt
điểm cao hơn học sinh năm hai. Đường màu xanh lam (đại diện cho kết quả
năm nhất) nằm cao hơn đường màu cam (đại diện cho kết quả năm hai)
trong phần lớn biểu đồ. Điều này có thể là do một số yếu tố, chẳng hạn như
học sinh năm nhất thường có động lực hơn hoặc họ đã được chuẩn bị tốt hơn
cho môi trường học tập đại học.
 Có một số điểm đột biến trong biểu đồ: Có một số điểm đột biến trong
biểu đồ, nơi có sự gia tăng hoặc giảm đột ngột về số lượng học sinh đạt điểm
cụ thể. Ví dụ, có một điểm đột biến ở điểm 20, nơi có nhiều học sinh năm
nhất đạt điểm này hơn học sinh năm hai. Điều này có thể là do điểm 20 là
điểm số quan trọng, chẳng hạn như điểm trung bình cần thiết để đậu một
môn học.
 Có một số học sinh đạt điểm cao: Có một số học sinh đạt điểm cao, trên 30
điểm. Số lượng học sinh đạt điểm cao này cao hơn ở năm nhất so với năm
hai. Điều này cho thấy rằng có một số học sinh rất xuất sắc đang theo học tại
trường đại học.

Biểu đồ cho thấy rằng học sinh năm nhất có xu hướng đạt điểm cao hơn học sinh
năm hai. Có một số lý do tiềm ẩn cho điều này, chẳng hạn như học sinh năm nhất
thường có động lực hơn hoặc họ đã được chuẩn bị tốt hơn cho môi trường học tập
đại học.

43
4.3.2. Biểu đồ cột (so sánh): Overview of Scores for "Result of First Year"
& "Result of Second Year"

Biểu đồ cột (so sánh): Overview of Scores for "Result of First Year" & "Result
of Second Year"

Nhận xét: Biểu đồ thể hiện kết quả học tập của tất cả học sinh năm nhất và năm
hai.

 Điểm số trung bình của học sinh năm nhất cao hơn năm hai: Nhìn
chung, học sinh năm nhất đạt điểm trung bình cao hơn học sinh năm hai.
Điểm trung bình của học sinh năm nhất là 22,5 điểm, trong khi điểm trung
bình của học sinh năm hai là 20 điểm. Điều này có thể là do một số yếu tố,
chẳng hạn như học sinh năm nhất thường có động lực hơn hoặc họ đã được
chuẩn bị tốt hơn cho môi trường học tập đại học.
 Có một số điểm đột biến trong biểu đồ: Có một số điểm đột biến trong
biểu đồ, nơi có sự gia tăng hoặc giảm đột ngột về số lượng học sinh đạt điểm

44
cụ thể. Ví dụ, có một điểm đột biến ở điểm 20, nơi có nhiều học sinh năm
nhất đạt điểm này hơn học sinh năm hai. Điều này có thể là do điểm 20 là
điểm số quan trọng, chẳng hạn như điểm trung bình cần thiết để đậu một
môn học.
 Có một số học sinh đạt điểm cao: Có một số học sinh đạt điểm cao, trên 30
điểm. Số lượng học sinh đạt điểm cao này cao hơn ở năm nhất so với năm
hai. Điều này cho thấy rằng có một số học sinh rất xuất sắc đang theo học tại
trường đại học.

Biểu đồ cho thấy rằng học sinh năm nhất có xu hướng đạt điểm trung bình cao
hơn và có nhiều học sinh đạt điểm cao hơn so với học sinh năm hai. Có một số lý
do tiềm ẩn cho điều này, chẳng hạn như học sinh năm nhất thường có động lực
hơn hoặc họ đã được chuẩn bị tốt hơn cho môi trường học tập đại học.

45
4.3.3. Biểu đồ cột (so sánh - có đường "Mean"): Scores for "Result of First
Year" & "Result of Second Year"

46
Biểu đồ cột (so sánh - có đường "Mean"): Scores for "Result of First Year" &
"Result of Second Year"

Nhận xét: Biểu đồ thể hiện kết quả học tập của tất cả học sinh năm nhất và năm hai
(có đường “Mean” – Tính trung bình)

 Điểm số trung bình của học sinh năm nhất cao hơn năm hai: Nhìn
chung, học sinh năm nhất đạt điểm trung bình cao hơn học sinh năm hai.
Điểm trung bình của học sinh năm nhất là 65 điểm, trong khi điểm trung
bình của học sinh năm hai là 60 điểm. Điều này có thể là do một số yếu tố,
chẳng hạn như học sinh năm nhất thường có động lực hơn hoặc họ đã được
chuẩn bị tốt hơn cho môi trường học tập đại học.
 Có một số điểm đột biến trong biểu đồ: Có một số điểm đột biến trong
biểu đồ, nơi có sự gia tăng hoặc giảm đột ngột về tỷ lệ phần trăm học sinh
đạt điểm cụ thể. Ví dụ, có một điểm đột biến ở điểm 70, nơi có nhiều học
sinh năm nhất đạt điểm này hơn học sinh năm hai. Điều này có thể là do
điểm 70 là điểm số quan trọng, chẳng hạn như điểm trung bình cần thiết để
đậu một môn học.
 Có một số học sinh đạt điểm cao: Có một số học sinh đạt điểm cao, trên 90
điểm. Số lượng học sinh đạt điểm cao này cao hơn ở năm nhất so với năm
hai. Điều này cho thấy rằng có một số học sinh rất xuất sắc đang theo học tại
trường đại học.

Biểu đồ cho thấy rằng học sinh năm nhất có xu hướng đạt điểm trung bình cao
hơn và có nhiều học sinh đạt điểm cao hơn so với học sinh năm hai. Có một số lý
do tiềm ẩn cho điều này, chẳng hạn như học sinh năm nhất thường có động lực
hơn hoặc họ đã được chuẩn bị tốt hơn cho môi trường học tập đại học.

47
4.3.4. Biểu đồ cột (so sánh): High/ Medium/ Low Scores for "Result of First
Year" & "Result of Second Year"

48
Biểu đồ cột (so sánh): High/ Medium/ Low Scores for "Result of First Year" &
"Result of Second Year"

49
Nhận xét: Với 3 cột điểm của sinh viên cao nhất (>= 8), trung bình (6 đến 8), thấp
nhất (<= 6) so với năm nhất và năm hai

 2 biểu đồ đầu tiên “High Scores” nhìn chung khá đồng đều, nhưng từ mức 9
điểm đến 10 điểm thì năm nhất có phần cao hơn một ít so với năm hai  Tỉ
lệ học vấn của sinh viên năm nhất cao hơn một phần nhỏ điểm trên 8 so với
năm hai.
 2 biểu đồ tiếp theo “Medium Scores” nhìn chung đồng đều nhất  Tỉ lệ học
vấn của sinh viên mức trung bình ổn của cả hai năm.
 2 biểu đồ cuối cùng “Low Scores” nhìn chung cũng đồng đều, tuy nhiên
mức 5.2 điểm đến 5.4 điểm năm hai có phần cao hơn so với năm nhất  Tỉ
lệ học vấn của sinh viên năm nhất thấp hơn một phần nhỏ điểm dưới 6 so
với năm hai

Có một sự chênh lệch đáng kể (nhưng không nhiều) về kết quả học tập giữa học
sinh năm nhất và năm hai. Điều này có thể là do một số yếu tố, chẳng hạn như
học sinh năm nhất thường có động lực hơn hoặc họ đã được chuẩn bị tốt hơn cho
môi trường học tập đại học.

50
4.3.5. Biểu đồ scatter (so sánh): Scatter Plot of "Distance to School" vs
"Result of First Year" | "Result of Second Year"

Biểu đồ scatter (so sánh): Scatter Plot of "Distance to School" vs "Result of


First Year" | "Result of Second Year"

Nhận xét: Cả 2 biểu đồ scatter thể hiện khoảng cách từ nhà đến trường so với kết
quả học tập năm nhất và năm hai. Đánh giá chung khoảng cách càng xa thì học lực
càng thấp của sinh viên.
Cụ thể hơn:

 Kết quả năm nhất được rãi nhiều hơn mức điểm khoảng < 7 với khoảng cách
từ 10km trở đi. Mức điểm >= 7 cũng được rãi đều, nhưng thưa hơn so với
khoảng cách. Còn bình quân khoảng cách < 10km mức điểm tạm ổn định.

51
 Kết quả năm hai cũng được rãi nhiều hơn mức điểm khoảng < 7 với khoảng
cách từ 10km trở đi, nhưng so với năm nhất năm hai thưa hơn. Mức điểm >=
7 cũng được rãi đều, nhưng thưa hơn so với khoảng cách. Còn bình quân
khoảng cách < 10km mức điểm được rãi nhiều hơn so với năm nhất.

Nhìn chung, học sinh sống gần trường có xu hướng đạt điểm cao hơn học sinh
sống xa trường. Điều này có thể là do một số yếu tố, chẳng hạn như học sinh sống
gần trường có thể tiết kiệm thời gian di chuyển và dành nhiều thời gian hơn cho
việc học tập.

52
4.3.6. Biểu đồ box (so sánh): Box Plot of Students with "Overtime Hours" |
"Monthly Income"

53
54
Biểu đồ box (so sánh): Box Plot of Students with "Overtime Hours" | "Monthly
Income"

Nhận xét: Đánh giá chung của biểu đồ box trên thể hiện số giờ làm thêm và thu
nhập hàng tháng của tất cả học sinh trong lớp, mức 0 luôn chiếm tỉ lệ cao nhất.
Từng biểu đồ box, cụ thể biểu đồ 1 (số giờ làm thêm): Tỉ lệ sinh viên không đi làm
chiếm nhiều và có thể nhận thấy, mức dao động số giờ làm thêm trên 37 giờ/ tháng
cũng có 1 số sinh viên. Còn biểu đồ 2 (thu nhập hàng tháng): Mức thu nhập hàng
tháng (do việc làm thêm hoặc chu cấp gia đình) thì mức 0 có thu nhập cũng chiếm
tỉ lệ không nhỏ, dưới mức 2 triệu đồng tháng bình quân sinh viên cũng thu nhập ổn
định. Cũng có mức trên 2 triệu đồng (diễn ra ở 1 số học sinh)

Hầu hết học sinh trong lớp không đi làm thêm hoặc có thu nhập thấp.
Có một số ít học sinh đi làm thêm và có thu nhập cao.
Thu nhập của học sinh chủ yếu đến từ gia đình.

55
4.3.7. Biểu đồ box (so sánh): Violin Plot of Students with "Overtime
Hours" | "Monthly Income"

56
57
Biểu đồ violin (so sánh): Violin Plot of Students with "Overtime Hours" |
"Monthly Income"

Nhận xét: Đánh giá chung của biểu đồ violin trên thể hiện số giờ làm thêm và thu
nhập hàng tháng của tất cả học sinh trong lớp, mức 0 luôn chiếm tỉ lệ cao nhất.
Từng biểu đồ violin, cụ thể biểu đồ 1 (số giờ làm thêm): Tỉ lệ sinh viên không đi
làm chiếm nhiều và có thể nhận thấy, mức dao động số giờ làm thêm trên 37 giờ/
tháng cũng có 1 số sinh viên. Còn biểu đồ 2 (thu nhập hàng tháng): Mức thu nhập
hàng tháng (do việc làm thêm hoặc chu cấp gia đình) thì mức 0 có thu nhập cũng
chiếm tỉ lệ không nhỏ, dưới mức 2 triệu đồng tháng bình quân sinh viên cũng thu
nhập ổn định. Cũng có mức trên 2 triệu đồng (diễn ra ở 1 số học sinh)

Hầu hết học sinh trong lớp không đi làm thêm hoặc có thu nhập thấp.
Có một số ít học sinh đi làm thêm và có thu nhập cao.
Thu nhập của học sinh chủ yếu đến từ gia đình.

58
4.3.8. Biểu đồ scatter (so sánh): High/ Medium/ Low Scores in "Result of
First Year" & "Result of Second Year" with
"NumberofCloseFriends"

59
Biểu đồ scatter (so sánh): High/ Medium/ Low Scores in "Result of First Year"
& "Result of Second Year" with "NumberofCloseFriends"

Nhận xét: Biểu đồ phân tán mang lại một cái nhìn sâu sắc về mối liên hệ giữa số
lượng học sinh trong lớp học viên năm nhất và năm hai so với số lượng bạn thân
của họ. Có tổng cộng sáu biểu đồ, mỗi loại biểu đồ đại diện cho các điểm dữ liệu
cao nhất, trung bình và thấp nhất.
60
 Hai biểu đồ đầu tiên thể hiện rằng số lượng bạn han của học sinh trong năm
nhất và năm hai thường tập trung ở mức thấp hơn của phổ điểm. Điều này
ngụ ý rằng dù học sinh có ít bạn han hơn, nhưng chúng vẫn có thể đạt được
kết quả cao.

 Trong khi đó, biểu đồ tiếp theo cho thấy điểm số trung bình của cả hai năm
học tập trung chủ yếu vào mức điểm thấp hơn của phổ điểm, nhưng có sự
khác biệt nhỏ. Năm nhất có xu hướng có số lượng bạn han nhiều hơn, trong
khi năm hai thì ít hơn nhưng điểm số trung bình vẫn ổn định ở mức trên
trung bình.

 Cuối cùng, biểu đồ cuối cùng cho thấy sự tương quan giữa số lượng bạn han
và điểm số càng giảm khi điểm số tiến gần đến mức trung bình. Tuy nhiên,
có sự phân biệt rõ han giữa năm nhất và năm hai: trong khi năm nhất có xu
hướng có nhiều bạn han ở mức điểm gần trung bình, năm hai thì ít hơn.

Nhìn chung, biểu đồ đã minh họa rõ han rằng có một mối quan hệ đáng chú ý giữa
số lượng bạn han và hiệu suất học tập, với sự biến đổi nhất quán giữa năm nhất và
năm hai.

61
4.3.9. Biểu đồ tròn: Pie Chart of Number of Siblings

62
Biểu đồ tròn: Pie Chart of Number of Siblings

Nhận xét: Biểu đồ hình tròn này thể hiện số lượng anh chị em của sinh viên. Biểu
đồ được chia thành 6 lát, mỗi lát đại diện cho một số lượng anh chị em khác nhau.

 Hầu hết mọi người trong nhóm này không có anh chị em hoặc chỉ có 1
anh chị em. Lát 1 và lát 2 chiếm tổng cộng 63,2% diện tích biểu đồ, cho
thấy rằng hơn 60% những người trong nhóm này không có anh chị em hoặc
chỉ có 1 anh chị em.
 Số lượng người có 2 anh chị em hoặc nhiều hơn tương đối ít. Lát 3, lát 4,
lát 5 và lát 6 chỉ chiếm tổng cộng 36,8% diện tích biểu đồ, cho thấy rằng chỉ
có dưới 40% những người trong nhóm này có 2 anh chị em hoặc nhiều hơn.
 Biểu đồ này cho thấy rằng xu hướng gia đình ít con đang ngày càng phổ
biến. Số lượng người không có anh chị em hoặc chỉ có 1 anh chị em đang
ngày càng tăng, trong khi số lượng người có 2 anh chị em hoặc nhiều hơn
đang ngày càng giảm.

Biểu đồ hình tròn này cung cấp một cái nhìn tổng quan về số lượng anh chị em
của sinh viên. Biểu đồ cho thấy rằng hầu hết mọi người trong nhóm này không có
anh chị em hoặc chỉ có 1 anh chị em, và xu hướng gia đình ít con đang ngày càng
phổ biến.

63
4.3.10. Biểu đồ đường: Line Chart of Number of Siblings

Biểu đồ tròn: Pie Chart of Number of Siblings

Nhận xét: Đánh giá chung biểu đồ đường trên các mức tỉ lệ tương đối đều hầu như
mức dưới 3 số anh/chị/em là chiếm tỉ lệ 99%. Còn lại chỉ có 2 sinh viên trên mức 3
(cụ thể là 4 và 6).

Từ biểu đồ này, ta nhận thấy một phần lớn các anh/chị/em đều đạt điểm dưới mức
trung bình. Sự hiện diện của chỉ hai sinh viên với điểm số cao hơn là minh chứng
cho sự hiếm hoi của hiệu suất xuất sắc trong tập hợp này. Điều này có thể gợi ý về
một sự thách thức đối với hiệu quả học tập hoặc môi trường học tập đang đối mặt.

Và để biểu đồ trên được đều hơn, chúng ta xoá đi số lượng 4 và 6 anh/chị/em

64
4.3.11. ** Biểu đồ đường: Line Chart of Number of Siblings (Excluding 4
& 6)

** Biểu đồ đường: Line Chart of Number of Siblings (Excluding 4 & 6)

Nhận xét chung:

65
Sau khi loại bỏ điểm số 4 và 6 từ dữ liệu, biểu đồ đường thể hiện một phân phối tỉ
lệ số lượng anh/chị/em trên các mức điểm với một mức độ đồng đều hơn. Điều này
làm cho phần lớn dữ liệu tập trung ở mức dưới 3 điểm, với tỉ lệ 99%, trở nên rõ
ràng hơn và cân đối hơn.

Loại bỏ hai điểm số cao hơn đã tạo ra một hình ảnh chân thực hơn về phân phối
điểm số của nhóm. Điều này có thể cho thấy một hình ảnh chân thực hơn về hiệu
suất trung bình của nhóm, đồng thời cũng nhấn mạnh rằng sự xuất hiện của những
kết quả xuất sắc là hiếm hoi trong tập hợp này.

66
4.3.12. Biểu đồ hist: Frequency Distribution of AVGResult

Biểu đồ hist: Frequency Distribution of AVGResult

Nhận xét: Biểu đồ histogram được kết hợp với biểu đồ đường, tạo ra một hình ảnh
tương đối phong phú về phân phối điểm trung bình của học sinh. Cụ thể, biểu đồ
cột thể hiện điểm trung bình tập trung chủ yếu vào các khoảng điểm từ 6 đến 6.5,
từ 7.5 đến 8, và từ 8.5 đến 9, thấp hơn so với các khoảng điểm khác. Tuy nhiên,
mức điểm trên 9 là điểm nổi bật nhất với một cột cao nhất.
Từ biểu đồ đường, chúng ta nhận thấy mật độ điểm trung bình có sự biến động
không đồng đều, từ thấp đến cao và sau đó từ cao đến thấp (tuy chỉ là một số ít
điểm). Điều này có thể cho thấy một phân phối không đồng nhất về hiệu suất học
tập trong tập hợp dữ liệu, với một số học sinh đạt điểm cao, trong khi một số khác
đạt điểm thấp hơn.

Tổng thể, biểu đồ kết hợp này cung cấp cái nhìn tổng quan về sự phân bố của điểm
trung bình của học sinh, với sự đa dạng và biến động trong hiệu suất học tập của
họ.

67
4.3.13. Biểu đồ joint: Joint Plot of All Students and AVGResult

Biểu đồ joint: Joint Plot of All Students and AVGResult

68
Nhận xét: Biểu đồ joint plot, với trục x biểu thị tất cả học sinh và trục y biểu thị
điểm trung bình, cung cấp một cái nhìn tổng quan về mối quan hệ giữa số lượng
học sinh và điểm trung bình của họ.
Nhìn vào biểu đồ, chúng ta có thể thấy một phân phối phân tán rộng lớn, với một
số lượng lớn học sinh đạt điểm trung bình từ thấp đến trung bình. Điều này phản
ánh sự đa dạng trong hiệu suất học tập của các học sinh trong tập dữ liệu.
Ngoài ra, biểu đồ cũng cho thấy một số điểm dữ liệu nổi bật tập trung ở các điểm
điểm trung bình cao hơn, gợi ý rằng có một số học sinh đạt được hiệu suất xuất sắc
trong số lượng tổng thể.

Tổng thể, biểu đồ joint plot này là một công cụ hữu ích để hiểu rõ hơn về phân
phối và mối quan hệ giữa số lượng học sinh và điểm trung bình của họ trong tập
dữ liệu.

69
4.3.14. Biểu đồ cột: Bar Plot of "AVGResult"

Biểu đồ cột: Bar Plot of "AVGResult"

Nhận xét: Biểu đồ cột với trục x biểu thị tất cả học sinh và trục y biểu thị điểm
trung bình học sinh cung cấp một cái nhìn rõ ràng về phân bố điểm trung bình
trong tập dữ liệu.
Từ biểu đồ này, chúng ta có thể quan sát rõ ràng các khoảng điểm trung bình khác
nhau và sự phân phối của chúng trong tập dữ liệu. Cột cao nhất thường tương ứng
với một khoảng điểm nhất định, cho thấy số lượng học sinh đạt điểm trung bình
cao nhất trong số lượng tổng thể.
Tuy nhiên, chúng ta cũng có thể nhận thấy sự đa dạng trong hiệu suất học tập, với
các cột thấp tương ứng với các khoảng điểm trung bình thấp hơn, cho thấy có một
phần lớn học sinh đạt hiệu suất học tập ở mức trung bình hoặc thấp.

Tóm lại, biểu đồ cột là một công cụ hữu ích để trực quan hóa phân bố điểm trung
bình của học sinh và hiểu rõ hơn về sự đa dạng trong hiệu suất học tập của họ.

70
Và để biểu đồ cột trên nhìn tổng quan được đều hơn, bằng cách sẽ xoá đi những
bạn sinh viên có số điểm dưới 6.5

4.3.15. ** Biểu đồ cột: Bar Plot of "AVGResult" (After Dropping Rows


with AVGResult < 6.5)

** Biểu đồ cột: Bar Plot of "AVGResult" (After Dropping Rows with AVGResult
< 6.5)

71
Nhận xét: Bổ sung dữ liệu từ biểu đồ cột của "AVGResult" sau khi loại bỏ các
hàng có "AVGResult" dưới 6.5, chúng ta thấy một cái nhìn mới về phân phối điểm
trung bình của học sinh trong tập dữ liệu.
Biểu đồ cột này thường có các cột cao tập trung ở các khoảng điểm trung bình cao
hơn, thể hiện sự tập trung của các học sinh đạt điểm trung bình từ trung bình đến
cao. Điều này cho thấy sau khi loại bỏ các điểm thấp hơn, phần lớn học sinh đều
đạt được hiệu suất học tập ở mức trung bình hoặc cao.
Tuy nhiên, việc có một số lượng nhỏ các cột thấp hơn cũng cho thấy vẫn có một
phần nhỏ học sinh không đạt được hiệu suất học tập mong muốn, ngay cả sau khi
loại bỏ điểm thấp. Điều này có thể gợi ý về sự đa dạng trong mức độ sự thành công
học tập của học sinh.

Tổng thể, biểu đồ cột này cung cấp một cái nhìn chi tiết hơn về phân phối điểm
trung bình của học sinh sau khi loại bỏ các điểm thấp hơn, đồng thời nhấn mạnh
sự tập trung vào hiệu suất học tập ở mức trung bình và cao hơn.

72
4.3.16. Biểu đồ heatmap: Heatmap of All Student Data Information

73
Biểu đồ heatmap: Heatmap of All Student Data Information

Nhận xét: Dữ liệu correlation matrix đã cung cấp một cái nhìn tổng quan về mối
quan hệ giữa các biến trong tập dữ liệu. Bây giờ, sau khi vẽ heatmap, chúng ta có
thể đưa ra nhận xét cụ thể về các mối quan hệ này:

 ResultofFirstYear và ResultofSecondYear có một mối quan hệ rất mạnh với


hệ số tương quan là gần 1 (0.99), cho thấy sự tương đồng cao giữa kết quả
của năm đầu và năm hai.
 Các biến ResultofFirstYear và AVGResult cũng có mối quan hệ rất mạnh
với hệ số tương quan lên tới gần 0.99. Điều này cho thấy điểm trung bình có
mối liên hệ mạnh mẽ với kết quả của năm đầu.
 DistancetoSchool có mối tương quan âm đáng kể với ResultofFirstYear và
ResultofSecondYear, với hệ số tương quan là -0.25 và -0.17, tương ứng.

74
Điều này gợi ý rằng các học sinh có xu hướng đạt điểm cao hơn khi họ sống
gần trường học hơn.
 MonthyIncome có mối quan hệ nhẹ nhàng tích cực với AVGResult (0.12),
cho thấy một sự tương quan nhỏ giữa thu nhập hàng tháng và hiệu suất học
tập trung bình của học sinh.
 NumberofSiblings và AVGResult có mối quan hệ âm đáng kể (-0.18), chỉ ra
rằng số lượng anh/chị/em cũng ảnh hưởng đến hiệu suất học tập trung bình
của học sinh.
 Các biến khác như OvertimeHours và NumberofCloseFriends có mối quan
hệ nhỏ với AVGResult, cho thấy ảnh hưởng của chúng đối với hiệu suất học
tập không quá lớn.

Tóm lại, heatmap cung cấp một cái nhìn trực quan và dễ hiểu về mối quan hệ giữa
các biến trong tập dữ liệu, giúp chúng ta hiểu rõ hơn về những yếu tố nào có thể
ảnh hưởng đến hiệu suất học tập của học sinh.

75
4.3.17. Biểu đồ pair: Pairplot of All Student Data Information

76
Biểu đồ pair: Pairplot of All Student Data Information

Nhận xét: Biểu đồ pairplot được tạo từ dữ liệu thông tin của tất cả học sinh, cung
cấp một cái nhìn toàn diện về mối quan hệ giữa các cặp biến trong tập dữ liệu.
Từ biểu đồ này, chúng ta có thể quan sát một số mẫu mối quan hệ:

 Điểm Trung Bình và Kết Quả Năm Đầu/Năm Hai: Có một mối quan hệ
dương mạnh giữa điểm trung bình và kết quả của năm đầu và năm hai, thể
hiện qua các điểm dữ liệu phân tán thành một đám mây điểm hình chữ X.

77
 Thu Nhập Hàng Tháng và Khoảng Cách đến Trường Học: Có một mối
quan hệ âm mạnh giữa thu nhập hàng tháng và khoảng cách đến trường học,
với điểm dữ liệu tập trung ở các giá trị thấp hơn của cả hai biến.
 Số Lượng Anh/Chị/Em và Kết Quả Trung Bình: Biểu đồ cho thấy một
mối quan hệ âm nhẹ giữa số lượng anh/chị/em và kết quả trung bình, với
điểm dữ liệu tập trung ở các giá trị cao hơn của số lượng anh/chị/em và thấp
hơn của kết quả trung bình.
 Số Giờ Làm Thêm và Số Bạn Thân: Không có mối quan hệ rõ ràng giữa
số giờ làm thêm và số bạn thân, được thể hiện qua một sự phân tán ngẫu
nhiên của các điểm dữ liệu.

Tóm lại, biểu đồ pairplot cung cấp một cái nhìn toàn diện về mối quan hệ giữa các
biến trong tập dữ liệu, giúp chúng ta hiểu rõ hơn về cách các yếu tố này tương tác
với nhau.

78
4.4. Kỹ thuật hồi quy — Fitness Prediction
Sử dụng "train_test_split" từ "sklearn.model_selection" để chia dữ liệu thành
tập huấn luyện và tập kiểm tra, sau đó sử dụng LinearRegression từ
"sklearn.linear_model" để thực hiện hồi quy tuyến tính

4.4.1. Khai báo các thư viện cần thiết

4.4.2. Hồi quy tuyến tính

Kết quả điểm số của mô hình hồi quy tuyến tính trên tập kiểm tra là -0.408, có thể
hiểu là mô hình không hoạt động hiệu quả trên dữ liệu kiểm tra. Điểm số âm này
cho thấy mô hình không dự đoán tốt hơn so với việc chọn một giá trị trung bình
đơn giản làm dự đoán cho mỗi điểm dữ liệu trong tập kiểm tra.
Một điểm số âm như vậy có thể cho thấy rằng mô hình không thích hợp cho dữ
liệu hiện tại hoặc có thể có sự không phù hợp giữa mô hình và dữ liệu. Có thể cần
xem xét lại các biến đầu vào được chọn, kiểm tra tính phù hợp của mô hình và cân
nhắc sử dụng các phương pháp mô hình hóa khác nếu cần thiết để cải thiện hiệu
suất của mô hình.

4.4.3. Hồi quy logistic

79
Độ chính xác của mô hình hồi quy logistic trên tập kiểm tra là 0.0, điều này cho
thấy rằng mô hình không dự đoán được lớp mục tiêu một cách chính xác trên tập
dữ liệu kiểm tra.
Một độ chính xác của 0.0 có thể có nhiều nguyên nhân:
 Dữ liệu không cân bằng: Nếu có sự mất cân bằng giữa các lớp trong tập dữ
liệu, mô hình có thể dự đoán lớp thiểu số với độ chính xác thấp hoặc thậm
chí là 0.0 nếu không dự đoán đúng bất kỳ một điểm nào thuộc lớp thiểu số.
 Overfitting: Mô hình có thể đã quá mức dự đoán và 'học' một cách cụ thể từ
dữ liệu huấn luyện mà không thể áp dụng được vào dữ liệu mới.
 Vấn đề về dữ liệu hoặc mô hình: Có thể có các vấn đề về chất lượng dữ
liệu hoặc cách mà mô hình được thiết kế và huấn luyện.
Để giải quyết vấn đề này, cần kiểm tra lại dữ liệu, tối ưu hóa mô hình, cân nhắc sử
dụng các kỹ thuật xử lý mất cân bằng dữ liệu và/hoặc thử nghiệm các mô hình
khác nhau để tìm ra một mô hình phù hợp hơn cho dữ liệu của bạn.

4.4.4. Trình phân loại cây quyết định

Kết quả "The accuracy of Decision Tree is: 0.0" chỉ ra rằng mô hình Decision Tree
không dự đoán đúng bất kỳ mẫu nào trong tập kiểm tra. Trong ngữ cảnh này, độ
chính xác bằng 0.0 có thể có một số nguyên nhân, bao gồm:
 Dữ liệu không cân bằng: Tập dữ liệu kiểm tra có thể chứa rất ít hoặc không
có mẫu của một lớp cụ thể mà mô hình được đào tạo để dự đoán. Trong
trường hợp này, mô hình có thể dự đoán một lớp duy nhất cho tất cả các mẫu
trong tập kiểm tra mà không đạt được độ chính xác đáng kể.
 Overfitting: Mô hình có thể đã bị overfitting vào dữ liệu đào tạo, nghĩa là
nó đã học những chi tiết nhỏ mà không tổng quát hóa được sang dữ liệu mới.
Khi áp dụng cho dữ liệu kiểm tra, mô hình không thể dự đoán chính xác.

80
 Lỗi trong mã hoặc quá trình đào tạo: Có thể có lỗi trong mã hoặc quá
trình đào tạo mô hình, dẫn đến việc đánh giá sai lệch của độ chính xác.
Để xác định nguyên nhân cụ thể của độ chính xác bằng 0.0, bạn nên kiểm tra lại dữ
liệu, cài đặt mô hình và quá trình đào tạo, cũng như kiểm tra mức độ overfitting
của mô hình.

 Từ các kết quả này, có một số điểm chung:

 Hiệu suất thấp hoặc không hoạt động: Cả ba mô hình đều cho thấy hiệu
suất thấp hoặc không hoạt động trên tập kiểm tra. Mô hình không dự đoán
được mục tiêu một cách chính xác, đồng nghĩa với việc chúng không có giá
trị hơn so với việc chọn ngẫu nhiên hoặc sử dụng một giá trị trung bình đơn
giản.
 Nguyên nhân có thể đa dạng: Có nhiều nguyên nhân có thể dẫn đến hiệu
suất thấp như dữ liệu không cân bằng, overfitting, lỗi trong mã hoặc quá
trình đào tạo.
 Cần phân tích và cải thiện: Để cải thiện hiệu suất của mô hình, cần phân
tích nguyên nhân cụ thể và thực hiện các biện pháp cần thiết như kiểm tra lại
dữ liệu, tinh chỉnh mô hình và quá trình đào tạo, xử lý mất cân bằng dữ liệu
(nếu có), và kiểm tra overfitting.

5. Nhận xét + Kết luận

Từ kết quả phân tích, chúng ta đã thấy rằng có một số yếu tố đóng vai trò quan
trọng trong ảnh hưởng đến kết quả học tập của sinh viên hệ CLC, ngành Công
nghệ Thông tin, khóa 2021 tại Trường ĐH Sài Gòn.
Đầu tiên, khoảng cách từ nhà đến trường đã được xác định là một yếu tố có ảnh
hưởng đáng kể đến kết quả học tập. Sinh viên sống xa trường có thể phải đối mặt
với thách thức của việc đi lại hàng ngày, dẫn đến mệt mỏi và mất thời gian di
chuyển, giảm sự tập trung và hiệu suất học tập.
Thứ hai, thu nhập hàng tháng từ việc làm thêm ngoài giờ học cũng là một yếu tố
quan trọng. Sinh viên phải cân nhắc giữa việc kiếm tiền và thời gian dành cho việc
học. Sự căng thẳng từ công việc ngoài giờ có thể ảnh hưởng tiêu cực đến sự tập
trung và hiệu suất học tập.
Ngoài ra, số anh em trong gia đình cũng có ảnh hưởng đến kết quả học tập của sinh
viên. Sinh viên có nhiều anh em có thể phải chia sẻ tài nguyên gia đình và sự chú ý
của phụ huynh, gây ra sự cạnh tranh về tài nguyên và sự quan tâm từ phía gia đình,
ảnh hưởng đến sự tập trung và hiệu suất học tập của họ.

81
Cuối cùng, số bạn thân trong lớp cũng có thể ảnh hưởng đến kết quả học tập. Một
môi trường học tập tích cực, với nhiều bạn bè hỗ trợ và cùng nhau tiến bộ, có thể
tạo điều kiện thuận lợi cho việc học tập và phát triển.

Kết luận, để cải thiện kết quả học tập của sinh viên, cần xem xét các biện pháp
như tạo điều kiện thuận lợi cho việc di chuyển, quản lý thời gian làm việc ngoài
giờ hợp lý, xây dựng môi trường gia đình và học tập tích cực, cũng như tăng
cường sự hỗ trợ và giao lưu giữa các sinh viên. Điều này có thể giúp tối ưu hóa
hiệu suất học tập và nâng cao thành tích học tập của sinh viên trong ngành
Công nghệ Thông tin tại Trường ĐH Sài Gòn.

IV. Tài liệu tham khảo

1. "Spark: The Definitive Guide: Big Data Processing Made Simple" by Bill
Chambers and Matei Zaharia
2. "Mastering Apache Spark 3.0" by Jacek Laskowski
3. "Apache Spark in 24 Hours, Sams Teach Yourself" by Jeffrey Aven
4. "PySpark for Beginners: Learn Python Programming and Apache Spark" by
Ron Cody and Vincy Srivastav
5. "Data Science with Spark: Analyzing Large Scale Data" by Jeffrey Aven
6. "Apache Spark Deep Learning Cookbook" by Ahmed Sherif, Amrith
Ravindra, and Josh Patterson

Những cuốn sách này cung cấp những kiến thức và hướng dẫn chi tiết về PySpark
và Apache Spark, từ cơ bản đến nâng cao, giúp bạn làm quen và làm chủ công
nghệ xử lý dữ liệu lớn này.

82
V. Trình bày toàn bộ code + các hình vẽ (Phụ lục)

83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
The end…

116

You might also like