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

BTL Cấu trúc rời rạc Chủ đề: Phân tích tình hình dịch Covid 19 bằng R

84 32 0

Đ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 đề Thống kê khảo sát kết quả Covid-19
Tác giả Huỳnh Tường Nguyên, Nguyễn Ngọc Lễ, Nguyễn Hoài Khang, Hà Văn Châu, Vũ Ngọc Thuận, Đỗ Nguyễn An Huy, Dương Trọng Khôi
Trường học Đại học Bách Khoa
Chuyên ngành Cấu trúc rời rạc
Thể loại báo cáo
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 84
Dung lượng 3,46 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • 3.1 Trung bình cộng (giá trị kì vọng) (4)
    • 3.1.1 Định nghĩa (4)
    • 3.1.2 Ý nghĩa (4)
  • 3.2 Tứ phân vị (5)
    • 3.2.1 Định nghĩa (5)
    • 3.2.2 Phân loại (5)
    • 3.2.3 Ý nghĩa (5)
    • 3.2.4 Cách thức xác định (5)
  • 3.3 Phương sai - Độ lệch chuẩn (6)
    • 3.3.1 Định nghĩa (6)
    • 3.3.2 Ý nghĩa (6)
  • 3.4 Khoảng tứ phân vị (6)
    • 3.4.1 Định nghĩa (7)
    • 3.4.2 Ý nghĩa (7)
  • 3.5 Outlier (7)
    • 3.5.1 Định nghĩa (7)
    • 3.5.2 Ý nghĩa (7)
  • 3.6 Biểu đồ hộp (Box Plot) (7)
    • 3.6.1 Định nghĩa (7)
    • 3.6.2 Các thành phần (7)
    • 3.6.3 Ý nghĩa (8)
  • 3.7 Tần số tích lũy - Biểu đồ tích lũy (8)
    • 3.7.1 Định nghĩa (8)
    • 3.7.2 Thiết lập bảng tần số tích lũy (8)
    • 3.7.3 Ý nghĩa (8)
  • 3.8 Đường trung bình động (9)
    • 3.8.1 Định nghĩa (9)
    • 3.8.2 Tính toán giá trị trung bình động đơn giản (9)
    • 3.8.3 Ý nghĩa (9)
  • 3.9 Hệ số tương quan (10)
    • 3.9.1 Hệ số tương quan Pearson (10)
    • 3.9.2 Hồi quy tuyến tính, phương pháp bình phương cực tiểu (10)
  • 4.1 Tập dữ liệu mẫu (12)
  • 4.2 Tiền xử lí (12)
    • 4.2.1 Cài đặt các packages (gói) và source file chứa các hàm tính toán cần thiết (12)
    • 4.2.2 Đọc dữ liệu từ file vào dataframe (khung dữ liệu) (12)
    • 4.2.3 Kiểm tra cấu trúc của tập dữ liệu mẫu (13)
  • 4.3 Chuẩn hóa dữ liệu (13)
    • 4.3.1 Chuẩn hóa kiểu dữ liệu của thuộc tính date (ngày-giờ) (13)
    • 4.3.2 Xử lí các giá trị âm trong new_cases và new_deaths (13)
    • 4.3.3 Lọc ra những dữ liệu không phải là quốc gia (14)
  • 4.4 Dữ liệu được phân công riêng (14)
  • 4.5 Kết quả phân tích (14)

Nội dung

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KHOA HỌC KỸ THUẬT MÁY TÍNH CẤU TRÚC RỜI RẠC CHO KHMT (CO1007) Thống kê khảo sát kết quả Covid 19 môn Cấu trúc rời rạc GVHD Huỳnh Tường Nguyên Nguyễn Ngọc Lễ SV thực hiện Nguyễn Hoài Khang 2111453 Hà Văn Châu 2110054 Vũ Ngọc Thuận 2112394 Đỗ Nguyễn An Huy 2110193 Dương Trọng Khôi 2113786 Tp Hồ Chí Minh, Tháng 042022 Mục lục 1 Động cơ nghiên cứu 3 2 Mục tiêu 3 3 Cơ sở lý thuyết 3 3 1 Trung bình cộng (giá trị kì vọng) 3 3 1 1 Đ.

Trung bình cộng (giá trị kì vọng)

Định nghĩa

Trung bình cộng, hay còn gọi là giá trị trung bình và giá trị kì vọng, là một khái niệm quen thuộc trong khoa học và cuộc sống hàng ngày Đối với một tập hợp D gồm k giá trị x1, x2, , xk, trung bình cộng của D được tính bằng cách tổng hợp các giá trị này và chia cho số lượng giá trị k.

Ý nghĩa

• Trong phân tích dữ liệu: giúp ta hình dùng được điểm trung tâm của tập giá trị.

Trong phân tích tình hình dịch Covid, giá trị kỳ vọng đại diện cho số lượng ca nhiễm hoặc tử vong của một quốc gia trong một khoảng thời gian nhất định Điều này giúp đánh giá mức độ nghiêm trọng và tình hình dịch bệnh, đồng thời cho phép so sánh khách quan giữa các quốc gia và châu lục khác nhau.

Tứ phân vị

Định nghĩa

Tứ phân vị trong thống kê mô tả là một phương pháp chia tập dữ liệu thành bốn phần bằng nhau hoặc nhỏ hơn Để tính toán tứ phân vị, dữ liệu cần được sắp xếp theo thứ tự từ nhỏ nhất đến lớn nhất.

Phân loại

Có 3 tứ phân vị chính, đó là:

Tứ phân vị thứ nhất (Q1) là giá trị nằm giữa số nhỏ nhất (minimum) và số trung vị (median) trong tập dữ liệu, thường được gọi là phần tư thực nghiệm thấp hơn hoặc thứ 25, vì 25% dữ liệu nằm dưới điểm này.

• Tứ phân vị thứ hai (Q 2 ): là giá trịtrung vị của một tập dữ liệu; do đó50% dữ liệu nằm dưới điểm này.

