Trang chủ/Khóa học/Python Visualize Data - Xây dựng hệ thống báo cáo, quản lý nội bộ
Data ScienceTrung cấpBán chạy

Python Visualize Data - Xây dựng hệ thống báo cáo, quản lý nội bộ

Khóa học hướng dẫn lập trình Python chuyên sâu về trực quan hóa dữ liệu và xây dựng hệ thống báo cáo, dashboard, phần mềm quản lý nội bộ doanh nghiệp với Streamlit và SQLite.

4.9/5
348 đánh giá
120+
Học viên
16 buổi (32 giờ)
Thời lượng
16 bài học
16 buổi học
KD
Giảng viên: KD Educode
Cập nhật mới nhất: Mon
Ngôn ngữ giảng dạy: Tiếng Việt
20.000.000đ25.000.000đ
Giảm 20%
Truy cập khóa học trọn đời • Hỗ trợ học tập 24/7

Giới thiệu khóa học

Khóa học giúp học viên từ tư duy lập trình Python cơ bản tiến thẳng tới việc xây dựng các ứng dụng Web Dashboard báo cáo tự động, hệ thống quản lý dữ liệu nội bộ doanh nghiệp chuyên nghiệp và bảo mật bằng StreamlitSQL Server.


Điểm Khác Biệt Chỉ Có Tại KD Educode

  1. Học qua dự án thực tế: Xây dựng trực tiếp hệ thống Quản lý Quy trình và Dashboard báo cáo doanh nghiệp.
  2. Làm chủ Streamlit: Thư viện Python giúp dựng giao diện Web App nhanh nhất thế giới.
  3. Phân quyền và bảo mật: Tích hợp màn hình đăng nhập, phân quyền Role và bảo vệ cơ sở dữ liệu.
  4. Tích hợp Trí tuệ nhân tạo (AI): Gọi Gemini API để tự động tóm tắt và phân tích đề xuất kinh doanh.

Lộ Trình 16 Buổi Học Chi Tiết

  • Buổi 1: Khởi tạo App & Kiểu dữ liệu Chuỗi
    • Streamlit UI: st.title(), st.write(), st.text_input(), st.text_area().
    • Python: Biến, Kiểu chuỗi, f-string.
  • Buổi 2: Nút bấm & Luồng điều kiện
    • Streamlit UI: st.button(), st.success(), st.error(), st.warning().
    • Python: Cấu trúc điều kiện if/elif/else, toán tử logic.
  • Buổi 3: Lựa chọn danh mục & Cấu trúc danh sách
    • Streamlit UI: st.selectbox(), st.multiselect(), st.radio().
    • Python: List [], Tuple (), kiểm tra phần tử.
  • Buổi 4: Lưu trữ tạm thời & Cấu trúc Từ điển
    • Streamlit UI: st.session_state để lưu dữ liệu khi reload trang.
    • Python: Dictionary {key: value}.
  • Buổi 5: Kết nối DB & Xử lý ngoại lệ
    • Streamlit UI: st.spinner() biểu tượng chờ.
    • Python: Kết nối SQL Server (pyodbc), bẫy lỗi try...except.
  • Buổi 6: Đẩy dữ liệu (INSERT) & Đóng gói Hàm
    • Streamlit UI: st.form(), st.form_submit_button().
    • Python: Viết hàm (def) tái sử dụng, câu lệnh INSERT INTO tham số hóa.
  • Buổi 7: Kéo dữ liệu về (SELECT) & Thư viện Pandas
    • Streamlit UI: st.dataframe(), st.data_editor() bảng tương tác.
    • Python: Pandas DataFrame, pd.read_sql().
  • Buổi 8: Bộ lọc & Vòng lặp
    • Streamlit UI: st.sidebar menu bên trái.
    • Python: Lọc dữ liệu trực tiếp trên Pandas DataFrame, vòng lặp for.
  • Buổi 9: Cập nhật Trạng thái (UPDATE) & Tabs
    • Streamlit UI: st.tabs() phân nhánh giao diện.
    • Python: SQL UPDATE dựa trên ID dòng.
  • Buổi 10: Xử lý Thời gian & Cột dữ liệu mới
    • Streamlit UI: st.date_input(), st.time_input().
    • Python: Thư viện datetime, tính toán số ngày trễ hạn SLA.
  • Buổi 11: Đăng nhập & Cơ chế Phân quyền
    • Streamlit UI: st.empty() dọn dẹp giao diện.
    • Python: So sánh mật khẩu, phân quyền Role (Admin, Staff).
  • Buổi 12: Thao tác File & Chuyển đổi số liệu
    • Streamlit UI: st.file_uploader(), st.download_button().
    • Python: Import file Excel qua Pandas và INSERT hàng loạt; Export dữ liệu ra Excel.
  • Buổi 13: Căn chỉnh Bố cục & Thẻ Chỉ số
    • Streamlit UI: st.columns(), st.metric() thẻ KPI hiển thị số lớn.
    • Python: Pandas groupby(), sum(), count().
  • Buổi 14: Vẽ biểu đồ Pyecharts (Tĩnh)
    • Streamlit UI: streamlit_echarts vẽ biểu đồ tương tác.
    • Python: Cấu hình Dictionary thông số Echarts.
  • Buổi 15: Biểu đồ động & Tích hợp API
    • Streamlit UI: Realtime chart inputs.
    • Python: Tích hợp Gemini API phân tích và tóm tắt đề xuất tự động.
  • Buổi 16: Refactor Code & Đóng gói App
    • Streamlit UI: Tùy biến CSS cơ bản (đổi font, màu nền).
    • Python: Tổ chức source code đa file (ui.py, database.py, logic.py).

