1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài tập lớn môn nhập môn khoa học dữ liệu dữ liệu sách tiki

24 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài Tập Lớn Môn Nhập Môn Khoa Học Dữ Liệu Dữ Liệu Sách Tiki
Tác giả Nguyễn Tuệ Tĩnh, Nguyễn Hữu Quân
Người hướng dẫn PAI007 Đoàn Trung Phong
Trường học Trường Đại Học Thăng Long
Chuyên ngành Khoa Học Dữ Liệu
Thể loại Bài Tập Lớn
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 24
Dung lượng 1,89 MB

Nội dung

Phân tích dữ liệu: Sử dụng Pandas, Numpy và các công cụ thống kê để tính toán các giá trị thống kê mô tả và hệ số tương quan.. Trực quan hóa dữ liệu: Sử dụng Matplotlib để tạo các biểu đ

Trang 1

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

TRƯỜNG ĐẠI HỌC THĂNG LONG

BÀI TẬP LỚN MÔN NHẬP MÔN KHOA HỌC

DỮ LIỆU

DỮ LIỆU SÁCH TIKI

A41479 NGUYỄN HỮU QUÂN GIẢNG VIÊN HƯỚNG DẪN: PAI007 ĐOÀN TRUNG PHONG

HÀ NỘI – 2024

Trang 2

MỤC LỤC

Trang 3

1 GIỚI THIỆU

1.1 Giới thiệu bài toán và mục tiêu phân tích

Trong thời đại thương mại điện tử phát triển mạnh mẽ, việc hiểu rõ tác động của các chiến lược khuyến mãi, đặc biệt là giảm giá, đến doanh số bán hàng và hành vi người tiêu dùng

là vô cùng quan trọng Đối với các nền tảng như TIKI, các chiến lược giảm giá thường được sử dụng để thu hút khách hàng và tăng cường doanh số bán hàng Tuy nhiên, để tối ưu hóa các chiến lược này, cần có sự phân tích dựa trên dữ liệu thực tế.

Bài toán đặt ra: Chúng ta cần phân tích tác động của việc giảm giá đến doanh số bán hàng và các yếu tố khác như số lượng đánh giá và bình luận từ khách hàng.

Mục tiêu phân tích :

Trang 4

 Tác động của giảm giá đến doanh số bán hàng: Xác định mức độgiảm giá tối ưu để tăng doanh số bán hàng mà không làm giảm lợinhuận quá mức

 Mối quan hệ giữa tỉ lệ giảm giá và số lượng đánh giá: Tìm hiểuxem giảm giá có làm tăng số lượng đánh giá và bình luận từ kháchhàng hay không

 Chiến lược khuyến mãi hiệu quả: Đưa ra các đề xuất chiến lượckhuyến mãi hiệu quả dựa trên kết quả phân tích, nhằm tăng cườngdoanh số và sự hài lòng của khách hàng

1.2 Định nghĩa thuật ngữ và các từ viết tắt

thường mạiđiện tử tạiViệt Nam

2 CƠ SỞ DỮ LIỆU

2.1 Công nghệ và framework

1 Python Một ngôn ngữ lập trình mạnh mẽ, dễ học và rất phổ biến

trong lĩnh vực khoa học dữ liệu Python cung cấp nhiềuthư viện hữu ích cho việc thu thập, xử lý và phân tích dữ

Trang 5

STT Tên công nghệ Mô tả

liệu

2 Pandas Một thư viện mã nguồn mở của Python được sử dụng cho

thao tác và phân tích dữ liệu Pandas cung cấp các cấutrúc dữ liệu và các công cụ thao tác với dữ liệu mạnh mẽ,đặc biệt là DataFrame – một cấu trúc dữ liệu hai chiều chophép dễ dàng xử lý và phân tích dữ liệu tabular

3 DataFrame Cấu trúc dữ liệu chính của Pandas, tương tự như một bảng

dữ liệu trong SQL hoặc một bảng tính Excel