Tứ phân vị thứ ba (Q3) là giá trị nằm giữa giá trị trung vị (median) và số lớn nhất (maximum) trong một tập dữ liệu Nó được gọi là phần tư thực nghiệm trên hoặc thứ 75, vì 75% dữ liệu có giá trị thấp hơn điểm này.

Ý nghĩa

Trong thống kê, ba tứ phân vị chia một tập hợp dữ liệu đã được sắp xếp thành bốn phần có số lượng quan sát bằng nhau, giúp cung cấp thông tin về trung tâm và sự phân tán của dữ liệu Tứ phân vị thứ nhất và thứ ba cho thấy mức độ chênh lệch của dữ liệu và khả năng lệch về một phía.

Trong phân tích tình hình dịch Covid, tứ phân vị thứ hai (Q2 hay trung vị) có thể thay thế giá trị kỳ vọng để làm trung tâm cho tập dữ liệu Điều này đặc biệt hữu ích khi số liệu báo cáo có sự phân tán cao, tức là độ lệch chuẩn lớn, nhằm đánh giá chính xác tình hình dịch bệnh.

Cách thức xác định

Có nhiều phương pháp khác nhau để tính toán các tứ phân vị, và mỗi phương pháp có thể cho ra kết quả khác nhau nhưng đều được công nhận là đúng Một trong những cách tính tứ phân vị là xem xét một tập hợp D gồm k giá trị đã được sắp xếp, ký hiệu là D = {x1, x2, , xk}.

• Tính tứ phân vi thứ hai:

– Nếuk lẻ thì:Q2(D) =M edian(D) =xk−1

• Tính tứ phân vị thứ nhất và thứ ba:

1 Tìm trung vị (tứ phân vị thứ haiQ 2 )

Khi xử lý tập dữ liệu, nếu số lượng phần tử là lẻ, bạn cần loại bỏ giá trị trung vị và chia phần dữ liệu còn lại thành hai phần bằng nhau Ngược lại, nếu số lượng phần tử là chẵn, bạn chỉ cần chia tập dữ liệu gốc thành hai phần bằng nhau.

2 Tứ phân vị thứ nhấtQ 1 là trung vị của phần dữ liệu có giá trị thấp hơn Tứ phân vị thứ baQ 3 là trung vị của phần dữ liệu có giá trị cao hơn Sử dụng kí hiệu toán học, ta có thể viết:

Ví dụ 1: Cho một tập đã được sắp xếp 6, 7, 15, 36,

• Tính tứ phân vị thứ 2:Q2=x6= 40.

• Chia tập dữ liệu ra hai phần bằng nhau sau khi đã loại trung vị

Ví dụ 2: Cho một tập đã được sắp xếp 7, 15, 36, 39,

• Tính tứ phân vị thứ 2:Q 2 = x 3 +x 2 4 = 37.5.

• Chia tập dữ liệu ra hai phần bằng nhau:

Phương sai - Độ lệch chuẩn

Định nghĩa

Giá trị trung bình cộng cho phép xác định điểm trung tâm của tập dữ liệu, trong khi phương sai và độ lệch chuẩn cung cấp thông tin về sự phân bố của các giá trị xung quanh điểm trung tâm đó.

Phương sai được định nghĩa là trung bình của bình phương khoảng cách của mỗi điểm dữ liệu tới điểm trung bình (giá trị kỳ vọng- trung bình cộng).

(xi−M ean(D)) 2 k Độ lệch chuẩn được định nghĩa là căn bậc hai của phương sai

Ý nghĩa

Trong thống kê, phương sai lớn cho thấy các giá trị phân bố xa điểm kỳ vọng, làm cho giá trị kỳ vọng kém chính xác trong việc mô tả điểm trung tâm Ngược lại, phương sai nhỏ cho thấy các điểm dữ liệu gần gũi với điểm kỳ vọng, giúp giá trị kỳ vọng mô tả chính xác hơn về điểm trung tâm của tập dữ liệu.

Trong phân tích tình hình dịch bệnh, khi phương sai lớn, việc sử dụng trung vị (Q2) làm điểm trung tâm là cần thiết để đánh giá chính xác hơn tình hình dịch bệnh.

Trong hình 3.1, tập dữ liệu có phương sai nhỏ cho thấy các điểm dữ liệu phân bố gần giá trị kì vọng Do đó, giá trị kì vọng được sử dụng để mô tả trung tâm của tập dữ liệu một cách chính xác.

Trong trường hợp tập dữ liệu có phương sai lớn, các điểm dữ liệu thường phân bố xa giá trị kỳ vọng Do đó, việc sử dụng trung vị (median) để mô tả và đại diện cho trung tâm của tập dữ liệu là phương pháp phù hợp.

Khoảng tứ phân vị

Định nghĩa

Khoảng tứ phân vị của một tập dữ liệu được định nghĩa là

Ý nghĩa

Khoảng tứ phân vị chính là khoảng chứa50% các giá trị với trung vị của tập dữ liệu là giá trị trung tâm.

Outlier

Định nghĩa

VớiIQRlà khoảng tứ phân vị.Outlier là những giá trị nằm ngoài đoạn[Q 1 −1.5∗IQR;Q 3 + 1.5∗IQR].

Outlier là những điểm dữ liệu có sự khác biệt rõ rệt so với các dữ liệu khác trong tập hợp Chúng có thể phản ánh sự thay đổi về vị trí hoặc quy mô của quá trình đang được nghiên cứu Ngoài ra, outliers cũng có thể chỉ ra rằng mẫu dữ liệu có phân bố không bình thường.

Ý nghĩa

Các tham số thống kê như giá trị trung bình và tương quan rất nhạy cảm với các giá trị ngoại lệ, điều này ảnh hưởng đến độ tin cậy của kết quả thống kê Do đó, việc xem xét và xử lý các giá trị ngoại lệ là rất quan trọng để đảm bảo tính chính xác của các phân tích dữ liệu.