Hình ảnh hoạt động lớp học

Thực hành 100% tại lớp
Hoạt động lớp học 1Hoạt động lớp học 2Hoạt động lớp học 3
Hoạt động 1 / 3

Chương trình học chi tiết

16 bài học • 32 giờ học thực tế
01

Buổi 1: Khởi tạo App & Kiểu dữ liệu Chuỗi

120 phútXem thử miễn phí

Thành phần Streamlit: st.title(), st.write(), st.text_input(), st.text_area(). Cú pháp Python: Biến (Variables), Kiểu chuỗi (String), f-string để ghép chữ. Kết quả: Chạy thành công giao diện Web có tiêu đề "Hệ Thống Quản Lý Quy Trình", kèm các ô nhập Tên yêu cầu và Mô tả chi tiết.

Chi tiết nội dung học tập:
Quy chuẩn thiết kế bảng tính chuẩn dữ liệu
Tối ưu hóa phông chữ, màu sắc & kích thước ô
Cách ẩn/hiện gridlines và tiêu đề khoa học
Ứng dụng phím tắt định dạng nhanh
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Học thử ngay
02

Buổi 2: Nút bấm & Luồng điều kiện

120 phútBài học khóa

Thành phần Streamlit: st.button(), st.success(), st.error(), st.warning(). Cú pháp Python: Câu lệnh if/elif/else, các phép toán logic (==, !=, and, or). Kết quả: Khi bấm nút "Tạo yêu cầu", hệ thống tự động kiểm tra xem ô "Tên yêu cầu" có bị bỏ trống không. Nếu trống báo lỗi đỏ, nếu đủ báo xanh.

Chi tiết nội dung học tập:
Tư duy sử dụng hàm IF lồng nhau
Kết hợp AND, OR, NOT trong biểu thức
Ứng dụng IFS & SWITCH thay thế IF phức tạp
Giải quyết các bài toán phân loại thực tế
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
03

Buổi 3: Lựa chọn danh mục & Cấu trúc danh sách

120 phútBài học khóa

Thành phần Streamlit: st.selectbox(), st.multiselect(), st.radio(). Cú pháp Python: Cấu trúc List [], Tuple (), kiểm tra phần tử (in, not in). Kết quả: Thêm Dropdown chọn "Phòng ban" (Marketing, IT, Hành chính) và chọn "Người duyệt".

Chi tiết nội dung học tập:
Tách họ tên, mã nhân viên bằng LEFT/RIGHT/MID
Tìm kiếm vị trí ký tự tự động với FIND & SEARCH
Thay thế dữ liệu lỗi thời bằng SUBSTITUTE
Gộp chuỗi thông minh với TEXTJOIN & CONCAT
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
04