4 read_csv() Hàm đọc dữ liệu từ tệp CSV vào DataFrame

5 describe() Hàm cung cấp thống kê mô tả cho các cột dữ liệu số trong

Trang 6

STT Tên công nghệ Mô tả

8 corr() Hàm tính toán hệ số tương quan giữa các cột dữ liệu số

trong DataFrame

9 Matplotlib một thư viện vẽ đồ thị 2D của Python Matplotlib cung

cấp các công cụ để tạo ra các biểu đồ như biểu đồ đường,biểu đồ thanh, biểu đồ phân tán, và biểu đồ histogram

10 plt.figure() Tạo một khung hình mới cho biểu đồ

11 plt.hist() Vẽ biểu đồ histogram

12 plt.scatter() Vẽ biểu đồ phân tán

13 plt.title() Đặt tiêu đề cho biểu đồ

Trang 7

STT Tên công nghệ Mô tả

14 plt.xlabel() Đặt nhãn cho trục x

15 plt.ylabel() Đặt nhãn cho trục y

16 plt.grid() Hiển thị lưới trên biểu đồ

17 plt.show() Hiển thị biểu đồ

18 Requests Một thư viện của Python giúp gửi các yêu cầu HTTP một

cách dễ dàng Thư viện này được sử dụng để thu thập dữliệu từ các trang web thông qua các yêu cầu HTTP GEThoặc POST

19 BeautifulSoup Một thư viện của Python được sử dụng để phân tích cú

pháp HTML và XML BeautifulSoup giúp trích xuất dữliệu từ các trang web và biến đổi chúng thành các cấu trúc

dữ liệu dễ dàng xử lý

Trang 8

STT Tên công nghệ Mô tả

20 requests.get() Gửi yêu cầu HTTP GET

21 BeautifulSoup() Phân tích cú pháp HTML và XML

22 find_all() Tìm tất cả các thẻ HTML phù hợp với điều kiện tìm kiếm

23 NumPy Một thư viện của Python cung cấp hỗ trợ cho các mảng

n-dimensional và các hàm toán học hiệu quả NumPythường được sử dụng cùng với Pandas để thực hiện cácphép toán trên dữ liệu số

24 numpy.array() Tạo mảng n-dimensional

26 numpy.mean() Tính toán giá trị trung bình của mảng

Trang 9

STT Tên công nghệ Mô tả

27 numpy.std() Tính toán độ lệch chuẩn của mảng

2.2 Quy trình phân tích dữ liệu

Thu thập dữ liệu: Sử dụng Requests để lấy dữ liệu từ API hoặc trang web.

Làm sạch dữ liệu: Sử dụng Pandas để loại bỏ các giá trị bị thiếu, xử lý dữ liệu không hợp lệ và chuyển đổi định dạng dữ liệu nếu cần thiết.

Phân tích dữ liệu: Sử dụng Pandas, Numpy và các công cụ thống kê để tính toán các giá trị thống kê mô tả và hệ số tương quan

Trực quan hóa dữ liệu: Sử dụng Matplotlib để tạo các biểu đồ giúp trực quan hóa dữ liệu và kết quả phân tích.

Kết luận: Dựa trên kết quả phân tích để đưa ra các nhận xét và

đề xuất chiến lược kinh doanh

2.3 Định nghĩa thuật ngữ và các từ viết tắt

API (Application Programming Interface) là một tập hợp

các quy tắc và giao thức cho phép các ứng dụng phầnmềm giao tiếp với nhau API định nghĩa các phươngthức, dữ liệu yêu cầu, và dữ liệu phản hồi cho phép cácứng dụng trao đổi thông tin và thực hiện các chức năng

Trang 10

Thuật ngữ Ghi chú

mà không cần phải biết chi tiết về cách thức hoạt độngnội bộ của ứng dụng khác

HTML (HyperText Markup Language là ngôn ngữ đánh dấu )