Đối với phân tích tình hình Covid, Outliers đóng vai trò quan trọng như một thước đo độ tin cậy của giá trị kì vọng, giúp đánh giá chính xác tình hình dịch bệnh của một khu vực nhất định.

Biểu đồ hộp (Box Plot)

Định nghĩa

Biểu đồ hộp (box plot) là một công cụ thống kê mô tả hiệu quả, giúp thể hiện các nhóm dữ liệu số thông qua các tứ phân vị, thể hiện độ lan truyền và độ lệch của dữ liệu Biểu đồ này không chỉ bao gồm phần ô mà còn có các đường kéo dài (whiskers) từ ô, cho thấy sự thay đổi bên ngoài tứ phân vị thứ nhất và thứ ba.

Các thành phần

Tùy thuộc theo yêu cầu và dữ liệu mà các thành phần và hình dạng của biểu đồ hộp có thể khác nhau Nhung nhìn chung đều có:

• Tứ phân vị thứ nhất (Q1).

• Tứ phân vị thứ ba (Q3).

• Tứ phân vị tứ hai (Q2) - trung vị.

• Khoảng tứ phân vị (IQR).

• Outlier: Có thể được loại bỏ nếu thấy cần thiết.

• Giá trị lớn nhất (Max) và giá trị nhỏ nhất (Min).

• Ngoài ra còn có thể có: giá trị kì vọng,

Hình 3.3 Các thành phần tạo nên một biểu đồ hộp.

Ý nghĩa

- Cấu tạo đơn giản, cho phép các nhà thống kê thực hiện kiểm tra đồ họa nhanh chóng trên một hoặc nhiều tập dữ liệu.

- Dùng để so sánh với các hàm mật độ xác suất (biểu đồ lý thuyết) cho phân phốiN(0,σ 2 )chuẩn và quan sát trực tiếp các đặc điểm của chúng.

Giá trị kỳ vọng gần với trung vị (Q2) thể hiện sự đại diện tốt hơn cho trung tâm của tập dữ liệu, trong khi phương sai của tập dữ liệu nhỏ hơn sẽ củng cố điều này.

- Trung vị (Q2) càng lệch về phía tập giá trị nào thì tập giá trị đó có số lần xuất hiện càng lớn trong tập dữ liệu mẫu.

Hình 3.4 Biểu đồ hộp và hàm mật độ xác suất phân phối N(0,σ 2 )

Tần số tích lũy - Biểu đồ tích lũy

Định nghĩa

Trong thống kê, tần số tích lũy được tính bằng cách cộng tần số của lớp này với tần số của lớp trước đó, tạo thành một tổng tích lũy Bảng phân phối tần số tích lũy hiển thị các tần số này trên các lớp khác nhau, cung cấp cái nhìn tổng quát về dữ liệu Biểu đồ tần số tích lũy (cumulative frequency plots) giúp minh họa thông tin theo dạng tích lũy, cho phép người đọc dễ dàng nhận diện xu hướng và phân bố dữ liệu.

Nó thể hiện số lượng hay tỉ lệ những quan sát nhỏ hơn hoặc bằng một giá trị cụ thể.

Thiết lập bảng tần số tích lũy

-Bước 1: Tính toán và thiết lập bảng tần số thông thường;

-Bước 2: Phân hoạch độ dài khoảng giá trị tần số thành các khoảng bằng nhau sao cho phù hợp;

-Bước 3: Tìm số lượng tần số cho mỗi khoảng;

-Bước 4: Tính toán tần số tích lũy bằn cách cộng dồn các số lượng các tần số tần số.

-Bước 5: Từ bảng tần số có thể vẽ biểu đồ tần số tích lũy.

Ý nghĩa

Tần suất tích lũy là một công cụ quan trọng giúp xác định số lượng quan sát nằm trên hoặc dưới một tần số cụ thể trong tập dữ liệu Việc sử dụng tần suất tích lũy cho phép người phân tích nắm bắt được xu hướng và phân bố của dữ liệu một cách hiệu quả.

- Các cột của biểu đồ càng ít, chiều cao các cột càng gần nhau thì số lượng quan sát càng gần nhau.

Hình 3.5 Biểu đồ tần số bình thường Hình 3.6.Biểu đồ tần số tích lũy tương ứng.

Đường trung bình động

Định nghĩa

Trong thống kê, đường trung bình động là một công cụ phân tích hữu ích, cho phép tạo ra các giá trị trung bình từ những tập con khác nhau trong một tập dữ liệu lớn.

Tính toán giá trị trung bình động đơn giản

Giá trị trung bình động đơn giản (SMD) là giá trị trung bình không trọng số của cáck dữ liệu trước đó

Đường trung bình động (MA) là công cụ quan trọng trong việc làm mịn dữ liệu và dự đoán biến động Khi giá trị k nhỏ, độ nhạy của đường trung bình MA tăng cao, khiến nó phụ thuộc nhiều vào dữ liệu Điều này dẫn đến việc khó khăn trong việc làm mịn đường biểu đồ và dự đoán chiều biến thiên.

Ý nghĩa

• Làm "mịn" biểu đồ đường, làm phẳng các biến động ngắn hạn,lọc nhiễu trong số liệu;

• Xác định xu hướng của dữ liệu trong thời gian dài hạn;

• Dữ đoán một số lượng nhỏ số liệu bị mất hoặc không được báo cáo thường xuyên.

Trong việc phân tích tình hình dịch Covid, cần đưa dữ liệu về số ca nhiễm và tử vong gần với giá trị chính xác, do có sai sót trong quá trình nhập liệu hoặc việc báo cáo không được thực hiện thường xuyên Điều này sẽ giúp dự đoán tình hình phát triển của dịch bệnh trong thời gian tới một cách hiệu quả hơn.

Hệ số tương quan