Buổi 4: Lưu trữ tạm thời & Cấu trúc Từ điển

120 phútBài học khóa

Thành phần Streamlit: st.session_state (cực kỳ quan trọng để lưu dữ liệu khi reload trang). Cú pháp Python: Cấu trúc Dictionary {key: value}. Kết quả: Gom toàn bộ thông tin người dùng vừa nhập vào một Dictionary và hiển thị bản nháp (Draft) sang cột bên cạnh để xem trước khi gửi.

Chi tiết nội dung học tập:
Định dạng Date & Time chuẩn quốc tế và Việt Nam
Tính toán thâm niên, tuổi tác bằng hàm DATEDIF
Đếm số ngày làm việc trừ ngày lễ với NETWORKDAYS
Xác định ngày cuối tháng tự động bằng EOMONTH
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
05

Buổi 5: Kết nối DB & Xử lý ngoại lệ

120 phútBài học khóa

Thành phần Streamlit: st.spinner() (biểu tượng xoay chờ load). Cú pháp Python: Thư viện pyodbc, khối bẫy lỗi try...except. Kết quả: Bấm nút "Kết nối Hệ thống", app hiện vòng xoay. Nếu kết nối SQL Server thành công báo xanh, nếu rớt mạng báo lỗi chi tiết mà không làm sập App.

Chi tiết nội dung học tập:
VLOOKUP & HLOOKUP cơ bản đến nâng cao
Tìm kiếm đa điều kiện với INDEX & MATCH
Sức mạnh tra cứu thế hệ mới của XLOOKUP
Khắc phục lỗi #N/A triệt để
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
06

Buổi 6: Đẩy dữ liệu (INSERT) & Đóng gói Hàm

120 phútBài học khóa

Thành phần Streamlit: st.form(), st.form_submit_button(). Cú pháp Python: Viết Hàm (def) để tái sử dụng, câu lệnh INSERT INTO có tham số chống hack. Kết quả: Đóng gói toàn bộ các ô nhập liệu vào một Form. Khi Submit, dữ liệu thực sự được ghi vào bảng Requests trong SQL Server.

Chi tiết nội dung học tập:
Tính tổng có điều kiện nâng cao bằng SUMIFS
Đếm dữ liệu trùng lặp với COUNTIFS
Tính trung bình theo nhiều tiêu chí với AVERAGEIFS
Tối ưu hóa công thức mảng động
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
07

Buổi 7: Kéo dữ liệu về (SELECT) & Thư viện Pandas

120 phútBài học khóa

Thành phần Streamlit: st.dataframe(), st.data_editor() (bảng tương tác). Cú pháp Python: import pandas as pd, pd.read_sql(). Kết quả: Hiển thị danh sách tất cả các Yêu cầu đang nằm trong SQL Server lên App dưới dạng lưới dữ liệu đẹp mắt.

Chi tiết nội dung học tập:
Phân tích xu hướng dữ liệu bằng AVERAGE & MEDIAN
Xác định giá trị xuất hiện nhiều nhất bằng MODE
Đo lường độ lệch chuẩn và phương sai dữ liệu
Tính phân vị dữ liệu bằng hàm PERCENTILE
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
08

Buổi 8: Bộ lọc & Vòng lặp

120 phútBài học khóa

Thành phần Streamlit: st.sidebar (menu bên trái) kết hợp các ô input lọc. Cú pháp Python: Vòng lặp for, tính năng lọc dữ liệu trực tiếp trên Pandas DataFrame. Kết quả: Tạo bộ lọc bên thanh Sidebar. Lọc danh sách Yêu cầu theo "Trạng thái" (Đang xử lý, Hoàn thành) hoặc "Phòng ban".

Chi tiết nội dung học tập:
Thiết lập vùng điều kiện lọc Advanced Filter
Trích xuất dữ liệu không trùng lặp (Unique list)
Kiểm tra kiểu dữ liệu với ISNUMBER & ISTEXT
Xử lý lỗi chủ động bằng ISERROR & IFERROR
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
09

Buổi 9: Cập nhật Trạng thái (UPDATE) & Tabs

120 phútBài học khóa