được sử dụng để tạo cấu trúc và nội dung cho các trangweb HTML cung cấp một cách để tổ chức và hiển thịvăn bản, hình ảnh, liên kết, và các yếu tố khác trêntrình duyệt web Đây là một công nghệ cơ bản củaWorld Wide Web, cùng với CSS và JavaScript

Bước 2: Thiết Lập Các Tham Số Cho Yêu Cầu HTTP

 Thiết lập các thông số cần thiết cho yêu cầu HTTP để lấy thông tin sản phẩm từ API của Tiki:

Trang 11

Bước 3: Định Nghĩa Hàm Xử Lý Dữ Liệu JSON

 Định nghĩa hàm parser_product để xử lý dữ liệu JSON trả về từ API của Tiki và trích xuất các thông tin cần thiết về sản phẩm:

Bước 4: Đọc Danh Sách ID Sản Phẩm

 Đọc danh sách các ID sản phẩm từ tệp CSV

product_id_ncds.csv để biết được các sản phẩm cần thu thập dữ liệu:

Bước 5: Thu Thập Dữ Liệu Sản Phẩm

 Duyệt qua từng ID sản phẩm, gửi yêu cầu HTTP tới API của Tiki để lấy thông tin chi tiết của sản phẩm và lưu trữ vào danh sách kết quả:

Trang 12

Bước 6: Lưu Trữ Dữ Liệu Vào Tệp CSV

 Chuyển dữ liệu thu thập được thành một DataFrame và lưu trữ vào tệp CSV

Bước 2: Thiết Lập Các Tham Số Cho Yêu Cầu HTTP

 Thiết lập các thông số cần thiết cho yêu cầu HTTP để lấy thông tin sản phẩm từ API của Tiki:

Bước 3: Định Nghĩa Hàm Xử Lý Dữ Liệu JSON

 Định nghĩa hàm comment_parser để xử lý dữ liệu JSON trả về từ API của Tiki và trích xuất

Trang 13

các thông tin cần thiết về đánh giá sản phẩm:

Bước 4: Đọc Danh Sách ID Sản Phẩm

 Đọc danh sách các ID sản phẩm từ tệp CSV

product_id_ncds.csv để biết được các sản phẩm cần thu thập dữ liệu:

Bước 5: Thu Thập Dữ Liệu Sản Phẩm

 Duyệt qua từng ID sản phẩm, gửi yêu cầu HTTP tới API của Tiki để lấy thông tin chi tiết của sản phẩm và lưu trữ vào danh sách kết quả:

Bước 6: Lưu Trữ Dữ Liệu Vào Tệp CSV

 Chuyển dữ liệu thu thập được thành một DataFrame và lưu trữ vào tệp CSV

comments_data_ncds.csv:

3.2 Làm sạch dữ liệu

3.2.1 Làm sạch dữ liệu product_id_ncds.csvBước 1: Kiểm Tra Dữ Liệu Bị Thiếu

Trang 14

 kiểm tra dữ liệu bị thiếu trong DataFrame

data_product bằng cách sử dụng phương thức

isnull():

Bước 2: Xử Lý Giá Trị Bị Thiếu trong Cột “name”

 Kiểm tra các giá trị độc nhất trong cột name

và xử lý các giá trị chứa ký tự không mong muốn:

Bước 3: Kiểm Tra và Xử Lý Các Cột Khác

Trang 15

 Xóa các dòng dữ liệu chứa giá trị NaN để đảm bảo dữ liệu hoàn chỉnh và nhất quán:

Bước 4: Kiểm Tra Lại Dữ Liệu Sau Khi Làm Sạch

 Kiểm tra các giá trị độc nhất trong các cột

sku price list_price discount discount_rate, , , , ,

 print(data_product["review_count"].unique())

 print(data_product["inventory_status"].unique())

3.2.2 Làm sạch dữ liệu comments_data_ncds.csvBước 1: Kiểm Tra Dữ Liệu Bị Thiếu

 Tiếp theo, kiểm tra dữ liệu bị thiếu trong DataFrame bằng cách sử dụng phương thức