Hệ số tương quan Pearson

Hệ số tương quan Pearson (kí hiệu r) là một chỉ số dùng để đo lường mức độ tương quan tuyến tính giữa hai biến Nó xác định đường thẳng phù hợp nhất để mô tả mối quan hệ tuyến tính giữa hai biến này.

Xét một tập các điểm giá trịP chứanđiểm(x i , y i ), hệ số tương quan Pearson được tính bằng: rxy n

Trong đó,x¯vày¯lần lượt là giá trị trung bình của tập các giá trịx i vày i ,σ x vàσ y là độ lệch chuẩn của tập các giá trịx i vày i

Hệ số tương quan Pearson (r) sẽ nhận giá trị từ +1 đến-1, cho biết mức độ tương quan giữa hai biến:

• Vớir = 0, hai biến córất ít hoặc không có sự tương quan;r =1 hoặc r = -1, hai biếncó sự tương quan chặt chẽ.

• Với -1 < r < 0, hai biến có mối quan hệ tương quan nghịch, với0 < r < 1 Hai biến có mốiquan hệ tương quan thuận;

Khi hệ số tương quan tiến gần đến 1 hoặc -1, mối quan hệ giữa hai biến trở nên chặt chẽ hơn Ngược lại, nếu hệ số này tiến gần về 0, sự tương quan giữa hai biến sẽ giảm đi đáng kể.

Hình 3.8 Gía trị của hệ số pearson vè sự tương quan giữa hai biến số

Hồi quy tuyến tính, phương pháp bình phương cực tiểu

Hồi quy tuyến tính là một bài toán được phát biểu như sau:

Bài toán:Cho một tập các điểm dữ liệuP gồm các phần tử có dạng(x i , y i ) Tìm đường thẳng đi qua (hoặc gần đi qua) tất cả các điểm này.

Có nhiều phương pháp để thực hiện hồi quy tuyến tính, trong đó bao gồm phân tích thành phần chính (PCA) và phương pháp bình phương cực tiểu Trong phần này, chúng ta sẽ tập trung vào phương pháp đơn giản nhất, đó là bình phương cực tiểu.

Giả sử ta có tập dữ liệu P vớinđiểm dữ liệu và một mô hình tuyến tínhF(x) =w 0 +w 1 x.

• Tại mỗi điểmxi ta ký hiệuyˆi=F(xi).

X(ˆy i −y i ) 2 làm thước đo độ chính xác cho mô hình tuyến tínhF.

Chúng ta nhận thấy rằng khi đường thẳng y = F càng gần các điểm dữ liệu, thì giá trị L(F) càng nhỏ Điều này có nghĩa là L(F) = 0 khi y = F đi qua tất cả các điểm dữ liệu Tuy nhiên, việc này không phải lúc nào cũng khả thi, vì vậy chúng ta cần tìm một mô hình F mà hàm L đạt giá trị cực tiểu Để thực hiện điều này, chúng ta sử dụng phương pháp bình phương cực tiểu.

Xét tích vô hướng chính tắc, tức là(u,v) =u T v vớiuvàv là các vector trong không gianR n

Như vậy, đểL(F)đạt cực tiểu,

Xw−y phải đạt cực tiểu, hayXw−y⊥Col(X).

• Ta cần tìmw thỏa mãn với mọi vectorv,

Xw−y⊥Xv ⇐⇒ (Xv,Xw−y) =0 ⇐⇒ v T X T (Xw−y) =0

Vì v1 vàv2 tùy ý nên nên ta chọnv1 vàv2 để v1 v2 T

Vì các vector cột của X độc lập tuyến tính, chứng minh đượcX T X khả nghịch.

Vì vậy, ta có công thức (5) như sau: w= (X T X) −1 X T y

Công thức trên chính là công thức để tính hệ số tối ưu của đường thẳng đi qua chính xác nhất các điểm dữ liệu.

Tập dữ liệu mẫu

Dữ liệu gồm có 6 thuộc tính chính “iso_code,continent,location, date,new_cases,new_deaths” được lưu trong file dưới định dạng*csv:

1 iso_code: Định danh đất nước

4 date: Ngày quan sát với định dạng Month-Day-Year

5 new_cases: Số trường hợp COVID-19 mới được xác nhận

6 new_deaths: Số tử vong mới do COVID-19

Tiền xử lí

Cài đặt các packages (gói) và source file chứa các hàm tính toán cần thiết

Kiểm tra và cài đặt các packages cần thiết:

2 p a c m a n :: p _ l o a d ( dplyr , readxl , t i d y v e r s e , cowplot , r a n d o m c o l o R , plyr , s c a l e s , utf8 , matlib , h e r e )

Hàm hàmp_load() kiểm tra và chỉ cài đặt các gói chưa được cài đặt, mang lại hiệu quả cao hơn so với việc cài đặt từng gói bằng hàm install.packages() Danh sách chi tiết các gói được sử dụng sẽ được trình bày trong phụ lục.

File nguồn "function.R" chứa các hàm hỗ trợ cần thiết cho việc tính toán Để sử dụng, file này cần được lưu trong cùng thư mục với file thực thi.

Đọc dữ liệu từ file vào dataframe (khung dữ liệu)

Dữ liệu được lưu ở fileowid-covid-data.csvtại trong thứ mục đính kèm/L03-NHOM2-9562/Data

Tiến hành nhập dữ liệu từ file "owid-covid-data.csv" vào khung dữ liệu "COVID.DATA" trong R và hiển thị một số dòng đầu tiên của dữ liệu trên màn hình.

Kết quả hiển trị trên màn hình như sau: iso_code continent location date new_cases new_deaths

Kiểm tra cấu trúc của tập dữ liệu mẫu

Kết quả hiển thị trên màn hình như sau:

'data.frame': 163090 obs of 6 variables:

$ iso_code : chr "AFG" "AFG" "AFG" "AFG"

$ continent : chr "Asia" "Asia" "Asia" "Asia"