Thành phần Streamlit: st.tabs() (chia tab giao diện). Cú pháp Python: SQL UPDATE dựa trên ID. Kết quả: Giao diện có 2 tab: "Cần xử lý" và "Đã hoàn thành". Cấp quản lý bấm nút "Duyệt" trên một dòng, dòng đó tự động chuyển trạng thái và bay sang tab "Đã hoàn thành".

Chi tiết nội dung học tập:
Tạo thanh tiến độ trực quan bằng Data Bars
Phân tích nhiệt độ dữ liệu bằng Color Scales
Phân loại trạng thái dữ liệu bằng Icon Sets
Thiết lập định dạng dòng dựa trên công thức riêng
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
10

Buổi 10: Xử lý Thời gian & Cột dữ liệu mới

120 phútBài học khóa

Thành phần Streamlit: st.date_input(), st.time_input(). Cú pháp Python: Thư viện datetime, tính toán số ngày giữa 2 mốc thời gian. Kết quả: Hệ thống tự động tính ra số ngày "Trễ SLA" của một công việc dựa trên ngày tạo và ngày cam kết.

Chi tiết nội dung học tập:
Tạo danh mục lựa chọn (Dropdown List) động
Giới hạn định dạng nhập số, ngày tháng, độ dài chữ
Tự động hiển thị thông báo lỗi khi nhập sai
Sử dụng công thức tùy biến trong Data Validation
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
11

Buổi 11: Đăng nhập & Cơ chế Phân quyền

120 phútBài học khóa

Thành phần Streamlit: st.empty() (xóa giao diện cũ). Cú pháp Python: Logic so sánh Password, cấp quyền Role (Admin, Staff). Kết quả: Mở app hiện màn hình Login. Nhân viên đăng nhập chỉ thấy nút "Tạo đề xuất", Trưởng phòng đăng nhập thấy thêm nút "Phê duyệt".

Chi tiết nội dung học tập:
Tạo báo cáo tổng hợp nhanh từ bảng dữ liệu lớn
Nhóm ngày tháng, số liệu theo khoảng (Grouping)
Tạo trường tính toán mới (Calculated Field)
Thiết lập bộ cục và định dạng PivotTable chuyên nghiệp
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
12

Buổi 12: Thao tác File & Chuyển đổi số liệu

120 phútBài học khóa

Thành phần Streamlit: st.file_uploader(), st.download_button(). Cú pháp Python: Dùng Pandas đọc file Excel upload lên và dùng vòng lặp for để INSERT hàng loạt vào SQL Server. Kết quả: Tính năng Import danh sách công việc cũ từ file Excel và nút Export dữ liệu từ App ra lại Excel để báo cáo.

Chi tiết nội dung học tập:
Trực quan hóa báo cáo với biểu đồ cột, đường, tròn
Kết nối PivotTable với Pivot Chart động
Thiết lập bộ lọc nhanh trực quan với Slicer
Lọc dữ liệu thời gian trực quan với Timeline
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
13

Buổi 13: Căn chỉnh Bố cục & Thẻ Chỉ số

120 phútBài học khóa

Thành phần Streamlit: st.columns(), st.metric() (thẻ hiển thị số lớn có mũi tên tăng/giảm). Cú pháp Python: Pandas groupby(), sum(), count(). Kết quả: Tạo một Dashboard Tổng quan với các thẻ KPI: Tổng số Yêu cầu, Tỷ lệ trễ hạn, Số lượng đang tồn đọng.

Chi tiết nội dung học tập:
Tổng quan nội dung buổi học
Bài tập thực hành củng cố
Tài liệu mẫu đính kèm
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
14

Buổi 14: Vẽ biểu đồ Pyecharts (Tĩnh)

120 phútBài học khóa

Thành phần Streamlit: streamlit_echarts. Cú pháp Python: Cấu hình Dictionary phức tạp cho Echarts. Kết quả: Vẽ biểu đồ Cột thể hiện số lượng công việc theo từng phòng ban và biểu đồ Tròn thể hiện tỷ trọng trạng thái Yêu cầu.

Chi tiết nội dung học tập:
Tổng quan nội dung buổi học
Bài tập thực hành củng cố
Tài liệu mẫu đính kèm
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
15