isnull() và sum() để đếm số lượng giá trị bị thiếu trong từng cột:

Trang 16

Nhận xét: Có 6 giá trị bị thiếu trong cột content, nguyên nhân

có thể do khách hàng chỉ đánh giá mà không để lại nội dung nhận xét.

Bước 2: In Ra Các Dòng Chứa Giá Trị Bị Thiếu

 Hiển thị các dòng dữ liệu chứa giá trị bị thiếu

để có cái nhìn cụ thể hơn về những giá trị bị thiếu này:

Giải pháp: Ở trường hợp này, chúng ta

sẽ xóa các dòng chứa giá trị NaN vì đây là

Trang 17

đánh giá của khách hàng và rất khó để can thiệp

Bước 3: Xử Lý Các Giá Trị Bị Thiếu

 Xóa các dòng dữ liệu chứa giá trị NaN để đảm bảo dữ liệu hoàn chỉnh và nhất quán:

Bước 4: Kiểm Tra Lại Dữ Liệu Sau Khi Làm Sạch

 Đảm bảo rằng không còn giá trị bị thiếu sau khi đã làm sạch dữ liệu:

Bước 5: Kiểm Tra Các Giá Trị Độc Nhất Trong Cột

“content”

 Hiển thị các giá trị độc nhất trong cột content

để kiểm tra tính đa dạng của các nhận xét:

Trang 20

Nhận Xét về Các Giá Trị Được Phân Tích Thống Kê

1 Cột price và list_price:

o Giá sản phẩm dao động rất lớn, từ mức thấp nhất là 430 VND đến mức cao nhất là 1,170,000 VND cho price và 1,750,000 VND cho list_price

o Độ lệch chuẩn cao cho thấy sự biến động lớn về giá giữacác sản phẩm

4 Cột rating trong Dữ Liệu Đánh Giá:

o Tất cả các đánh giá đều có điểm số là 5, cho thấy các sảnphẩm được đánh giá rất cao

o Điều này có thể chỉ ra rằng dữ liệu đánh giá có thể không đa dạng hoặc có thiên lệch tích cực

Trang 21

3.4 Trực quan hóa dữ liệu

Bước 1: Tính Toán Hệ Số Tương Quan

 Chúng ta tính toán hệ số tương quan giữa

discount_rate và review_count để hiểu mối quan hệ giữahai biến này

Trang 22

Nhận xét: Biểu đồ histogram cho thấy sự phân phối của giá sản

phẩm với nhiều sản phẩm có giá thấp và một số ít sản phẩm có giárất cao

Bước 3: Biểu Đồ Phân Tán giữa Tỷ Lệ Giảm Giá và Số Lượng ĐánhGiá

 Biểu đồ phân tán (scatter plot) giúp trực quan hóa mối quan hệ giữa tỷ lệ giảm giá và số lượng đánh giá

Bước 4: Kiểm Tra Lại Dữ Liệu Sau Khi Làm Sạch

 Đảm bảo rằng không còn giá trị bị thiếu sau khi đã làmsạch dữ liệu:

Nhận xét: Biểu đồ phân tán cho thấy mối quan hệ dương rõ ràng

giữa tỷ lệ giảm giá và số lượng đánh giá, xác nhận kết quả tươngquan cao đã tính toán trước đó

3.5 Kết luận

Sau quá trình phân tích biểu đồ chúng tôi đưa ra những kết luận sau:

Trang 23

Tập trung giá ở mức thấp: Phần lớn sản phẩm có giá nằm trong khoảng

từ 0.0 đến 0.2 triệu đơn vị tiền tệ, với các cột tần suất lần lượt là 2.0, 1.0

và 3.0 Điều này cho thấy nhiều sản phẩm được định giá ở mức thấp