$ location : chr "Afghanistan" "Afghanistan" "Afghanistan" "Afghanistan"

$ new_deaths: int NA NA NA NA NA NA NA NA NA NA

Chuẩn hóa dữ liệu

Chuẩn hóa kiểu dữ liệu của thuộc tính date (ngày-giờ)

Để xử lý dữ liệu COVID, cần chuyển đổi thuộc tính date từ kiểu chuỗi kí tự sang định dạng ngày tháng Lệnh R dưới đây sẽ thực hiện việc chuyển đổi này để thuận tiện cho việc tính toán và phân tích số liệu sau này.

Sau đó, có thể dùng lại hàmstr()để xem lại cấu trúc của khung dữ liệu Kết quả cho thấy sự thay đổi:

Xử lí các giá trị âm trong new_cases và new_deaths

Trong tập dữ liệu gốc, ở thuộc tínhnew_casesvànew_deathscó một số giá trị âm, chẳng hạn như: iso_code continent location date new_cases new_deaths

Số ca nhiễm mới và số ca tử vong mới không thể có giá trị âm Các giá trị này có thể bị sai sót trong quá trình nhập liệu, do đó cần phải chuẩn hóa và sử dụng giá trị tuyệt đối bằng hàm abs() để đảm bảo tính chính xác.

Lọc ra những dữ liệu không phải là quốc gia

Thuộc tính "location" không chỉ đề cập đến một quốc gia cụ thể mà còn bao gồm các tên riêng đại diện cho nhóm các quốc gia có đặc điểm chung, như cùng lục địa hoặc nền kinh tế phát triển Ví dụ về các thuộc tính này bao gồm iso_code, continent, location, date, new_cases và new_deaths.

Để xử lý hiệu quả dữ liệu trong khung COVID.DATA, cần tách các thuộc tính continent có giá trị là ký tự rỗng ("") Việc này giúp cải thiện chất lượng và tính chính xác của dữ liệu trong R.

• Dòng 1: dùng filter() vàunique() để lọc và liệt kê các iso_codecó continent mang giá trị rỗng, lưu vào NOT.COUNTRY.

• Dòng 2: lọc các quan sát màiso_codecó trongNOT.COUNTRYra khỏi khung dữ liệu.

Sau khi lọc dữ liệu, ta thu được13 iso_codekhông phải là quốc gia nằm trong NOT.COUNTRY như sau:

"OWID_AFR" "OWID_ASI" "OWID_EUR" "OWID_EUN"

"OWID_HIC" "OWID_INT" "OWID_LIC" "OWID_LMC"

"OWID_NAM" "OWID_OCE" "OWID_SAM" "OWID_UMC"

Dùngstr(), thấy khung dữ liệu chỉ còn giữ lại 153316 quan sát thuộc về các quốc gia không nằm trong 13 tên riêng kia:

’data.frame’:153316 obs of 6 variables:

Dữ liệu được phân công riêng

Dữ liệu được phân công riêng bao gồm ba nước

Australia,New CaledoniavàNew Zealand, theo thời gian, dữ liệu được phân công là bốn tháng2, 5,

Tiến hành lọc các dữ liệu thuộc về ba nước trên và lưu vào khung dữ liệu riêngCHOSEN.DATA:

Kết quả phân tích

i) Nhóm câu hỏi liên quan đến tổng quát dữ liệu:

Dùng tập dữ liệu để trả lời các câu hỏi và trình bày theo đinh dạng.

Các hàm sau được xây dựng để hỗ trợ xử lí dữ liệu:

• list.obs(data, attr1, attr2): Liệt kê giá trị của thuộc tính và đếm số lần xuất hiện.

∗ data: khung dữ liệu muốn thao tác;

Chuỗi ký tự attr1 và attr2 đại diện cho tên thuộc tính trong khung dữ liệu, trong đó attr2 là thuộc tính tùy chọn và có thể để trống nếu bạn chỉ muốn gộp dữ liệu theo thuộc tính attr1.

Dữ liệu trả về là một khung dữ liệu, trong đó liệt kê các giá trị của các thuộc tính cùng với số lần xuất hiện (số quan sát) của từng giá trị trong cột Observations.

– Dòng 1, 2, 3: Nếuattr2 được nhập vào, gộp dữ liệu theo cảattr1vàattr2bằnggroup_by(), đếm số lần xuất hiện theo thuộc tính đã gộp bằngn()trongsumarise().

– Dòng 4, 5: Nếu attr2 không được nhập vào, chỉ gộp dữ liệu và đếm số lần xuất hiện theo attr1.

Nếu attr2 được nhập, khung dữ liệu trả về sẽ bao gồm các trường như attr1, attr2, Observations, giá trị attr1.1, giá trị attr2.1, số lượng 1, giá trị attr1.2, giá trị attr2.2, số lượng 2, giá trị attr1.3, giá trị attr2.3 và số lượng 3.

Nếu attr2 không được nhập, chỉ cần thao tác trên thuộc tính attr1 Các giá trị của attr1 bao gồm: giá trị attr1.1 với số lượng 1, giá trị attr1.2 với số lượng 2 và giá trị attr1.3 với số lượng 3.

• find.obs(data, func): Liệt kê giá trị có số lượng quan sát lớn nhất hoặc nhỏ nhất

∗ data: khung dữ liệu đã được xử lí từ hàmfind.obs (data, func)hoặc có cấu trúc tương tự.

Hàm nhận hai giá trị min hoặc max và trả về một khung dữ liệu, liệt kê các thuộc tính với số lần xuất hiện (số quan sát) lớn nhất hoặc nhỏ nhất cùng với giá trị tương ứng.

– Dữ liệu trả về: một khung dữ liệu chứa các giá trị mà có số quan sát lớn nhất hoặc nhỏ nhất.

1) Tập mẫu thu thập dữ liệu vào các năm nào?