Buổi 15: Biểu đồ động & Tích hợp API

120 phútBài học khóa

Thành phần Streamlit: Tích hợp input thay đổi biểu đồ realtime. Cú pháp Python: Gọi API bên ngoài (ví dụ: Gọi Gemini API để phân tích văn bản). Kết quả: Cấp quản lý chọn khoảng thời gian, biểu đồ tự động nhảy số. Tích hợp nút AI: Bấm vào để AI tự đọc và tóm tắt một Đề xuất dài 5 trang thành 3 gạch đầu dòng.

Chi tiết nội dung học tập:
Tổng quan nội dung buổi học
Bài tập thực hành củng cố
Tài liệu mẫu đính kèm
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học
16

Buổi 16: Refactor Code & Đóng gói App

120 phútBài học khóa

Thành phần Streamlit: Tùy biến CSS cơ bản để app đẹp hơn (đổi font, màu nền). Cú pháp Python: Tổ chức lại source code thành nhiều file nhỏ (ui.py, database.py, logic.py) cho dễ quản lý. Kết quả: Một Web App hoàn chỉnh, chạy trơn tru, sẵn sàng triển khai cho doanh nghiệp sử dụng.

Chi tiết nội dung học tập:
Tổng quan nội dung buổi học
Bài tập thực hành củng cố
Tài liệu mẫu đính kèm
Tài liệu: File mẫu Excel (.xlsx) + File thực hành kèm đáp án
Vào lớp học

Khóa học này thiết kế dành cho ai?

Chuyên viên phân tích dữ liệu (Data Analyst / BI)

Muốn làm chủ Python để tự động hóa quy trình làm sạch dữ liệu, trực quan hóa và xây dựng dashboard báo cáo động thay cho Excel.

Kỹ sư & Lập trình viên hệ thống

Muốn xây dựng nhanh các ứng dụng Web quản lý dữ liệu nội bộ (CRUD), tích hợp xác thực và phân quyền mà không cần code frontend phức tạp.

Quản lý, Trưởng phòng & Tech Lead

Cần giải pháp xây dựng cổng thông tin quản trị doanh nghiệp, Dashboard báo cáo thời gian thực giúp đưa ra quyết định dựa trên dữ liệu.

Sinh viên ngành Kinh tế, Kỹ thuật, IT

Trang bị kỹ năng lập trình Python ứng dụng thực tế để làm đồ án tốt nghiệp, tạo lợi thế cạnh tranh cực lớn khi ứng tuyển doanh nghiệp.

Nhận xét từ học viên thành công

“Khóa học thực chiến tuyệt vời. Từ các tệp Excel rời rạc và lộn xộn, mình đã dùng Python và Streamlit dựng lên Dashboard phân tích doanh thu động, tự động cập nhật mỗi ngày.”

DB
Anh Duy Bách
Data Analyst tại tập đoàn bán lẻ

“Nội dung phân quyền admin/user và kết nối database SQLite rất trực quan. Mình đã xây dựng thành công ứng dụng quản lý kho nội bộ cho phòng ban chỉ sau 8 buổi học.”

KV
Chị Khánh Vy
BI Manager

“Giảng viên hướng dẫn rất chi tiết từ cách deploy lên Streamlit Cloud đến đồng bộ Git. Đồ án môn học của em đạt điểm tối đa nhờ giao diện tương tác quá chuyên nghiệp.”

TK
Anh Tuấn Kiệt
Sinh viên Khoa học dữ liệu
Python Visualize Data - Xây dựng hệ thống báo cáo, quản lý nội bộ
Xem giới thiệu khóa học
20.000.000đ25.000.000đ
Tiết kiệm 20% (5.000.000đ)
Khóa học này bao gồm:
  • 16 buổi học tương tác thực tế (120 phút/buổi)
  • Bộ tài liệu, source code mẫu & data thực hành
  • Học qua các dự án xây dựng dashboard báo cáo thực tế
  • Tự tay thiết kế ứng dụng quản lý dữ liệu nội bộ
  • Hỗ trợ giải đáp thắc mắc trực tiếp từ giảng viên
  • Cấp chứng nhận hoàn thành từ KD Educode
Cam kết chất lượng Học mọi lúc mọi nơi