Giá cao ít phổ biến: Mức giá cao nhất (1.0 đến 1.2 triệu đơn vị tiền tệ)

chỉ có một sản phẩm với tần suất là 1.0, cho thấy rằng rất ít sản phẩm có giá cao

Phân phối không đối xứng: Với tần suất cao nhất ở mức giá thấp và

giảm dần khi giá tăng, biểu đồ cho thấy sự phân phối không đối xứng của giá sản phẩm, tập trung nhiều ở mức giá thấp và giảm dần khi giá tăng

Giảm giá không kích thích đánh giá: Dữ liệu cho thấy tỷ lệ giảm giá

không có tác động đáng kể đến việc gia tăng số lượng đánh giá Do đó, giảm giá có thể không phải là yếu tố chính để tăng cường tương tác và đánh giá của khách hàng

Thị trường sách giá rẻ: Với phần lớn sản phẩm có giá thấp, việc giảm giá

có thể không cần thiết đối với các sản phẩm này vì khách hàng đã có xu hướng mua nhiều sách giá rẻ Tăng giảm giá có thể không ảnh hưởng nhiều đến quyết định mua hàng trong phân khúc giá thấp

4 TỔNG QUÁT

4.1 Chiến lược kinh doanh tương lai

Sau phân tích đưa ra chiến lược kinh doanh sau :

 Tập trung vào giá trị hơn là giảm giá: Thay vì tập trung vào

chiến lược giảm giá, Tiki nên tập trung vào việc nâng cao giá trịsản phẩm thông qua các chương trình khuyến mãi khác như quàtặng kèm, miễn phí vận chuyển, hoặc các chương trình khách hàngthân thiết

 Đa dạng hóa phân khúc sản phẩm: Xem xét mở rộng danh mục

sản phẩm với các sách có giá trị cao hơn để thu hút đối tượngkhách hàng mới Điều này có thể bao gồm sách giới hạn, sách cóchữ ký tác giả, hoặc sách với chất lượng in ấn cao

 Tạo nội dung chất lượng và đánh giá: Khuyến khích khách hàng

để lại đánh giá qua các chương trình tặng thưởng cho đánh giá, không chỉ dựa vào việc giảm giá Nội dung chất lượng như mô tả

Trang 24

sách chi tiết, video giới thiệu, và đánh giá từ người nổi tiếng có thểgiúp tăng uy tín và thu hút người mua.

 Phân tích chi tiết khách hàng: Nghiên cứu hành vi mua hàng của

khách hàng để xác định các yếu tố khác ngoài giá có thể ảnh hưởng đến quyết định mua hàng, từ đó xây dựng chiến lược marketing và khuyến mãi phù hợp

 Chiến lược giảm giá hợp lý: Việc giảm giá trong khoảng từ 0%

đến 50% là phổ biến và có thể thu hút được một lượng đánh giá ổn định Tiki nên tập trung vào việc tối ưu hóa các mức giảm giá trongkhoảng này để cân bằng giữa lợi nhuận và sự thu hút khách hàng

 Tập trung vào chất lượng và giá trị sản phẩm: Một số sản phẩm

có tỷ lệ giảm giá cao (50%-100%) nhưng lại nhận được số lượng đánh giá rất cao Điều này cho thấy rằng ngoài giảm giá, chất lượng sản phẩm và chiến lược tiếp thị cũng rất quan trọng Tiki nênchú trọng vào việc nâng cao giá trị sản phẩm và các chiến lược quảng bá mạnh mẽ

 Cảnh giác với giảm giá quá cao: Tỷ lệ giảm giá trên 400% không

mang lại số lượng đánh giá cao, thậm chí gần như không có đánh giá Điều này cho thấy rằng giảm giá quá cao có thể không hiệu quả và có thể làm giảm giá trị thương hiệu Tiki nên cẩn trọng trong việc áp dụng các mức giảm giá cực cao và cân nhắc tác động lâu dài đến thương hiệu

Ngày đăng: 23/02/2025, 21:28