Nội dung text LAB01.docx
THỰC HÀNH XỬ LÝ DỮ LIỆU Hạn chót: xem tại nơi nộp bài trên: https://courses.uit.edu.vn/ NỘI DUNG Sử dụng bộ dữ liệu thô cung cấp các thông tin về xe đã qua sử dụng (Automobile), đường dẫn: https://drive.google.com/drive/folders/1uJAKJdv0QRNx5aqzhdIt7vkexK3rB7y- có 2 bộ dữ liệu: 1. Automobile_dataset_V1.csv áp dụng cho mã sinh viên có số cuối lẻ. 2. Automobile_dataset_V2.csv áp dụng cho mã sinh viên có số cuối chẵn. Sau đó, anh/chị thực hiện theo các yêu cầu: Câu 1. Tạo dataframe (df) biểu diễn bộ dữ liệu thô đã cung cấp. Sau đó xuất 10 sample đầu tiên, và 5 sample bất kỳ. Câu 2. Tạo header cho các cột tương ứng với danh sách đặt tên như sau ["symboling", "normalized-losses", "make", "fuel-type", "aspiration", "num-of-doors", "body- style", "drive-wheels", "engine-location", "wheel-base", "length", "width", "height", "curb-weight", "engine-type", "num-of-cylinders", "engine-size", "fuel-system", "bore", "stroke", "compression-ratio", "horsepower", "peak- rpm", "city-mpg", "highway-mpg", "price"]. Câu 3. Quan sát từng mẫu dữ liệu, kiểm tra kiểu dữ liệu của tất cả các biến của df. So sánh với dữ liệu thô, phán đoán xem có đúng với kiểu dữ liệu mong muốn hay không? Câu 4. Kiểm tra bộ dữ liệu có bị khuyết hay không? Biết rằng các giá trị bị khuyết được quy định bằng các ký hiệu “.”, “?”, “_”, “-”, “”, “None”, “NULL”, “Not”, “|”. Thống kê số lượng giá trị bị khuyết từng biến.
Câu 5. Xuất ra các dòng có các giá trị bị khuyết. Sau đó lưu trữ kết quả bị khuyết này. thành các tập tin sau “.csv”, “.json”, “excel”. Câu 6. Xử lý giá trị bị khuyết theo gợi ý sau: biến "normalized-losses" (giá trị xuất hiện nhiều nhất), "stroke" (tự chọn), "bore" (lấy gía trị dòng trên), "horsepower" (tự chọn), "peak-rpm" (mean). Và, "num-of-doors" (giá trị xuất hiện nhiều nhiều nhất). Câu 7. Sử dụng lại bộ dữ liệu bị khuyết, tiến hành xử lý giá trị bị khuyết theo quy trình sau: 1. Biến price loại bỏ toàn bộ giá trị bị khuyết. 2. Nếu biến horsepower bị khuyết thì thay thế bằng giá trị trung bình. 3. Nếu cột normalized-losses bị khuyết thì thay thế bằng giá trị xuất hiện nhiều nhất. 4. Nếu còn giá trị bị khuyết thì loại bỏ hết. 5. Lưu trữ lại kết quả xử lý. Câu 8. Sử dụng lại bộ dữ liệu bị khuyết, dùng thuật toán Nearest neighbors để điền các giá trị bị thuyết. Câu 9. Tạo các bin là ['Low', 'Medium', 'High'] cho biến “horsepower”, “price”, “city- mpg”, “highway-mpg”. Câu 10. Chuyển đổi các biến phân loại thành các biến số số bằng phương pháp one-hot. Câu 11. Chuyển đổi các biến phân loại thành các biến số số bằng phương pháp khác. Câu 12. Chuẩn hóa bộ dữ liệu bằng phương pháp Min-Max. Trình bày 2 cách giải: 1. Dùng công thức, 2. Dùng mô đun hỗ trợ chuyển đổi. Câu 13. Chuẩn hóa bộ dữ liệu bằng phương pháp zscore. Trình bày 2 cách giải: 1. Dùng công thức, 2. Dùng mô đun hỗ trợ chuyển đổi. --- HẾT --- Chú ý:
GVTH sẽ hướng dẫn chi tiết các câu trong quá trình thực hành. SV cần tham gia thực hành để tiếp thu các hướng dẫn.
QUY ĐỊNH CHUNG 1. Sử dụng ngôn ngữ lập trình Python để thực hành. 2. Trong file dùng để lập trình, SV dùng #Comment hoặc Markdown (trong notebook) ghi đầy đủ thông tin đầu bài làm như sau: # STT: 39 (Ví dụ). STT theo d/s lớp thực hành # Họ và tên: Nguyễn Văn An (Ví dụ) # Lớp: …… # Buổi 01 - Bài 01 # Ghi chú, hoặc Lưu ý: ...... 3. SV tổ chức thành một file lập trình duy nhất (.py hoặc .ipynb) sau đó nộp lại file này và không nén trước khi nộp bài. Cách đặt tên file: STT_MASV_Lab0x.py hoặc .ipynb