- Đây là sổ tay trực tuyến trình bày các công cụ và kỹ thuật cốt lõi của khoa học dữ liệu dựa trên Python, với toàn bộ nội dung được công khai trên website và GitHub
- Được cung cấp dưới định dạng notebook Jupyter, cho phép học theo hướng thực hành, kết hợp cả mã nguồn và văn bản
- Văn bản được phát hành theo giấy phép CC-BY-NC-ND, còn các ví dụ mã nguồn theo giấy phép MIT, cho phép sử dụng tự do cho mục đích phi thương mại
- Trình bày có hệ thống các thư viện cốt lõi cho phân tích dữ liệu và machine learning như IPython, NumPy, Pandas, Matplotlib, Scikit-Learn
- Đây là tài liệu hữu ích để người mới bắt đầu lẫn người làm thực tế làm quen với quy trình làm việc tiêu chuẩn của hệ sinh thái Python
Tổng quan
- Trang này chứa toàn bộ nội dung của "Python Data Science Handbook" của Jake VanderPlas
- Sách gốc được xuất bản bởi O’Reilly, còn phiên bản web được phát hành miễn phí
- Toàn bộ nội dung cũng được cung cấp dưới dạng notebook Jupyter trong kho lưu trữ GitHub
- Văn bản được phát hành theo giấy phép CC-BY-NC-ND, còn ví dụ mã nguồn theo giấy phép MIT
- Có thể sử dụng cho mục đích phi thương mại và tái sử dụng mã nguồn
- Nếu người đọc thấy tài liệu hữu ích, họ có thể ủng hộ tác giả bằng cách mua bản gốc
Cấu trúc mục lục
- Cuốn sách gồm 5 chương chính và phần phụ lục
Chương 1: IPython – Vượt ra ngoài Python thông thường
- Giải thích các tính năng và cách sử dụng môi trường IPython
- Bao gồm hệ thống trợ giúp, phím tắt bàn phím, magic command, tích hợp lệnh shell, v.v.
- Đề cập đến lịch sử thực thi mã, gỡ lỗi và đo hiệu năng
Chương 2: Giới thiệu NumPy
- Trình bày nền tảng của tính toán số với mảng NumPy
- Bao gồm kiểu dữ liệu, broadcasting, boolean mask, sắp xếp, mảng có cấu trúc, v.v.
- Giải thích cách sử dụng các phép toán dựa trên mảng và các hàm tổng hợp
Chương 3: Thao tác dữ liệu với Pandas
- Trình bày các đối tượng cốt lõi và chức năng xử lý dữ liệu của Pandas
- Bao gồm indexing, xử lý giá trị thiếu, grouping, pivot table, xử lý chuỗi thời gian, v.v.
- Cũng giới thiệu các phép toán hiệu năng cao thông qua
eval() và query()
Chương 4: Trực quan hóa với Matplotlib
- Giải thích các phương pháp trực quan hóa dữ liệu bằng Matplotlib và Seaborn
- Bao gồm nhiều loại biểu đồ như biểu đồ đường, scatter plot, histogram, density plot, v.v.
- Trình bày các tính năng nâng cao như chú giải, color bar, stylesheet, biểu đồ 3D, trực quan hóa dữ liệu địa lý, v.v.
Chương 5: Machine learning
- Trình bày các khái niệm và thuật toán cơ bản của machine learning, tập trung vào Scikit-Learn
- Bao gồm các quy trình cốt lõi như hyperparameter, kiểm chứng mô hình, feature engineering
- Giải thích các mô hình chính như naive Bayes, linear regression, SVM, random forest, PCA, k-means, GMM
- Đưa ra ví dụ về pipeline nhận diện khuôn mặt để minh họa ứng dụng thực tế
Phụ lục: Mã nguồn hình minh họa
- Tập hợp mã trực quan hóa được sử dụng trong nội dung chính
- Có thể tái tạo và chỉnh sửa từng hình minh họa
Ý nghĩa sử dụng
- Cung cấp cho người học khoa học dữ liệu một cái nhìn tích hợp về hệ sinh thái Python
- Với định dạng notebook có thể thực hành, tài liệu có thể được dùng cho giáo dục, nghiên cứu và tạo prototype
- Được phát hành theo giấy phép nguồn mở nên thuận lợi cho mở rộng liên tục và đóng góp từ cộng đồng
2 bình luận
https://product.kyobobook.co.kr/detail/S000201558138
Phân tích dữ liệu bằng các thư viện Python
Đây là cuốn sách do Wes McKinney, người tạo ra pandas, viết; cũng rất phù hợp làm sách nhập môn data science. Tôi đã đọc cuốn này khi ấn bản 2 vừa mới ra mắt... giờ tìm lại mới biết là đã có ấn bản 3 rồi.
Ý kiến trên Hacker News
Tôi thực sự rất thích bài nói chuyện Statistics for Hackers của Jake VanderPlas
Xem slide thuyết trình
Ví dụ, nếu tỷ lệ hiện mắc của một căn bệnh là 1/10.000 và độ chính xác của xét nghiệm là 99%, thì kết quả dương tính cũng không có nghĩa là bạn mắc bệnh với xác suất 99%
Những cuốn sách kiểu này lúc nào cũng thú vị
Chúng bao quát rộng nhưng không quá sâu nhiều chủ đề như thao tác dữ liệu, trực quan hóa, machine learning, v.v., trong khi mỗi chủ đề tự nó cũng có thể thành cả một cuốn sách
Rất khó để cân bằng giữa dạy lập trình với giới thiệu khái niệm và lý thuyết, nhưng có vẻ cuốn này đã làm khá tốt vai trò sách nhập môn
Cuốn sách này đã hữu ích cháy bỏng 🔥 khi tôi bắt đầu học data science vào giai đoạn 2017~2018
Jake là một người thầy tuyệt vời
Thật thú vị khi ở thời điểm hiện tại họ vẫn chọn Pandas
Có lẽ trọng tâm là truyền đạt các khái niệm tổng quát hơn là các công cụ mới nhất
Ở công việc đầu tiên, tôi từng tham khảo một bài blog về Kernel Density Estimation (KDE), và nó cực kỳ hữu ích
Từ đó tôi bắt đầu thích các công trình của Jake
Bản online của sách được công khai tại learningds.org
Giấy phép là CC-BY-NC-ND
Tôi không hiểu lắm vì sao mọi người ghét Pandas
Nó không phải công cụ hoàn hảo, nhưng codebase của chúng tôi có hàng nghìn dòng Pandas và gần như chưa bao giờ gây ra bug production
Chúng tôi dùng Pandas cùng với wrapper schema tĩnh và trình kiểm tra kiểu để vận hành ổn định
Anh ấy là một tác giả xuất sắc, và tôi nhớ blog của anh ấy
Đặc biệt là bài viết về pivot table rất ấn tượng, và có vẻ nội dung đó giờ đã được đưa vào sách
Có thể xem tại trang chính thức của Altair
Cuốn sách này được viết từ 8 năm trước, nhưng vẫn có ấn bản thứ 2 của cùng tác giả
Trên đó ghi là “Python Data Science Handbook, 2nd edition, by Jake VanderPlas (O’Reilly). Copyright 2023…”
Có thể so sánh với bản năm 2016 ở liên kết gốc
Đây là một trong số rất ít cuốn sách mà tôi đã đọc trọn từ đầu đến cuối khi học data science vào giai đoạn 2020~2021
Đến giờ vẫn đáng để giới thiệu