Dùng unique()liệt kê các năm xuất hiện trong thuộc tínhdate, lưu vàoyear

Kết quả hiển thị trên màn hình:

Vậy tập mẫu thu thập dữ liệu vào 3 năm:

2) Số lượng đất nước và định danh mỗi đất nước (hiển thị 10 đất nước đầu tiên).

1 LOC ISO < - l i s t obs ( C O V I D DATA , ' iso_ c o d e ' , ' l o c a t i o n ' ) [c ( ' iso _ c o d e ' , ' l o c a t i o n ' ) ]

3 p r i n t ( r b i n d ( LOC ISO % >% h e a d ( 1 0 ) , c ( ' C o u n t : ' , n r o w ( LOC ISO ) ) ) , row n a m e s = F A L S E )

-Dòng 1: Liệt kê các đất nước và định danh bằng hàmlist.obs() và lưu dữ liệu đầy đủ vàoLOC.ISO.

- Dòng 2, 3: In theo định dạng 10 đất nước đầu tiên kèm định danh.

Vậy có225đất nước được thu thập dữ liệu

Kết quả hiển thị trên màn hình: iso_code Country

3) Số lượng châu lục trong tập mẫu

Viết code tương tự nhưi.2, và lưu dữ liệu vàoCONTINENTtrong R như sau:

Kết quả hiển thị trên màn hình:

Africa Asia Europe North America

Vậy có 225 quốc gia được thu thập số liệu thuộc một trong số6châu lục.

4) Số lượng dữ liệu thu thập được trong từng châu lục và tổng số.

- Dòng 1: Liệt kê các châu lục kèm số lượng dữ liệu thu thâp (số quan sát) bằng hàm list.obs() và lưu dữ liệu đầy đủ vào CONTINENT.OBS.

-Dòng 2: In theo định dạng cho trước.

Vậy có tổng số153316quán sát từ tất cả các châu lục.

Kết quả hiển thị trên màn hình: continent Observations

Số lượng dữ liệu thu thập được từ từng quốc gia sẽ được hiển thị cho 10 quốc gia cuối cùng và tổng số liệu Các đoạn mã tương tự như i.4 sẽ được viết để lưu trữ dữ liệu đầy đủ vào COUNTRY.OBS.

Kết quả hiển thị trên màn hình console: iso_code Observations

Vậy có tổng số153316quán sát từ tất cả các quốc gia.

Cần đảm bảo rằng tổng quan sát của tất cả các châu lục phải tương ứng với tổng quan sát của tất cả các quốc gia, và tổng số quan sát của tập dữ liệu mẫu sau khi loại bỏ các tên riêng không phải quốc gia cũng phải đạt 153,316 quan sát.

6) Cho biết các châu lục nào có lượng dữ liệu thu thập nhỏ nhất và giá trị nhó nhất đó?

1 p r i n t ( MIN C O N T I N E N T OBS < - f i n d obs ( l i s t obs ( C O V I D DATA , ' c o n t i n e n t ' ) , min ) , row n a m e s = F A L S E )

• list.obs (COVID.DATA, ’continent’) trả về khung dữ liệu chứa số lượng dữ liệu thu thập được theo châu lục, tương tự như

• find.obs ( , min) trả về khung dữ liệu chứa châu lục và lượng dữ liệu thu thập nhỏ nhất.

Kết quả hiển thị trên màn hình như sau: continent Observations

Vậy châu lục có lượng dữ liệu thu thập nhỏ nhất là Châu Đại Dương-Oceania, với tổng số quan sát là8993.

Lưu ý: Từi.7đếni.14, các đoạn code được viết tương tự như i.4 hoặc i.6, chỉ thay đổi một số tham số trong hai hàmlist.obs() vàfind.obs().

7) Cho biết các châu lục nào có lượng dữ liệu thu thập lớn nhất và giá trị lớn nhất đó?

Viết đoạn code tương tự như i.6 nhưng dùngfind.obs( , max), lưu dữ liệu ởMAX.CONTINENT.OBS:

1 p r i n t ( MAX C O N T I N E N T OBS < - f i n d obs ( l i s t obs ( C O V I D DATA , ' c o n t i n e n t ' ) , max ) , row n a m e s = F A L S E )

Kết quả hiển thị trên màn hình như sau: continent Observations

Vậy châu lục có lượng dữ liệu thu thập lớn nhất là Châu Phi-Africa, với tổng số quan sát là 38647.

8) Cho biết các nước nào có lượng dữ liệu thu thập nhỏ nhất và giá trị nhỏ nhất đó?

1 p r i n t ( MIN C O U N T R Y OBS < - f i n d obs ( l i s t obs ( C O V I D DATA , ' l o c a t i o n ' ) , min ) , row n a m e s = F A L S E )

Kết quả hiển thị trên màn hình như sau: location Observations

Vậy quốc gia có lượng dữ liệu thu thập nhỏ nhất là Pitcairn, với tổng số quan sát là85.

9) Cho biết các nước nào có lượng dữ liệu thu thập lớn nhất và giá trị lớn nhất đó?

1 p r i n t ( MAX C O U N T R Y OBS < - f i n d obs ( l i s t obs ( C O V I D DATA , ' l o c a t i o n ' ) , max ) , row n a m e s = F A L S E )

Kết quả hiển thị trên màn hình như sau: location Observations

Vậy các quốc gia có lượng dữ liệu thu thập lớn nhất làArgentina vàMexico, với tổng số quan sát là 781.

10) Cho biết các date nào có lượng dữ liệu thu thập nhỏ nhất và giá trị nhỏ nhất đó?

1 p r i n t ( MIN D A T E OBS < - f i n d obs ( l i s t obs ( C O V I D DATA , ' d a t e ' ) , min ) , row n a m e s = F A L S E )

Kết quả hiển thị trên màn hình như sau: date Observations

Vậy các ngày có lượng dữ liệu thu thập nhỏ nhất là từ1/1/2020đến1/3/2020, với tổng số bản ghi là 2.

11) Cho biết các date nào có lượng dữ liệu thu thập lớn nhất và giá trị lớn nhất đó?

1 p r i n t ( MAX D A T E OBS < - f i n d obs ( l i s t obs ( C O V I D DATA , ' d a t e ' ) , max ) , row n a m e s = F A L S E )

Kết quả hiển thị trên màn hình như sau: date Observations

Vậy các ngày có lượng dữ liệu thu thập lớn nhất là các ngày từ 8/22/2021 đến8/29/2021, với tổng số bản ghi là225.

12) Cho biết số lượng dữ liệu thu thập được theo date và châu lục.

Các lệnh R sau hiển thị số lượng dữ liệu thu thập được theo ngày và châu lục (dữ liệu đầy đủ được lưu ở DATE.CONTINENT.OBS).

Kết quả hiển thị trên màn hình như sau: date continent Observations

Dữ liệu sẽ được sắp xếp ưu tiên theo ngày trước và châu lục sau Màn hình chỉ hiển thị 5 dòng cuối cùng của bảng kết quả, trong khi bảng kết quả đầy đủ có chứa thông tin về ngày, châu lục và số lượng quan sát.

13) Cho biết số lượng dữ liệu thu thập được là nhỏ nhất theo date và châu lục.

Các lệnh R dưới đây cho thấy số lượng dữ liệu thu thập được là nhỏ nhất theo từng ngày và châu lục, với dữ liệu đầy đủ được lưu trữ tại MIN.DATE.CONTINENT.OBS.

1 MIN D A T E C O N T I N E N T OBS < - f i n d obs ( l i s t obs ( C O V I D DATA , ' d a t e ' , ' c o n t i n e n t ' ) , min )

Kết quả hiển thị trên màn hình như sau: date continent Observations 2020-01-01 North America 1

Dữ liệu sẽ được sắp xếp ưu tiên theo ngày trước và châu lục sau Màn hình chỉ hiển thị 5 dòng đầu tiên của bảng kết quả, trong khi bảng đầy đủ có tổng cộng 232 quan sát.

Vậy số lượng dữ liệu thu thập được là nhỏ nhất theo ngày và châu lục là1quan sát.

14) Cho biết số lượng dữ liệu thu thập được là lớn nhất theo date và châu lục.

Các lệnh R dưới đây cho thấy số lượng dữ liệu thu thập được lớn nhất theo ngày và châu lục, với dữ liệu đầy đủ được lưu trữ tại MAX.DATE.CONTINENT.OBS.

1 MAX D A T E C O N T I N E N T OBS < - f i n d obs ( l i s t obs ( C O V I D DATA , ' d a t e ' , ' c o n t i n e n t ' ) , max )

Kết quả hiển thị trên màn hình như sau: date continent Observations

Dữ liệu sẽ được sắp xếp ưu tiên theo ngày trước và châu lục sau Màn hình chỉ hiển thị 5 dòng đầu tiên trong bảng kết quả, trong khi bảng đầy đủ chứa 531 quan sát.

Vậy số lượng dữ liệu thu thập được là nhỏ nhất theo ngày và châu lục là55quan sát.

15) Với một date là k và châu lục t cho trước, hãy cho biết số lượng dữ liệu thu thập được.

• Xây dựng hàmdate.continent.find.obs(k, t)

∗ k: là chuỗi kí tự date cho trước.

Đoạn mã này sử dụng chuỗi ký tự chứa tên châu lục để thu thập dữ liệu theo ngày và châu lục cụ thể Kết quả trả về là số lượng quan sát được thu thập Để lọc ra các quan sát theo điều kiện đã định, hàm filter() được sử dụng, trong khi hàm nrow() cho phép xác định số dòng trong khung dữ liệu.

• Kết quả với một số bộ dữ liệu như sau:

> date.continent.find.obs("2020-09-07", "Africa")

> date.continent.find.obs("2023-09-07", "Africa")

> date.continent.find.obs("2020-01-01", "North America")

16) Có đất nước nào mà số lượng dữ liệu thu thập được là bằng nhau không? Hãy cho biết các iso_code của đất nước đó.

• Lệnh R sau hiển thị các đất nước có số lượng dữ liệu thu thập được là bằng nhau (dữ liệu đầy đủ được lưu ởGROUP.OBS).

– list.obs(COVID.DATA,’location’): tạo khung dữ liệu liệt kê các châu lục cùng số lượng quan sát,tương tự nhưCONTINENT.OBS

– group_by(Observations)vàsummarise()gộp dữ liệu theoObservationsvà liệt kê các nước có cùng số lượng quan sát.

• Kết quả thu được88nhóm nước có cùng chung số lượng quan sát, liệt kê5 nhóm nước cuối cùng:

760 China , Japan , Macao , South Korea , United States

17) Liệt kê iso_code, tên đất nước mà chiều dài iso_code lớn hơn 3.

1 p r i n t ( S P E C I A L ID < - LOC ISO [( n c h a r ( LOC ISO $ iso _ c o d e ) > 3) , ] , row n a m e s = F A L S E )

Kết hiển thị trên màn hình như sau: iso_code Country

Có hai quốc gia, Cyprus và Kosovo, cần được xem xét trong bối cảnh thống kê về dịch COVID-19 Cần tính toán số liệu thống kê cho từng quốc gia liên quan đến số ca nhiễm và tử vong do coronavirus được báo cáo mới.

• Chuẩn hóa dữ liệu: Các dữ liệu trốngNA (xuất hiện do không được báo cáo thường xuyên) hầu như không có giá trị trong mô tả thống kê.

Sử dụng phương thức complete.cases() để loại bỏ các quan sát không có báo cáo về số ca nhiễm mới (new_cases) và số ca tử vong mới (new_deaths), sau đó lưu trữ dữ liệu vào hai khung dữ liệu mới là NEW.CASES và NEW.DEATHS.

Một phần dữ liệu trongNEW.CASES: location new_cases

Một phần dữ liệu trongNEW.DEATHS: location new_deaths

• Xây dựng các hàm tìm cáctứ phân vị vàsố lượng Outlier:

– Tham số đầu vào: attr: là một vector chứa dữ liệu cần xử lí

– Dữ liệu trả về: dạng số là các tứ phân vị và số lượng Outliers trong tập dữ liệu.

– Các hàmQ1()vàQ3()là hiện thực của công thức (2) và (3) trong cơ sở lí thuyết.

– HàmQ2()xây dựng dựa trênmedian(): hàm tìm trung vị

– HàmOutliers()đếm số quan sát thỏa điều kiện Outlier bằng sum()

1) Tính giá trị nhỏ nhất, lớn nhất

• Số ca nhiễm nhỏ nhất và lớn nhất được báo cáo:

1 p r i n t d a t a f r a m e ( MIN MAX C A S E S < - NEW C A S E S % >% g r o u p _ by ( C o u n t r y = l o c a t i o n ) % >% d p l y r :: s u m m a r i s e ( Min _ c a s e s = min ( new _ c a s e s ) , Max _ c a s e s = max ( new _ c a s e s ) ) , row n a m e s = F A L S E )

– min(new_cases)trả về giá trị nhỏ nhất của số ca nhiễm mới,max(new_cases)trả về giá trị lớn nhất của số ca nhiễm mới.

– Khung dữ liệu kết quả được lưu ở

Kết quả hiển thị trên màn hình như sau:

Country Min_cases Max_cases

• Số ca tử vong nhỏ nhất và lớn nhất được báo cáo:

1 p r i n t d a t a f r a m e ( MIN MAX D E A T H S < - NEW D E A T H S % >% g r o u p _ by ( C o u n t r y = l o c a t i o n ) % >% d p l y r :: s u m m a r i s e ( Min _ d e a t h s = min ( new _ d e a t h s ) , Max _ d e a t h s = max ( new _ d e a t h s ) ) , row n a m e s = F A L S E ) Đoạn code được viết tương tự như trường hợp số ca nhiễm và lưu kết quả vào:

Kết quả hiển thị trên màn hình như sau:

Country Min_deaths Max_deaths

Ngày đăng: 04/06/2022, 20:51

HÌNH ẢNH LIÊN QUAN

• Trong phân tích tình hình dịch bệnh: khi - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
rong phân tích tình hình dịch bệnh: khi (Trang 6)
Hình 3.1. Tập dữ liệu có phương sai nhỏ, các các điểm dữ liệu phân bố gần giá trị kì vọng (mean) nên dùng giá trị kì vọng để mô tả (đại diện) cho trung tâm tập dữ liệu. - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
Hình 3.1. Tập dữ liệu có phương sai nhỏ, các các điểm dữ liệu phân bố gần giá trị kì vọng (mean) nên dùng giá trị kì vọng để mô tả (đại diện) cho trung tâm tập dữ liệu (Trang 6)
Hình 3.4. Biểu đồ hộp và hàm mật độ xác suất phân phối N(0,σ2) - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
Hình 3.4. Biểu đồ hộp và hàm mật độ xác suất phân phối N(0,σ2) (Trang 8)
Hình 3.5. Biểu đồ tần số bình thường. Hình 3.6. Biểu đồ tần số tích lũy tương ứng. - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
Hình 3.5. Biểu đồ tần số bình thường. Hình 3.6. Biểu đồ tần số tích lũy tương ứng (Trang 9)
• Trong việc phân tích tình hình dịch Covid: Đưa dữ liệu về số ca nhiễm/ tử vong về gần với giá trị chính xác - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
rong việc phân tích tình hình dịch Covid: Đưa dữ liệu về số ca nhiễm/ tử vong về gần với giá trị chính xác (Trang 9)
Hình 3.7. Ứng dụng của đường trung bình động trong việc làm &#34;mịn&#34; dữ liệu và dự đoán biến động. - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
Hình 3.7. Ứng dụng của đường trung bình động trong việc làm &#34;mịn&#34; dữ liệu và dự đoán biến động (Trang 9)
Hình 3.8. Gía trị của hệ số pearson vè sự tương quan giữa hai biến số - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
Hình 3.8. Gía trị của hệ số pearson vè sự tương quan giữa hai biến số (Trang 10)
Giả sử ta có tập dữ liệ uP vớ in điểm dữ liệu và một mô hình tuyến tính F(x )= w0 + w1 x. - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
i ả sử ta có tập dữ liệ uP vớ in điểm dữ liệu và một mô hình tuyến tính F(x )= w0 + w1 x (Trang 10)
1 X Ty vT - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
1 X Ty vT (Trang 11)
Điều này không phải lúc nào cũng khả thi, ta sẽ tìm mô hình F mà hà mL đạt giá trị cực tiểu - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
i ều này không phải lúc nào cũng khả thi, ta sẽ tìm mô hình F mà hà mL đạt giá trị cực tiểu (Trang 11)
1 str( COVID.D AT A) - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
1 str( COVID.D AT A) (Trang 13)
Kết quả hiển thị trên màn hình như sau: - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
t quả hiển thị trên màn hình như sau: (Trang 13)
Kết quả hiển thị trên màn hình: &gt; year - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
t quả hiển thị trên màn hình: &gt; year (Trang 15)
Kết quả hiển thị trên màn hình như sau: location Observations - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
t quả hiển thị trên màn hình như sau: location Observations (Trang 18)
Kết hiển thị trên màn hình như sau: iso_codeCountry OWID_CYN Northern Cyprus OWID_KOSKosovo - BTL Cấu trúc rời rạc  Chủ đề: Phân tích tình hình dịch Covid 19 bằng R
t hiển thị trên màn hình như sau: iso_codeCountry OWID_CYN Northern Cyprus OWID_KOSKosovo (Trang 20)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w