Họ và Tên: Châu A Kiệt

MSSV: 2121001560

Lớp: 21DTL01

1 Bài Tập tuần 7

1.1 Giới thiệu về Web Scraping

Web scraping, web harvesting hay còn gọi là web data extraction là quá trình cào dữ liệu được sử dụng để trích xuất dữ liệu từ các website. Các phần mềm web scraping truy cập vào website bằng giao thức HTTP hoặc bằng web browser để lấy ra các dữ liệu mà chúng ta cần sử dụng.

 Web scraping chính là cách giúp chúng ta trích xuất dữ liệu từ các trang web một cách tự động. Kỹ thuật này chủ yếu tập trung vào việc chuyển đổi dữ liệu phi cấu trúc (HTML) trên web thành dữ liệu có cấu trúc (cơ sở dữ liệu, bảng tính,…).

 Không giống như screen scraping, chỉ sao chép các pixel hiển trị trên màn hình. Web scraping trích xuất mã HTML bên dưới và cùng với nó, dữ liệu được lưu trữ trong database. Sau đó, scraper có thể sao chép toàn bộ nội dung website ở nơi khác, điển hình là RStudio. Với lập trình R, chúng ta hoàn toàn có thể cập nhật các dữ liệu thay đổi mới mỗi ngày trên 1 website chỉ bằng cách chạy toàn bộ file Rds trên RStudio hoặc dùng tổ hợp phím (Ctrl+Alt+Shift+P)
 

1.2 WEB SCAPING DATA - Giá Gas ở Việt Nam trong 30 ngày

Investing.com là một nền tảng cung cấp dữ liệu, bảng báo giá theo thời gian thực, biểu đồ, công cụ tài chính, tin nóng và các bài phân tích trên 250 sàn giao dịch trên khắp thế giới với 44 phiên bản ngôn ngữ. Với hơn 21 triệu người dùng hàng tháng và hơn 180 triệu phiên giao dịch, Investing.com là một trong ba trang web tài chính hàng đầu thế giới theo SimilarWeb và Alexa.

Trong đề tài này sẽ sử dụng gói rvest trong R để scrape dữ liệu lịch sử thị trường của Gas trên thị trường Việt Nam trong web investing.com với đường link: https://www.investing.com/equities/petrovietnam-gas-jscrp-historical-data

Trước hết, chúng ta cần sử dụng các thư viện package cần dùng vào R để thực hành:

  • Package “rvest”: Gói để thực hiện chức năng Scrape dữ liệu

  • Package “tidyverse”: Gói dùng để hỗ trợ cho các việc trực quan hóa dữ liệu và cẽ đồ thì

  • Package “tidyr” và “dplyr”: là 2 gói hỗ trợ lẫn nhau để xử lý các dataframe

library(rvest)
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.2     ✔ readr     2.1.4
## ✔ forcats   1.0.0     ✔ stringr   1.5.0
## ✔ ggplot2   3.4.2     ✔ tibble    3.2.1
## ✔ lubridate 1.9.2     ✔ tidyr     1.3.0
## ✔ purrr     1.0.1     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter()         masks stats::filter()
## ✖ readr::guess_encoding() masks rvest::guess_encoding()
## ✖ dplyr::lag()            masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(tidyr)
library(dplyr)

Bắt đầu vào việc đầu tiên là lấy dứ liệu Gas trên trang Web

url <- read_html("https://www.investing.com/equities/petrovietnam-gas-jscrp-historical-data")
Gas <- url %>% html_table(fill= T)
Gas = Gas[[2]]
head(Gas)
## # A tibble: 6 × 7
##   Date       Price    Open     High      Low      Vol.    `Change %`
##   <chr>      <chr>    <chr>    <chr>     <chr>    <chr>   <chr>     
## 1 07/17/2023 99,000.0 99,100.0 99,200.0  98,100.0 514.10K 0.00%     
## 2 07/14/2023 99,000.0 99,500.0 100,500.0 98,500.0 695.20K -0.30%    
## 3 07/13/2023 99,300.0 97,000.0 99,600.0  96,600.0 1.37M   +2.90%    
## 4 07/12/2023 96,500.0 97,600.0 97,600.0  96,200.0 568.50K -0.72%    
## 5 07/11/2023 97,200.0 97,800.0 98,000.0  97,000.0 719.60K -0.31%    
## 6 07/10/2023 97,500.0 96,500.0 97,600.0  96,400.0 1.13M   +1.56%
data.table::data.table(Gas)
##           Date    Price     Open      High      Low    Vol. Change %
##  1: 07/17/2023 99,000.0 99,100.0  99,200.0 98,100.0 514.10K    0.00%
##  2: 07/14/2023 99,000.0 99,500.0 100,500.0 98,500.0 695.20K   -0.30%
##  3: 07/13/2023 99,300.0 97,000.0  99,600.0 96,600.0   1.37M   +2.90%
##  4: 07/12/2023 96,500.0 97,600.0  97,600.0 96,200.0 568.50K   -0.72%
##  5: 07/11/2023 97,200.0 97,800.0  98,000.0 97,000.0 719.60K   -0.31%
##  6: 07/10/2023 97,500.0 96,500.0  97,600.0 96,400.0   1.13M   +1.56%
##  7: 07/07/2023 96,000.0 95,700.0  96,600.0 95,300.0 672.50K   +0.84%
##  8: 07/06/2023 95,200.0 95,000.0  96,500.0 94,700.0   1.37M   +0.95%
##  9: 07/05/2023 94,300.0 95,300.0  95,300.0 94,300.0 410.40K   -0.84%
## 10: 07/04/2023 95,100.0 94,400.0  95,400.0 94,100.0 498.40K   +1.17%
## 11: 07/03/2023 94,000.0 93,800.0  94,500.0 93,600.0 380.90K   +1.08%
## 12: 06/30/2023 93,000.0 94,600.0  95,000.0 93,000.0 681.40K   -1.69%
## 13: 06/29/2023 94,600.0 95,500.0  95,800.0 94,600.0 710.10K   -0.84%
## 14: 06/28/2023 95,400.0 96,900.0  96,900.0 95,400.0 762.50K   -0.93%
## 15: 06/27/2023 96,300.0 96,700.0  97,000.0 96,000.0 510.60K   +0.31%
## 16: 06/26/2023 96,000.0 95,200.0  96,300.0 95,100.0 942.40K   +0.84%
## 17: 06/23/2023 95,200.0 96,300.0  96,300.0 95,000.0 628.30K   -0.42%
## 18: 06/22/2023 95,600.0 95,800.0  96,500.0 95,500.0 812.80K   -0.21%
## 19: 06/21/2023 95,800.0 96,500.0  96,500.0 95,300.0 483.50K   -0.73%
## 20: 06/20/2023 96,500.0 95,200.0  96,500.0 94,800.0 508.20K   +1.37%
## 21: 06/19/2023 95,200.0 95,700.0  96,900.0 95,200.0 637.90K   -0.31%
##           Date    Price     Open      High      Low    Vol. Change %

Giải thích các biến của dataset Gas:

  • Date: ngày

  • Price: giá thị trường của Gas VND

  • Open: giá mở bán của Gas VND

  • High: giá cao nhất trong ngày của Gas VND

  • Low: giá thấp nhất trong ngày của Gas VND

1.3 Phân tích chuỗi thời gian dữ liệu giá Gas

1.3.1 Xử lý dữ liệu giá Gas

1.3.1.1 Chuyển vecto character thành numberic

Dữ liệu thô ban đầu được scrape từ web là một dữ liệu dạng “character” chứ không phải dạng vecto số “numberic”. Vì vậy chúng ta cần dùng hàm as.numberic() để biến đổi dữ liệu gốc thành dữ liệu số để thực hiện được phân tích

Price <- Gas$Price
Gas_Price <- as.numeric(gsub(",","",Price))

1.3.1.2 Sắp xếp thứ tự cho phù hợp cho phân tích

Dữ liệu trên web investing.com được sắp xếp theo thứ tự ngày gần nhất đến ngày xa nhất. Như vậy trong quá trình phân tích sẽ có một số khó khăn khi dữ liệu không phải từ trái sang phải. Như vậy, tôi sẽ đảo ngược vecto Giá Gas bằng hàm rev()

Gas_Price_rev <- rev(Gas_Price)
Gas_Price_rev
##  [1] 95200 96500 95800 95600 95200 96000 96300 95400 94600 93000 94000 95100
## [13] 94300 95200 96000 97500 97200 96500 99300 99000 99000

1.3.1.3 Chuyển đổi thành chuỗi thời gian

gas_price <- ts(Gas_Price)
gas_price
## Time Series:
## Start = 1 
## End = 21 
## Frequency = 1 
##  [1] 99000 99000 99300 96500 97200 97500 96000 95200 94300 95100 94000 93000
## [13] 94600 95400 96300 96000 95200 95600 95800 96500 95200

1.4 Vẽ đồ thị

plot.ts(gas_price,ylab="Giá của Gas",xlab="30 ngày gần đây", main="Đồ thị giá của giá Gas trong 30 ngày gần nhất")

1.5 Tính toán trên dữ liệu

gas <- ts(Gas)
summary(gas)
##       Date        Price            Open             High             Low       
##  Min.   : 1   Min.   : 1.00   Min.   : 1.000   Min.   : 1.000   Min.   : 1.00  
##  1st Qu.: 6   1st Qu.: 6.00   1st Qu.: 5.000   1st Qu.: 6.000   1st Qu.: 6.00  
##  Median :11   Median : 9.00   Median : 9.000   Median : 8.000   Median :11.00  
##  Mean   :11   Mean   : 8.81   Mean   : 9.286   Mean   : 8.238   Mean   :10.52  
##  3rd Qu.:16   3rd Qu.:12.00   3rd Qu.:13.000   3rd Qu.:11.000   3rd Qu.:15.00  
##  Max.   :21   Max.   :16.00   Max.   :18.000   Max.   :15.000   Max.   :20.00  
##       Vol.         Change %     
##  Min.   : 1.0   Min.   : 1.000  
##  1st Qu.: 5.0   1st Qu.: 5.000  
##  Median :10.0   Median : 9.000  
##  Mean   :10.1   Mean   : 9.143  
##  3rd Qu.:15.0   3rd Qu.:13.000  
##  Max.   :20.0   Max.   :18.000

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

library(ggplot2)
Gas %>% ggplot(aes(x = Price)) +
  geom_bar(fill = "cornflowerblue", color = "red", binwidth = 5, stat = "count") +
  labs(x = "", y = "Số lượng", title = "Biểu đồ Giá")
## Warning in geom_bar(fill = "cornflowerblue", color = "red", binwidth = 5, :
## Ignoring unknown parameters: `binwidth`

1.7 Tìm hiểu 10 indicators của World Bank

World Bank (Ngân hàng Thế giới) là một tổ chức tài chính quốc tế nhằm hỗ trợ phát triển kinh tế và giảm nghèo đối với các quốc gia trên toàn cầu. Dưới đây là một số hoạt động chính của World Bank:

  • Cung cấp tài trợ và vay vốn

  • Hỗ trợ chính sách phát triển

  • Nghiên cứu và thông tin

  • Hỗ trợ ứng phó khẩn cấp

  • Xây dựng đối tác và hợp tác quốc tế

Package WDI trong R đề cập đến một gói phần mềm R được sử dụng để truy cập và sử dụng dữ liệu World Development indicators (WDI) từ Ngân hàng Thế giới.

Gói WDI trong R chứa các chức năng cho phép người dùng tải xuống và truy vấn các chỉ số WDI một cách dễ dàng từ dữ liệu WDI đã được thu thập và tổ chức sẵn. Điều này cho phép người dùng thực hiện phân tích và trực quan hóa dữ liệu WDI một cách thuận tiện trực tiếp trong môi trường R.

Để sử dụng gói WDI trong R, bạn cần cài đặt gói này bằng cách chạy lệnh install.packages(“WDI”). Sau đó, bạn có thể gọi gói WDI vào phiên làm việc R bằng cách sử dụng lệnh library(WDI).

Gói WDI trong R cung cấp các hàm như WDIsearch() để tìm kiếm thông tin về chỉ số WDI, WDIconc() để tải dữ liệu WDI và WDI() để truy vấn dữ liệu từ WDI. Bạn có thể tìm hiểu thêm về các hàm và cách sử dụng chúng trong tài liệu và ví dụ được cung cấp bởi gói WDI.

1.7.1 indicators dân sô ở Việt Nam

Truy xuất dữ liệu dân số của Hoa Kỳ từ 2010 đến 2022, indicator = “SP.POP.TOTL”, Chuyển đổi dữ liệu thành khung dữ liệu df , in kết quả ra và vẽ biểu đồ thể hiện dân số Việt Nam theo thời gian từ năm 2012 - 2022.

Sau đó in kết quả ra màn hình

Bạn có thể chuyển đổi nó thành khung dữ liệu

Sau đó vẽ biểu đồ

# Gọi các gói cần thiết
library(dplyr)
library(WDI)

# Lấy dữ liệu
population_data <- WDI(country = "VN", indicator = c("SP.POP.TOTL"), start = 2012, end = 2022)
print(population_data)
##    country iso2c iso3c year SP.POP.TOTL
## 1  Vietnam    VN   VNM 2022    98186856
## 2  Vietnam    VN   VNM 2021    97468029
## 3  Vietnam    VN   VNM 2020    96648685
## 4  Vietnam    VN   VNM 2019    95776716
## 5  Vietnam    VN   VNM 2018    94914330
## 6  Vietnam    VN   VNM 2017    94033048
## 7  Vietnam    VN   VNM 2016    93126529
## 8  Vietnam    VN   VNM 2015    92191398
## 9  Vietnam    VN   VNM 2014    91235504
## 10 Vietnam    VN   VNM 2013    90267739
## 11 Vietnam    VN   VNM 2012    89301326
df <- as.data.frame(population_data)
print(df)
##    country iso2c iso3c year SP.POP.TOTL
## 1  Vietnam    VN   VNM 2022    98186856
## 2  Vietnam    VN   VNM 2021    97468029
## 3  Vietnam    VN   VNM 2020    96648685
## 4  Vietnam    VN   VNM 2019    95776716
## 5  Vietnam    VN   VNM 2018    94914330
## 6  Vietnam    VN   VNM 2017    94033048
## 7  Vietnam    VN   VNM 2016    93126529
## 8  Vietnam    VN   VNM 2015    92191398
## 9  Vietnam    VN   VNM 2014    91235504
## 10 Vietnam    VN   VNM 2013    90267739
## 11 Vietnam    VN   VNM 2012    89301326

1.7.1.1 Đồ thị trực quan hóa

ggplot(df, aes(x = df$year, y = df$SP.POP.TOTL)) +
  geom_line() +
  labs(x = "Year", y = "Population", title = "Population of VN over Time") +
  theme_bw()

  • Nhận xét: Dân số của Việt Nam tăng dần theo thời gian từ năm 2012 - 2022, dựa vào biểu đồ thì chúng ta có thể thấy dân số Việt Nam tăng liên tục từ năm 2012 đến 2022

1.7.2 Tuổi thọ trung bình của dân số Việt Nam

indicator của Tuổi thọ trung bình của dân số Việt Nam = “SP.DYN.LE00.IN”

Làm tương tự như trên:

age <- WDI(indicator = "SP.DYN.LE00.IN", country = "VN",extra = TRUE, start = 2012, end = 2022)
print(age)
##    country iso2c iso3c year SP.DYN.LE00.IN status lastupdated
## 1  Vietnam    VN   VNM 2022             NA         2023-06-29
## 2  Vietnam    VN   VNM 2021         73.618         2023-06-29
## 3  Vietnam    VN   VNM 2020         75.378         2023-06-29
## 4  Vietnam    VN   VNM 2019         74.093         2023-06-29
## 5  Vietnam    VN   VNM 2018         73.976         2023-06-29
## 6  Vietnam    VN   VNM 2017         73.963         2023-06-29
## 7  Vietnam    VN   VNM 2016         73.938         2023-06-29
## 8  Vietnam    VN   VNM 2015         73.876         2023-06-29
## 9  Vietnam    VN   VNM 2014         73.855         2023-06-29
## 10 Vietnam    VN   VNM 2013         73.775         2023-06-29
## 11 Vietnam    VN   VNM 2012         73.704         2023-06-29
##                 region capital longitude latitude              income lending
## 1  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 2  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 3  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 4  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 5  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 6  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 7  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 8  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 9  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 10 East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 11 East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
df <- as.data.frame(age)
print(df)
##    country iso2c iso3c year SP.DYN.LE00.IN status lastupdated
## 1  Vietnam    VN   VNM 2022             NA         2023-06-29
## 2  Vietnam    VN   VNM 2021         73.618         2023-06-29
## 3  Vietnam    VN   VNM 2020         75.378         2023-06-29
## 4  Vietnam    VN   VNM 2019         74.093         2023-06-29
## 5  Vietnam    VN   VNM 2018         73.976         2023-06-29
## 6  Vietnam    VN   VNM 2017         73.963         2023-06-29
## 7  Vietnam    VN   VNM 2016         73.938         2023-06-29
## 8  Vietnam    VN   VNM 2015         73.876         2023-06-29
## 9  Vietnam    VN   VNM 2014         73.855         2023-06-29
## 10 Vietnam    VN   VNM 2013         73.775         2023-06-29
## 11 Vietnam    VN   VNM 2012         73.704         2023-06-29
##                 region capital longitude latitude              income lending
## 1  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 2  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 3  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 4  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 5  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 6  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 7  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 8  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 9  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 10 East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 11 East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD

1.7.2.1 Đồ thị trực quan hóa

ggplot(df, aes(x = year, y = SP.DYN.LE00.IN)) +
  geom_line(color="red") +
  labs(x = "year", y = "Tuổi thọ trung bình", title = "Tuổi thọ trung bình của dân số Việt Nam từ năm 2012-2022") +
  theme_bw()
## Warning: Removed 1 row containing missing values (`geom_line()`).

  • Nhận xét: Tuổi thọ trung bình của Việt Nam từ năm 2012 đến 2019 là 74, nhưng đên năm 2020 thì độ tuổi đạt cột mốc cao nhât và có xu hướng giảm dần đên năm 2022

1.7.3 GDP nước Việt Nam

GDP (Tổng sản phẩm quốc nội) chỉ là một con số kinh tế quan trọng được sử dụng để đo lường giá trị tổng sản phẩm và dịch vụ được sản xuất trong một nền kinh tế trong khoảng thời gian nhất định. GDP đo lường giá trị của tất cả các hàng hóa và dịch vụ cuối cùng được sản xuất trong một quốc gia. GDP thường được tính theo ba phương pháp chính: 1. Phương pháp sản xuất: Đo lường giá trị của tất cả các hàng hóa và dịch vụ được sản xuất bằng cách tính tổng giá trị gia tăng trong quá trình sản xuất. indicator GDP của nước Việt Nam là NY.GDP.MKTP.CD

ind <- WDIsearch('Economic')
d <- WDI(indicator = 'NY.GDP.MKTP.CD', country = 'VN', extra = TRUE, start = 2012, end = 2022)
print(d)
##    country iso2c iso3c year NY.GDP.MKTP.CD status lastupdated
## 1  Vietnam    VN   VNM 2022   408802379068         2023-06-29
## 2  Vietnam    VN   VNM 2021   366137590718         2023-06-29
## 3  Vietnam    VN   VNM 2020   346615750167         2023-06-29
## 4  Vietnam    VN   VNM 2019   334365257920         2023-06-29
## 5  Vietnam    VN   VNM 2018   310106472643         2023-06-29
## 6  Vietnam    VN   VNM 2017   281353626107         2023-06-29
## 7  Vietnam    VN   VNM 2016   257096001174         2023-06-29
## 8  Vietnam    VN   VNM 2015   239258340826         2023-06-29
## 9  Vietnam    VN   VNM 2014   233451484774         2023-06-29
## 10 Vietnam    VN   VNM 2013   213708830777         2023-06-29
## 11 Vietnam    VN   VNM 2012   195590647206         2023-06-29
##                 region capital longitude latitude              income lending
## 1  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 2  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 3  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 4  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 5  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 6  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 7  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 8  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 9  East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 10 East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD
## 11 East Asia & Pacific   Hanoi   105.825  21.0069 Lower middle income    IBRD

1.7.3.1 Đồ thị trực quan hóa

d <- as.data.frame(d)
ggplot(d, aes(x = year, y = NY.GDP.MKTP.CD)) +
  geom_line() +
  labs(x = "Year", y = "GDP", title = "GDP của nước Việt Nam  2012-2022") +
  theme_bw()

  • Nhận xét: Chúng ta có thể thấy GDP của Việt Nam có xu hướng tăng dần theo thời gian và đang có cơ sở để tiếp tục phát triển trong những năm tiếp theo

1.7.4 Chi tiêu tiêu dùng CPI nước Việt Nam

CPI (Consumer Price Index) là một chỉ số kinh tế được sử dụng để đo lường sự biến động của mức giá hàng hóa và dịch vụ tiêu dùng trong một quốc gia trong một khoảng thời gian nhất định. CPI giúp theo dõi sự thay đổi của mức giá tiêu dùng và đo lường mức lạm phát. indicator Chi tiêu tiêu dùng CPI nước Việt Nam là NE.CON.TOTL.CD

cpi <- WDI(country = "VN", indicator = "NE.CON.TOTL.CD", start = 2012, end = 2022)
print(cpi)
##    country iso2c iso3c year NE.CON.TOTL.CD
## 1  Vietnam    VN   VNM 2022             NA
## 2  Vietnam    VN   VNM 2021   238156402287
## 3  Vietnam    VN   VNM 2020   226845749102
## 4  Vietnam    VN   VNM 2019   222041632535
## 5  Vietnam    VN   VNM 2018   207221767495
## 6  Vietnam    VN   VNM 2017   191694260013
## 7  Vietnam    VN   VNM 2016   177744300063
## 8  Vietnam    VN   VNM 2015   167451023254
## 9  Vietnam    VN   VNM 2014   157193542179
## 10 Vietnam    VN   VNM 2013   144894817616
## 11 Vietnam    VN   VNM 2012   129380942961

1.7.4.1 Đồ thị trực quan hóa

d <- as.data.frame(cpi)
ggplot(d, aes(x = year, y = NE.CON.TOTL.CD)) +
  geom_line() +
 labs(x = "Year", y = "Chi tiêu  tiêu dùng", title = "Chi tiêu  tiêu dùng của nước Việt Nam  2012-2022") +
  theme_bw()
## Warning: Removed 1 row containing missing values (`geom_line()`).

  • Nhận xét: Chúng ta có thể thấy CPI của Việt Nam tăng dần xuyên suốt các mốc thời gian và có xu hương tiếp tục tăng trong những năm tiếp theo

1.7.5 Tỷ lệ nghèo của nước Việt Nam

Tỷ lệ nghèo (poverty rate) là một chỉ số đo lường tỷ lệ người dân trong một quốc gia hoặc khu vực nào đó có thu nhập dưới một mức ngưỡng cố định được xác định là mức nghèo. Mức ngưỡng nghèo thường được định nghĩa dựa trên mức thu nhập hàng năm hoặc mức tiêu thụ cần thiết để đáp ứng các nhu cầu cơ bản như thức ăn, chăm sóc sức khỏe, giáo dục và nhà ở. indicator Tỷ lệ nghèo của nước Việt Nam là SI.POV.DDAY

poverty <- WDI(country = "VN", indicator = "SI.POV.DDAY", start = 2012, end = 2022)
print(poverty)
##    country iso2c iso3c year SI.POV.DDAY
## 1  Vietnam    VN   VNM 2022          NA
## 2  Vietnam    VN   VNM 2021          NA
## 3  Vietnam    VN   VNM 2020         0.7
## 4  Vietnam    VN   VNM 2019          NA
## 5  Vietnam    VN   VNM 2018         1.2
## 6  Vietnam    VN   VNM 2017          NA
## 7  Vietnam    VN   VNM 2016         1.3
## 8  Vietnam    VN   VNM 2015          NA
## 9  Vietnam    VN   VNM 2014         1.9
## 10 Vietnam    VN   VNM 2013          NA
## 11 Vietnam    VN   VNM 2012         1.7

1.7.5.1 Đồ thị trực quan hóa

d <- as.data.frame(poverty)
ggplot(d, aes(x = year, y = SI.POV.DDAY)) +
  geom_line() +
  labs(x = "Year", y = "Tỷ lệ nghèo", title = "Tỷ lệ nghèo của nước Việt Nam  2012-2022") +
  theme_bw()
## Warning: Removed 2 rows containing missing values (`geom_line()`).

  • Nhận xét: Do dữ liệu không được cập nhật liên tục nên tỉ lệ nghèo ở Việt Nam chỉ hiển thị ở 1 số năm nhung dựa vào những năm gần dây thì thì tỷ lệ nghèo ở Việt Nam chạm ngưỡng mốc từ 1,5 đến 2 phần trăm. Điều này thể hiện số lượng người nghèo vẫn đang chiếm khác nhiều mặc dù chỉ là 2%, ví dự như dân sô 100 triệu chiếm 2% là 2 triệu dân số là người nghèo.

1.7.6 Lạm phát, Giá tiêu dùng

Lạm phát (inflation) là một khái niệm kinh tế mô tả tình trạng tăng lên của mức giá hàng hóa và dịch vụ trong một khoảng thời gian dài. Nó dẫn đến giảm giá trị của đồng tiền và làm mất mua lực của người tiêu dùng.

Giá tiêu dùng (consumer prices) là mức giá trung bình của các mặt hàng và dịch vụ mà người tiêu dùng mua hàng ngày. Đây bao gồm thực phẩm, nhà ở, giao thông vận tải, y tế, giáo dục, và nhiều mặt hàng và dịch vụ khác.

Lạm phát và giá tiêu dùng có một mối quan hệ chặt chẽ. Khi lạm phát tăng, giá tiêu dùng cũng tăng theo. Điều này đồng nghĩa với việc người tiêu dùng phải trả nhiều hơn để mua cùng một lượng hàng hóa và dịch vụ. Ngược lại, khi lạm phát giảm, giá tiêu dùng cũng giảm, và người tiêu dùng có thể mua được nhiều hơn với cùng một số tiền.

indicator Lạm phát, giá tiêu dùng là FP.CPI.TOTL.ZG

lamphat <- WDI(country = "VN", indicator = "FP.CPI.TOTL.ZG", start = 2012, end = 2022)
print(lamphat)
##    country iso2c iso3c year FP.CPI.TOTL.ZG
## 1  Vietnam    VN   VNM 2022      3.1565075
## 2  Vietnam    VN   VNM 2021      1.8347155
## 3  Vietnam    VN   VNM 2020      3.2209344
## 4  Vietnam    VN   VNM 2019      2.7958237
## 5  Vietnam    VN   VNM 2018      3.5396281
## 6  Vietnam    VN   VNM 2017      3.5202569
## 7  Vietnam    VN   VNM 2016      2.6682482
## 8  Vietnam    VN   VNM 2015      0.6312009
## 9  Vietnam    VN   VNM 2014      4.0845545
## 10 Vietnam    VN   VNM 2013      6.5926748
## 11 Vietnam    VN   VNM 2012      9.0947034

1.7.6.1 Biểu đồ trực quan hóa

d <- as.data.frame(lamphat)
ggplot(lamphat, aes(x = lamphat$year, y = lamphat$FP.CPI.TOTL.ZG)) +
  geom_line() +
 labs(x = "Year", y = "Lạm phát", title = "Lạm phát của nước Việt Nam  2012-2022") +
  theme_bw()

  • Nhận xét: Lạm phát ở nước Việt Nam từ hơn 7,5% vào năm 2012 giảm chạm đáy vào năm 2015, sau đó tiếp tục tăng ở mức trung bình từ 2,5 đến 3 phần trăm.

1.7.7 Tỷ lệ thất nghiệp

Tỷ lệ thất nghiệp (unemployment rate) là một chỉ số kinh tế quan trọng được sử dụng để đo lường tỷ lệ người lao động không có việc làm trong một quốc gia hoặc khu vực cụ thể trong một khoảng thời gian nhất định. Tỷ lệ thất nghiệp thường được tính dựa trên tỷ lệ phần trăm của người lao động thất nghiệp so với tổng số người lao động trong lực lượng lao động. indicator Tỷ lệ thất nghiệp của nước Việt Nam là SL.UEM.TOTL.ZS

unemployment <- WDI(country = "VN", indicator = "SL.UEM.TOTL.ZS", start = 2012, end = 2022)
print(unemployment)
##    country iso2c iso3c year SL.UEM.TOTL.ZS
## 1  Vietnam    VN   VNM 2022          1.923
## 2  Vietnam    VN   VNM 2021          2.380
## 3  Vietnam    VN   VNM 2020          2.100
## 4  Vietnam    VN   VNM 2019          1.680
## 5  Vietnam    VN   VNM 2018          1.160
## 6  Vietnam    VN   VNM 2017          1.870
## 7  Vietnam    VN   VNM 2016          1.850
## 8  Vietnam    VN   VNM 2015          1.850
## 9  Vietnam    VN   VNM 2014          1.260
## 10 Vietnam    VN   VNM 2013          1.320
## 11 Vietnam    VN   VNM 2012          1.030

1.7.7.1 Biểu đồ trực quan hóa

d1 <- data.frame(unemployment)
ggplot(d1, aes(x = unemployment$year , y = unemployment$SL.UEM.TOTL.ZS)) +
  geom_line() +
 labs(x = "Year", y = "Tỷ lệ thất nghiệp ", title = "Tỷ lệ thất nghiệp của nước Việt Nam  2012-2022") +
  theme_bw()

  • Nhận xét: Tỉ lệ thất nghiệp ở Việt Nam đang có tỉ lệ thấp nhất vào năm 2012 và có dấu hiệu tăng đền mức gần 2% vào năm 2017, sau đó giảm xuống mức 1,25% vào năm 2018, nhưng sau đó tăng nhanh chóng vượt mức 2% năm 2021.

1.7.8 Di cư ròng của nước Việt Nam

Di cư ròng (net migration) là sự chênh lệch giữa số người di cư vào một quốc gia hoặc khu vực và số người di cư ra khỏi nó trong một khoảng thời gian nhất định. Nó thường được tính bằng cách trừ số người di cư ra khỏi số người di cư vào. indicator của nước Việt Nam là : SM.POP.NETM

dicu <- WDI(country = "VN", indicator = "SM.POP.NETM", start = 2012, end = 2022)
print(dicu)
##    country iso2c iso3c year SM.POP.NETM
## 1  Vietnam    VN   VNM 2022          NA
## 2  Vietnam    VN   VNM 2021        -992
## 3  Vietnam    VN   VNM 2020       -2016
## 4  Vietnam    VN   VNM 2019       -4028
## 5  Vietnam    VN   VNM 2018       -3080
## 6  Vietnam    VN   VNM 2017       -3847
## 7  Vietnam    VN   VNM 2016       -4432
## 8  Vietnam    VN   VNM 2015       -4761
## 9  Vietnam    VN   VNM 2014       -4875
## 10 Vietnam    VN   VNM 2013       -4786
## 11 Vietnam    VN   VNM 2012       -4545

1.7.8.1 Biểu đồ trực quan hóa

d <- data.frame(dicu)
ggplot(d, aes(x = dicu$year , y = dicu$SM.POP.NETM)) +
  geom_line() +
 labs(x = "Year", y = "Di cư ròng ", title = " Di cư ròng của nước Việt Nam  2012-2022") +
  theme_bw()
## Warning: Removed 1 row containing missing values (`geom_line()`).

- Nhận xét: Chúng ta có thể thấy mức di cư trung bình từ năm 2012 đên 2019 là từ -5000 đên -3000, sau đó tăng lên còn -1000 năm 2021

  • Mức di cư ròng có số âm là vì số người đi định cư ở nước ngoài nhiều hơn số người di cư đên Việt Nam

1.7.9 Nợ của chính phủ trung ương của nước Việt Nam

indicator nợ chính phủ ở Việt Nam là GC.DOD.TOTL.GD.ZS

no <- WDI(country = "VN", indicator = "GC.DOD.TOTL.GD.ZS", start = 2012, end = 2022)
print(no)
##    country iso2c iso3c year GC.DOD.TOTL.GD.ZS
## 1  Vietnam    VN   VNM 2022                NA
## 2  Vietnam    VN   VNM 2021                NA
## 3  Vietnam    VN   VNM 2020                NA
## 4  Vietnam    VN   VNM 2019                NA
## 5  Vietnam    VN   VNM 2018                NA
## 6  Vietnam    VN   VNM 2017                NA
## 7  Vietnam    VN   VNM 2016                NA
## 8  Vietnam    VN   VNM 2015                NA
## 9  Vietnam    VN   VNM 2014                NA
## 10 Vietnam    VN   VNM 2013                NA
## 11 Vietnam    VN   VNM 2012                NA

1.7.9.1 Đồ thị trực quan hóa

d <- data.frame(no)
ggplot(d, aes(x = no$year , y = no$GC.DOD.TOTL.GD.ZS)) +
  geom_line() +
 labs(x = "Year", y = "Nợ của chính phủ trung ương ", title = " Nợ của chính phủ trung ương nước Việt Nam  2012-2022") +
  theme_bw()
## Warning: Removed 11 rows containing missing values (`geom_line()`).

Không thể cho ra kết luận do dữ liệu về nợ chính phủ ở Việt Nam không được cập nhật trên World Bank

1.8 Tạo Function xử lý công việc

Giả sử, tôi lấy dữ liệu mẫu từ trên web xuống và thực hiện các lệnh lập bảng, thực hiện các phép tính các biến số thống kê và vẽ đồ thị

library(rvest)
library(dplyr)
library(ggplot2)

scrape_website <- function(url) 
  # Tạo các đối tượng rỗng để lưu trữ dữ liệu
  data <- list()
  
  # Đọc nội dung trang web
  webpage <- read_html(url)
  
  # Xử lý và trích xuất dữ liệu từ trang web
  # Thay đổi các câu lệnh dưới đây dựa trên cấu trúc và cách tổ chức dữ liệu trên trang web cần Scrape
  
  # Ví dụ: Scraping tiêu đề các bài viết từ thẻ h2
  data$title <- webpage %>% html_nodes("h2") %>% html_text()
  
  # Ví dụ: Scraping đường dẫn của các bài viết từ thẻ a
  data$link <- webpage %>% html_nodes("a") %>% html_attr("href")
  
  # Tạo dataframe từ dữ liệu đã Scraped
  result <- as.data.frame(data)
   # Chuyển đổi kiểu dữ liệu
  df <- df %>% mutate_at(vars(-one_of(x, y)), as.numeric)
  
  # Tính các giá trị thống kê
  mean_value <- mean(df)
  median_value <- median(df)
  sd_value <- sd(df)
  min_value <- min(df)
  max_value <- max(df)
  
  # Tạo summary statistics
  summary_stats <- summary(df)
  
  # Tạo quantiles
  quantiles <- quantile(df, probs = c(0.25, 0.5, 0.75))
  
  # Tính toán
  result$count <- nrow(result) # Số lượng bài viết Scraped
  
  # Lập bảng
  table_result <- result %>% group_by(title) %>% summarise(count = n())
  
  # Đồ thị
  plot_result <- ggplot(data = table_result, aes(x = title, y = count)) +
    geom_bar(stat = "identity", fill = "cornflowerblue") +
    labs(x = "Tiêu đề", y = "Số lượng", title = "Biểu đồ số lượng bài viết theo tiêu đề") +
    theme_bw()
  # Trực quan hóa dữ liệu
  if (type == "scatter") {
    # Biểu đồ scatter plot
    ggplot(data, aes_string(x = x, y = y)) + 
      geom_point() +
      labs(x = x, y = y) +
      theme_minimal()
  } else if (type == "bar") {
    # Biểu đồ bar chart
    ggplot(data, aes_string(x = x, y = y)) + 
      geom_col() +
      labs(x = x, y = y) +
      theme_minimal()
  } else if (type == "line") {
    # Biểu đồ line chart
    ggplot(data, aes_string(x = x, y = y, group = 1)) + 
      geom_line() +
      labs(x = x, y = y) +
      theme_minimal()
  
  # Trả về kết quả
  return(list(result = result, table_result = table_result, plot_result = plot_result))
}

1.8.1 Áp dụng các hàm trên

library(rvest)
library(dplyr)
library(ggplot2)

scrape_website <- function(url) {
  # Tạo các đối tượng rỗng để lưu trữ dữ liệu
  data <- list()
  
  # Đọc nội dung trang web
  webpage <- read_html(url)
  
  # Xử lý và trích xuất dữ liệu từ trang web
  # Thay đổi các câu lệnh dưới đây dựa trên cấu trúc và cách tổ chức dữ liệu trên trang web cần scrape
  
  # Ví dụ: Scraping danh sách giá trị GDP từ bảng dữ liệu
  data$year <- webpage %>% html_nodes(".year-class") %>% html_text()
  data$gdp <- webpage %>% html_nodes(".gdp-class") %>% html_text()
  
  # Chuyển đổi kiểu dữ liệu
  data$year <- as.numeric(data$year)
  data$gdp <- as.numeric(data$gdp)
  
  # Tính toán
  mean_gdp <- mean(data$gdp)
  median_gdp <- median(data$gdp)
  max_gdp <- max(data$gdp)
  min_gdp <- min(data$gdp)
  
  # Lập bảng
  table_data <- data.frame(Year = data$year, GDP = data$gdp)
  
  # Đồ thị
  plot_data <- ggplot(data = table_data, aes(x = Year, y = GDP)) +
    geom_line(color = "blue") +
    labs(x = "Year", y = "GDP", title = "GDP trend over years") +
    theme_bw()
  
  # Trả về kết quả
  return(list(data = data, mean_gdp = mean_gdp, median_gdp = median_gdp, max_gdp = max_gdp, min_gdp = min_gdp, table_data = table_data, plot_data = plot_data))
}

# Ví dụ sử dụng hàm
url <- "https://example.com"  # Thay thế bằng URL thực tế của trang web chứa dữ liệu cần scrape

result <- scrape_website(url)
## Warning in max(data$gdp): no non-missing arguments to max; returning -Inf
## Warning in min(data$gdp): no non-missing arguments to min; returning Inf
# Truy cập các kết quả từ đối tượng 'result'
data <- result$data
mean_gdp <- result$mean_gdp
median_gdp <- result$median_gdp
max_gdp <- result$max_gdp
min_gdp <- result$min_gdp
table_data <- result$table_data
plot_data <- result$plot_data

2 Bài Tập tuần 6 (tổng hợp Từ tuần 1-5)

Tuần này em sẽ sử dụng 1 dataset khác tên là PakPC2017Pakistan của Muhammad Yaseen trong package PakPC2017 (do dataset đầu tiên bị hạn chế )

Tập dataset này là tổng dữ liệu dân số ở Pakistan 2017, tập dữ liệu gồm 272 quan sát và 12 biến bao gồm:

  1. Province: Tỉnh của Pakistan

  2. Division: các khu vực của tỉnh Balochistan của Pakitan

  3. District: Các quận trong tỉnh Balochistan của Pakitan

  4. ResStatus: Tình trạng cư trú

  5. Household: Số hộ gia đình

  6. Male: Dân số nam

  7. Female: Dân số nữ

  8. Transgender: Dân số chuyển giới

  9. Pop2017: Tổng dân số năm 2017

  10. Pop1998: Tổng dân số năm 1998

  11. SexRatio2017: Tỉ lệ giới tính của Pakistan năm 2017

  12. GrowthRate: Sự tăng trưởng trung bình từ năm 1998-2017

2.1 Phân tích dữ liệu

Đầu tiên, em sẽ gọi package PacPC2017 để lấy dữ liệu tập PakPC2017Pakistan

Sau đó, em sẽ gán tập dữ liệu PakPC2017Pakistan vào một biến tên là ‘pak’ và cho thấy 6 biến đầu của tập dữ liệu

Tiếp theo, em sẽ đặt tên cho các biến ở trong tập dữ liệu pak và loại bỏ các biến NA trong tập dữ liệu

library(PakPC2017,)
data("PakPC2017Pakistan")
pak <- na.omit(PakPC2017Pakistan)
names(pak) <- c('Pr','Div','Dis','Re','Ho','M','F','Tr','Po17','Po98','SR17','GR')
head(pak)
##     Pr              Div              Dis    Re     Ho      M      F Tr    Po17
## 1: KPK            Bannu            Bannu Rural 113735 565822 552097  8 1117927
## 2: KPK            Bannu            Bannu Urban   6258  27670  22294  1   49965
## 3: KPK            Bannu     Lakki Marwat Rural  87009 395953 390804  5  786762
## 4: KPK            Bannu     Lakki Marwat Urban  11042  45863  43553  4   89420
## 5: KPK Dera Ismail Khan Dera Ismail Khan Rural 150220 649934 614958  9 1264901
## 6: KPK Dera Ismail Khan Dera Ismail Khan Urban  51081 188859 173336 36  362231
##      Po98   SR17   GR
## 1: 627991 102.49 3.08
## 2:  47676 124.11 0.25
## 3: 443147 101.32 3.06
## 4:  46878 105.30 3.45
## 5: 634446 105.69 3.69
## 6: 218549 108.96 2.69
data.table::data.table(pak)
##               Pr              Div              Dis    Re     Ho      M      F
##   1:         KPK            Bannu            Bannu Rural 113735 565822 552097
##   2:         KPK            Bannu            Bannu Urban   6258  27670  22294
##   3:         KPK            Bannu     Lakki Marwat Rural  87009 395953 390804
##   4:         KPK            Bannu     Lakki Marwat Urban  11042  45863  43553
##   5:         KPK Dera Ismail Khan Dera Ismail Khan Rural 150220 649934 614958
##  ---                                                                         
## 247: Balochistan             Zhob          Sherani Rural  21213  84994  68115
## 248: Balochistan             Zhob             Zhob Rural  39094 142831 121465
## 249: Balochistan             Zhob             Zhob Urban   6868  25527  20721
## 250:   Islamabad        Islamabad        Islamabad Rural 165246 515855 475840
## 251:   Islamabad        Islamabad        Islamabad Urban 170936 539857 474887
##      Tr    Po17   Po98   SR17   GR
##   1:  8 1117927 627991 102.49 3.08
##   2:  1   49965  47676 124.11 0.25
##   3:  5  786762 443147 101.32 3.06
##   4:  4   89420  46878 105.30 3.45
##   5:  9 1264901 634446 105.69 3.69
##  ---                              
## 247:  7  153116  81684 124.78 3.35
## 248:  0  264296 149615 117.59 3.03
## 249:  0   46248  43843 123.19 0.28
## 250: 52  991747 276055 108.41 6.95
## 251: 81 1014825 529180 113.68 3.48

2.2 Các thuật toán được áp dụng

2.2.1 Tính trung bình của dân số các giới tính theo tình trạng cư trú

# Trung bình dân số Nam theo tình trạng cư trú
aggregate(pak$M,list(pak$Re), FUN="mean")
##   Group.1        x
## 1   Rural 513741.8
## 2   Urban 326242.9
# Trung bình dân số Nữ theo tình trạng cư trú
aggregate(pak$F,list(pak$Re), FUN="mean")
##   Group.1        x
## 1   Rural 495317.5
## 2   Urban 303568.2
# Trung bình dân số người chuyển giới  theo tình trạng cư trú
aggregate(pak$Tr,list(pak$Re), FUN="mean")
##   Group.1        x
## 1   Rural 21.12214
## 2   Urban 63.76667

Nhận xét:

  • Ở nhóm tình trạng cư trú Rural:

  • Ở dân số Nam thì tình trạng cư trú trung bình của các khảo sát là 513741.8

  • Ở dân số Nữ thì tình trạng cư trú trung bình của các khảo sát là 495317.5

  • Ở dân số Người chuyển giới thì tình trạng cư trú trung bình của các khảo sát là 21.12214

  • Ở nhóm tình trạng cư trú Urban:

  • Ở dân số Nam thì tình trạng cư trú trung bình của các khảo sát là 326242.9

  • Ở dân số Nữ thì tình trạng cư trú trung bình của các khảo sát là 303568.2

  • Ở dân số Người chuyển giới thì tình trạng cư trú trung bình của các khảo sát là 63.76667

2.2.2 Tính trung vị

median(pak$Po17, na.rm= F)
## [1] 489337

2.2.3 Độ lệch chuẩn

sd(pak$Po17)
## [1] 1059815

2.2.4 Phương sai

var(pak$Po17)
## [1] 1.123208e+12

2.2.5 Tính tổng

sum(pak$Po17)
## [1] 207774520

2.2.6 Thống kê dữ liệu

summary(pak$Po17)
##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##     3406   166497   489337   827787  1133436 11126285

2.3 Một số câu lệnh và hàm

2.3.1 Nhân tử Pipe

Nhân tử pipe kí hiệu là %>% (tổ hợp tắt trong window là ctr+shift+M) là một trong những phương thức giúp cách triển khai code trở nên gọn gàng hơn.

Nhân tử pipe là một thuộc tính trong package magrittr của Stefan Milton và được phát triển theo đề xuất của Tal Galili.

Ý tưởng của nhân tử pipe là triển khai thuật toán từ trong ra ngoài, trong đó kết quả của phép toán trước làm input cho phép toán sau

pa <- data.frame(a=c(1,2,3,4),b=c(5,6,7,8,9,10,11,12))
attach(pa)

2.3.2 Áp dụng nhân tử Pipe vào các hàm thống kê

3 Bài tập tuần 5

Ở tuần 5, em sẽ sử dụng gói data khác trong package PakPC2017 của Muhammad Yaseen, là data PakPc2017Pakistan là bộ dữ liệu gồm 12 biến và 272 quan sát được thống kê ở các khu vực của tỉnh Pakistan. Bộ dữ liệu này có thể có ther được sử dụng để nghiên cứu về dân số của các loại giới tính, tỉ lệ giới tính và tỉ lệ sinh trưởng của dân số năm 2017, bao gồm:

  1. Province: Tỉnh của Pakistan

  2. Division: các khu vực của tỉnh Balochistan của Pakitan

  3. District: Các quận trong tỉnh Balochistan của Pakitan

  4. ResStatus: Tình trạng cư trú

  5. Household: Số hộ gia đình

  6. Male: Dân số nam

  7. Female: Dân số nữ

  8. Transgender: Dân số chuyển giới

  9. Pop2017: Tổng dân số năm 2017

  10. Pop1998: Tổng dân số năm 1998

  11. SexRatio2017: Tỉ lệ giới tính của Pakistan năm 2017

  12. GrowthRate: Sự tăng trưởng trung bình từ năm 1998-2017

Bộ dữ liệu này có thể hữu ích để phân tích mối quan hệ của dân số của các loại giới tính so với dân số năm 2017, tỉ lệ sinh trưởng, tỉ lệ giới tính so với dân số năm 2017

3.1 Các loại biểu đồ

library(ggplot2)
library(PakPC2017)
data("PakPC2017Pakistan")
PakPC2017Pakistan <- na.omit(PakPC2017Pakistan)

3.1.1 Biểu đồ tân số của biến tình trạng cư trú ResStatus

ggplot(data=PakPC2017Pakistan,aes(x=ResStatus))+
  geom_bar(fill="blue")+
  labs(x="Tình trạng cư trú",y="tần số", title="Bảng tần số của tình trạng cư trú")+
  geom_text(stat="count",aes(label=after_stat(count)),vjust=-0.5)

Biểu đồ tần số của biến ResStatus trong dữ liệu là một biểu đồ cột (bar chart) được sử dụng để biểu diễn số lượng và phân bố của các giá trị trong biến ResStatus.

Trục x của biểu đồ đại diện cho các giá trị của biến ResStatus, trong trường hợp này là “Rural” và “Urban” tương ứng với biến định tính là 1 và 2

Trục y biểu thị tần số, tức là số lượng quan sát có giá trị tương ứng trên trục x. Biểu đồ này cho phép chúng ta dễ dàng so sánh số lượng Rural và Urban trong dữ liệu. Mỗi cột trên biểu đồ tương ứng với một giá trị trong biến ResStatus và tình trạng cư trú của cột thể hiện tần số, tức là số lượng quan sát có giá trị tương ứng.

Nhờ biểu đồ tần số này, chúng ta có thể nhận thấy tỉ lệ giữa Rural và Urban trong dữ liệu, liệu có sự chênh lệch đáng kể hay không. Ngoài ra, biểu đồ còn giúp chúng ta hiểu rõ hơn về phân phối của biến ResStatus trong dữ liệu và phân tích đặc điểm của từng nhóm tình trạng cư trú.

Dựa vào biểu đồ trên, chúng ta có thể rút ra một số nhận xét sau:

Sự chênh lệch giữa Rural và Urban không đáng kể . Biểu đồ cho thấy sự phân bố khá tương đối cân đối giữa tình trạng cư trú .

Biểu đồ cung cấp thông tin định tính về phân bố tình trạng cư trú trong dữ liệu mà không đưa ra các giá trị số liệu cụ thể.

Biểu đồ tần số giúp chúng ta nhanh chóng nhìn thấy tỉ lệ giữa Rural/Urban và có cái nhìn tổng quan về phân phối tình trạng cư trú trong dữ liệu.

Biểu đồ tần số là một công cụ hữu ích để trực quan hóa và hiểu rõ hơn về phân bố của biến ResStatus trong dữ liệu.

3.1.2 Biểu đồ phân phối của biến tỉnh của Pakistan (Province)

ggplot(data=PakPC2017Pakistan,aes(x=Province))+
  geom_bar(fill="red")+
  labs(x="Tỉnh",y="tần số", title="Bảng tần số của các tỉnh")+
  geom_text(stat="count",aes(label=after_stat(count)),vjust=-0.5)

Với bảng tần số với biến Province bao gồm 6 tỉnh lần lượt là Balochistan, FATA, Islamabad, KPK, Punjab và Sindh được lấy thống kê, tổng cộng 251 quan sát trên 272 sau khi đã loại bỏ các biến NA

Nhận xét:

  • Biểu đồ tần số cho thấy số lượng quan sát được lấy từ các tỉnh ở Pakistan

  • Nhìn vào biểu đồ, có thể thấy rằng các quan sát được lấy để thống kê đa số được từ các tỉnh Balochistan, KPK, Punjab và Sindh

  • Biểu đồ này có thể giúp ta chiểu được sự phân bố của các quan sát dân số ở các tỉnh ở Pakistan

3.1.3 Biểu đồ phân tán biến Division và GrowthRate

ggplot(data=PakPC2017Pakistan, aes(x=Division, y= GrowthRate))+
  geom_point()

Biểu đồ phân tán giữa Division và GrowthRate thể hiện mối quan hệ giữa các khu vực ở Pakistan trên phạm vi sự tăng trưởng trung bình. Mỗi điểm trên biểu đồ đại diện cho một tỉ lệ sinh trưởng trung bình và cũng tương ứng với một khu vực ở Pakistan

Nhìn vào biểu đồ, chúng ta có thể thấy một phân bố tương đối đồng đều của các điểm trên biểu đồ, không có mẫu rõ ràng của các nhóm hoặc mô hình nổi bật. Điều này cho thấy rằng không có mối quan hệ mạnh mẽ giữa các khu vực và tỉ lệ sinh trưởng trung bình. Mặc dù có một số điểm tập trung ở phạm vi cao hoặc thấp của cả hai biến, nhưng không có xu hướng rõ ràng được quan sát.

Điều này có thể chỉ ra rằng các khu vực ở Pakistan và tỉ lệ sinh trưởng trung bình không có mối tương quan cao nhất định trong các quan sát về dân số ở Pakistan. Có thể những yếu tố khác ngoài các yếu tố đang được sử dụng để đo lượng.

3.1.4 Biểu đồ phân tán giữa biến GrowthRate và Province theo tình trạng cư trú (ResStatus)

ggplot(data=PakPC2017Pakistan,aes(x=Province, y=GrowthRate, color= ResStatus))+
  geom_point()

Biểu đồ phân tán giữa Province và GrowthRate theo tình trạng cư trú là một biểu đồ phân tán hai chiều, trong đó trục x biểu thị giá trị của “Province”, trục y biểu thị giá trị của “GrowthRate”, và các điểm dữ liệu được màu sắc theo tình trạng cư trú.

Giải thích biểu đồ:

Biểu đồ cho thấy mối tương quan giữa Province và GrowthRate dựa trên tình trạng cư trú. Các điểm dữ liệu được phân bố trên mặt phẳng biểu đồ, với mỗi điểm đại diện cho dân số trong tập dữ liệu.

Trục x biểu thị giá trị của Province, thể hiện các tỉnh ở Pakistan.

Trục y biểu thị giá trị của GrowthRate, thể hiện tỉ lệ sinh trưởng.

Nhận xét biểu đồ:

Có một phân bố dữ liệu rải rác trên biểu đồ, cho thấy sự đa dạng về biến Province và GrowthRate

Có sự phân chia rõ rệt giữa các tình trạng cư trú. Các điểm dữ liệu của Rural và Urban được tách biệt và có xu hướng phân bố khá đồng đều trên biểu đồ. Đánh giá biểu đồ:

Biểu đồ phân tán giữa Province và GrowthRate theo giới tính giúp thấy được mối tương quan giữa hai biến trong từng nhóm tình trạng cư trú. Tuy nhiên, để hiểu rõ hơn về mối quan hệ này, cần xem xét các yếu tố khác, các biến khác có thể ảnh hưởng đến kết quả. Biểu đồ cũng cho thấy sự phân chia rõ rệt giữa các tình trạng cư trú, cho thấy một sự khác biệt trong sự phân bố giữa biến Province và GrowthRate

4 Bài tập tuần 4

Tuần này em sẽ sử dụng 1 dataset khác tên là PakPC2017Pakistan của Muhammad Yaseen trong package PakPC2017

Tập dataset này là tổng dữ liệu dân số ở Pakistan 2017, tập dữ liệu gồm 12 biến bao gồm:

  1. Province: Tỉnh của Pakistan

  2. Division: các khu vực của tỉnh Balochistan của Pakitan

  3. District: Các quận trong tỉnh Balochistan của Pakitan

  4. ResStatus: Tình trạng cư trú

  5. Household: Số hộ gia đình

  6. Male: Dân số nam

  7. Female: Dân số nữ

  8. Transgender: Dân số chuyển giới

  9. Pop2017: Tổng dân số năm 2017

  10. Pop1998: Tổng dân số năm 1998

  11. SexRatio2017: Tỉ lệ giới tính của Pakistan năm 2017

  12. GrowthRate: Sự tăng trưởng trung bình từ năm 1998-2017

4.1 Phân tích dữ liệu

Đầu tiên, em sẽ gọi package PacPC2017 để lấy dữ liệu tập PakPC2017Pakistan

Sau đó, em sẽ gán tập dữ liệu PakPC2017Pakistan vào một biến tên là ‘pak’ và cho thấy 6 biến đầu của tập dữ liệu

Tiếp theo, em sẽ đặt tên cho các biến ở trong tập dữ liệu pak

library(PakPC2017,)
data("PakPC2017Pakistan")
pak <- PakPC2017Pakistan
names(pak) <- c('Pr','Div','Dis','Re','Ho','M','F','Tr','Po17','Po98','SR17','GR')
head(pak)
##     Pr              Div              Dis    Re     Ho      M      F Tr    Po17
## 1: KPK            Bannu            Bannu Rural 113735 565822 552097  8 1117927
## 2: KPK            Bannu            Bannu Urban   6258  27670  22294  1   49965
## 3: KPK            Bannu     Lakki Marwat Rural  87009 395953 390804  5  786762
## 4: KPK            Bannu     Lakki Marwat Urban  11042  45863  43553  4   89420
## 5: KPK Dera Ismail Khan Dera Ismail Khan Rural 150220 649934 614958  9 1264901
## 6: KPK Dera Ismail Khan Dera Ismail Khan Urban  51081 188859 173336 36  362231
##      Po98   SR17   GR
## 1: 627991 102.49 3.08
## 2:  47676 124.11 0.25
## 3: 443147 101.32 3.06
## 4:  46878 105.30 3.45
## 5: 634446 105.69 3.69
## 6: 218549 108.96 2.69
data.table::data.table(pak)
##               Pr              Div              Dis    Re     Ho      M      F
##   1:         KPK            Bannu            Bannu Rural 113735 565822 552097
##   2:         KPK            Bannu            Bannu Urban   6258  27670  22294
##   3:         KPK            Bannu     Lakki Marwat Rural  87009 395953 390804
##   4:         KPK            Bannu     Lakki Marwat Urban  11042  45863  43553
##   5:         KPK Dera Ismail Khan Dera Ismail Khan Rural 150220 649934 614958
##  ---                                                                         
## 268: Balochistan             Zhob          Sherani Urban     NA     NA     NA
## 269: Balochistan             Zhob             Zhob Rural  39094 142831 121465
## 270: Balochistan             Zhob             Zhob Urban   6868  25527  20721
## 271:   Islamabad        Islamabad        Islamabad Rural 165246 515855 475840
## 272:   Islamabad        Islamabad        Islamabad Urban 170936 539857 474887
##      Tr    Po17   Po98   SR17   GR
##   1:  8 1117927 627991 102.49 3.08
##   2:  1   49965  47676 124.11 0.25
##   3:  5  786762 443147 101.32 3.06
##   4:  4   89420  46878 105.30 3.45
##   5:  9 1264901 634446 105.69 3.69
##  ---                              
## 268: NA      NA     NA     NA   NA
## 269:  0  264296 149615 117.59 3.03
## 270:  0   46248  43843 123.19 0.28
## 271: 52  991747 276055 108.41 6.95
## 272: 81 1014825 529180 113.68 3.48

4.2 Lập bảng

4.2.1 Lập bảng dân số Nam dựa vào khu vực trong tỉnh

Ở đây, em sẽ phân tổ biến M(dân số Nam) trong tập pak thành 3 nhóm (-5.82e+03,1.94e+06] (1.94e+06,3.88e+06] (3.88e+06,5.83e+06] lần lượt là Ít, Trung bình, Đông theo các khu vực trong tỉnh

cut(pak$M,3)
##   [1] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##   [4] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##   [7] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [10] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] <NA>                
##  [13] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [16] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] <NA>                
##  [19] (-5.82e+03,1.94e+06] <NA>                 (-5.82e+03,1.94e+06]
##  [22] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [25] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [28] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [31] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [34] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [37] (-5.82e+03,1.94e+06] <NA>                 (-5.82e+03,1.94e+06]
##  [40] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] <NA>                
##  [43] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [46] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [49] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [52] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [55] (-5.82e+03,1.94e+06] <NA>                 (-5.82e+03,1.94e+06]
##  [58] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] <NA>                
##  [61] (-5.82e+03,1.94e+06] <NA>                 (-5.82e+03,1.94e+06]
##  [64] <NA>                 (-5.82e+03,1.94e+06] <NA>                
##  [67] (-5.82e+03,1.94e+06] <NA>                 (-5.82e+03,1.94e+06]
##  [70] <NA>                 (-5.82e+03,1.94e+06] <NA>                
##  [73] (-5.82e+03,1.94e+06] <NA>                 (-5.82e+03,1.94e+06]
##  [76] <NA>                 (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [79] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [82] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [85] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [88] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [91] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [94] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
##  [97] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [100] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [103] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [106] (3.88e+06,5.83e+06]  (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [109] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [112] (-5.82e+03,1.94e+06] (1.94e+06,3.88e+06]  (-5.82e+03,1.94e+06]
## [115] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [118] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [121] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [124] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [127] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [130] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [133] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [136] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [139] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [142] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [145] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [148] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [151] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [154] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [157] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [160] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [163] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [166] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [169] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [172] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [175] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [178] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [181] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] <NA>                
## [184] (-5.82e+03,1.94e+06] <NA>                 (-5.82e+03,1.94e+06]
## [187] <NA>                 (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [190] (-5.82e+03,1.94e+06] <NA>                 (-5.82e+03,1.94e+06]
## [193] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [196] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [199] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [202] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [205] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [208] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [211] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [214] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [217] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [220] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [223] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [226] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [229] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [232] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [235] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [238] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [241] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [244] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [247] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [250] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [253] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [256] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [259] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [262] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [265] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [268] <NA>                 (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## [271] (-5.82e+03,1.94e+06] (-5.82e+03,1.94e+06]
## Levels: (-5.82e+03,1.94e+06] (1.94e+06,3.88e+06] (3.88e+06,5.83e+06]
pakM <- table(cut(pak$M,breaks=c(-5.82e+03,1.94e+06,3.88e+06,5.83e+06), labels=c("Ít","Trung bình","Đông")),pak$Div)
pakM
##             
##              Bannu Dera Ismail Khan Hazara Kohat Mardan Peshawar Malakand FATA
##   Ít             4                4      9     6      4        6       12    0
##   Trung bình     0                0      0     0      0        0        0    0
##   Đông           0                0      0     0      0        0        0    0
##             
##              Khyber Agency Kurram Agency Mohmand Agency North Waziristan Agency
##   Ít                     1             2              1                       2
##   Trung bình             0             0              0                       0
##   Đông                   0             0              0                       0
##             
##              Orakzai Agency South Waziristan Agency Bajaur Agency Fr Bannu
##   Ít                      1                       1             1        2
##   Trung bình              0                       0             0        0
##   Đông                    0                       0             0        0
##             
##              Fr DI Khan Fr Kohat Fr Lakki Marwat Fr Peshawar Fr Tank Rawalpindi
##   Ít                  1        1               1           1       1          8
##   Trung bình          0        0               0           0       0          0
##   Đông                0        0               0           0       0          0
##             
##              Sargodha Gujranwala Lahore Faisalabad Sahiwal Bahawalpur
##   Ít                8         12      7          7       6          5
##   Trung bình        0          0      0          1       0          1
##   Đông              0          0      1          0       0          0
##             
##              Dera Ghazi Khan Multan Larkana Sukkur Hyderabad Karachi
##   Ít                       8      8      10      6        18       8
##   Trung bình               0      0       0      0         0       0
##   Đông                     0      0       0      0         0       0
##             
##              Mirpur Khas Shaheed Benazirabad Kalat Makran Nasirabad Quetta Sibi
##   Ít                   6                   6    14      6        10     10   12
##   Trung bình           0                   0     0      0         0      0    0
##   Đông                 0                   0     0      0         0      0    0
##             
##              Zhob Islamabad
##   Ít           11         2
##   Trung bình    0         0
##   Đông          0         0
prop.table(pakM, margin = 2)
##             
##                  Bannu Dera Ismail Khan    Hazara     Kohat    Mardan  Peshawar
##   Ít         1.0000000        1.0000000 1.0000000 1.0000000 1.0000000 1.0000000
##   Trung bình 0.0000000        0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##   Đông       0.0000000        0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##             
##               Malakand FATA Khyber Agency Kurram Agency Mohmand Agency
##   Ít         1.0000000          1.0000000     1.0000000      1.0000000
##   Trung bình 0.0000000          0.0000000     0.0000000      0.0000000
##   Đông       0.0000000          0.0000000     0.0000000      0.0000000
##             
##              North Waziristan Agency Orakzai Agency South Waziristan Agency
##   Ít                       1.0000000      1.0000000               1.0000000
##   Trung bình               0.0000000      0.0000000               0.0000000
##   Đông                     0.0000000      0.0000000               0.0000000
##             
##              Bajaur Agency  Fr Bannu Fr DI Khan  Fr Kohat Fr Lakki Marwat
##   Ít             1.0000000 1.0000000  1.0000000 1.0000000       1.0000000
##   Trung bình     0.0000000 0.0000000  0.0000000 0.0000000       0.0000000
##   Đông           0.0000000 0.0000000  0.0000000 0.0000000       0.0000000
##             
##              Fr Peshawar   Fr Tank Rawalpindi  Sargodha Gujranwala    Lahore
##   Ít           1.0000000 1.0000000  1.0000000 1.0000000  1.0000000 0.8750000
##   Trung bình   0.0000000 0.0000000  0.0000000 0.0000000  0.0000000 0.0000000
##   Đông         0.0000000 0.0000000  0.0000000 0.0000000  0.0000000 0.1250000
##             
##              Faisalabad   Sahiwal Bahawalpur Dera Ghazi Khan    Multan
##   Ít          0.8750000 1.0000000  0.8333333       1.0000000 1.0000000
##   Trung bình  0.1250000 0.0000000  0.1666667       0.0000000 0.0000000
##   Đông        0.0000000 0.0000000  0.0000000       0.0000000 0.0000000
##             
##                Larkana    Sukkur Hyderabad   Karachi Mirpur Khas
##   Ít         1.0000000 1.0000000 1.0000000 1.0000000   1.0000000
##   Trung bình 0.0000000 0.0000000 0.0000000 0.0000000   0.0000000
##   Đông       0.0000000 0.0000000 0.0000000 0.0000000   0.0000000
##             
##              Shaheed Benazirabad     Kalat    Makran Nasirabad    Quetta
##   Ít                   1.0000000 1.0000000 1.0000000 1.0000000 1.0000000
##   Trung bình           0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##   Đông                 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##             
##                   Sibi      Zhob Islamabad
##   Ít         1.0000000 1.0000000 1.0000000
##   Trung bình 0.0000000 0.0000000 0.0000000
##   Đông       0.0000000 0.0000000 0.0000000

Dựa vào bảng trên, ta thấy đa số dân số nam ở các khu vực được thuộc nhóm Ít và chỉ một số ít nằm rải rác ở 2 nhóm còn lại

4.2.2 Lập bảng dân số Nữ theo từng khu vực trong tỉnh

Ở đây, em sẽ phân tổ biến F(dân số Nữ) trong tập pak thành 3 nhóm (-5.3e+03,1.77e+06] (1.77e+06,3.53e+06] (3.53e+06,5.31e+06] lần lượt là Ít, Trung bình, Đông theo các khu vực trong tỉnh

cut(pak$F,3)
##   [1] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##   [4] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##   [7] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [10] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] <NA>               
##  [13] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [16] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] <NA>               
##  [19] (-5.3e+03,1.77e+06] <NA>                (-5.3e+03,1.77e+06]
##  [22] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [25] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [28] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [31] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [34] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [37] (-5.3e+03,1.77e+06] <NA>                (-5.3e+03,1.77e+06]
##  [40] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] <NA>               
##  [43] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [46] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [49] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [52] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [55] (-5.3e+03,1.77e+06] <NA>                (-5.3e+03,1.77e+06]
##  [58] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] <NA>               
##  [61] (-5.3e+03,1.77e+06] <NA>                (-5.3e+03,1.77e+06]
##  [64] <NA>                (-5.3e+03,1.77e+06] <NA>               
##  [67] (-5.3e+03,1.77e+06] <NA>                (-5.3e+03,1.77e+06]
##  [70] <NA>                (-5.3e+03,1.77e+06] <NA>               
##  [73] (-5.3e+03,1.77e+06] <NA>                (-5.3e+03,1.77e+06]
##  [76] <NA>                (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [79] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [82] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [85] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [88] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [91] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [94] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
##  [97] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [100] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [103] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [106] (3.53e+06,5.31e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [109] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [112] (-5.3e+03,1.77e+06] (1.77e+06,3.53e+06] (1.77e+06,3.53e+06]
## [115] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [118] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [121] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [124] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [127] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [130] (-5.3e+03,1.77e+06] (1.77e+06,3.53e+06] (-5.3e+03,1.77e+06]
## [133] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [136] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [139] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [142] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [145] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [148] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [151] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [154] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [157] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [160] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [163] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [166] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [169] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [172] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [175] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [178] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [181] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] <NA>               
## [184] (-5.3e+03,1.77e+06] <NA>                (-5.3e+03,1.77e+06]
## [187] <NA>                (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [190] (-5.3e+03,1.77e+06] <NA>                (-5.3e+03,1.77e+06]
## [193] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [196] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [199] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [202] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [205] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [208] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [211] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [214] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [217] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [220] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [223] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [226] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [229] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [232] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [235] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [238] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [241] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [244] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [247] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [250] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [253] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [256] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [259] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [262] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [265] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [268] <NA>                (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## [271] (-5.3e+03,1.77e+06] (-5.3e+03,1.77e+06]
## Levels: (-5.3e+03,1.77e+06] (1.77e+06,3.53e+06] (3.53e+06,5.31e+06]
pakF <- table(cut(pak$F,breaks=c(-5.3e+03,1.77e+06,3.53e+06,5.31e+06), labels=c("Ít","Trung bình","Đông")),pak$Div)
pakF
##             
##              Bannu Dera Ismail Khan Hazara Kohat Mardan Peshawar Malakand FATA
##   Ít             4                4      9     6      4        6       12    0
##   Trung bình     0                0      0     0      0        0        0    0
##   Đông           0                0      0     0      0        0        0    0
##             
##              Khyber Agency Kurram Agency Mohmand Agency North Waziristan Agency
##   Ít                     1             2              1                       2
##   Trung bình             0             0              0                       0
##   Đông                   0             0              0                       0
##             
##              Orakzai Agency South Waziristan Agency Bajaur Agency Fr Bannu
##   Ít                      1                       1             1        2
##   Trung bình              0                       0             0        0
##   Đông                    0                       0             0        0
##             
##              Fr DI Khan Fr Kohat Fr Lakki Marwat Fr Peshawar Fr Tank Rawalpindi
##   Ít                  1        1               1           1       1          8
##   Trung bình          0        0               0           0       0          0
##   Đông                0        0               0           0       0          0
##             
##              Sargodha Gujranwala Lahore Faisalabad Sahiwal Bahawalpur
##   Ít                8         12      7          6       6          5
##   Trung bình        0          0      0          2       0          1
##   Đông              0          0      1          0       0          0
##             
##              Dera Ghazi Khan Multan Larkana Sukkur Hyderabad Karachi
##   Ít                       8      8      10      6        18       8
##   Trung bình               0      0       0      0         0       0
##   Đông                     0      0       0      0         0       0
##             
##              Mirpur Khas Shaheed Benazirabad Kalat Makran Nasirabad Quetta Sibi
##   Ít                   6                   6    14      6        10     10   12
##   Trung bình           0                   0     0      0         0      0    0
##   Đông                 0                   0     0      0         0      0    0
##             
##              Zhob Islamabad
##   Ít           11         2
##   Trung bình    0         0
##   Đông          0         0
prop.table(pakF, margin = 2)
##             
##                  Bannu Dera Ismail Khan    Hazara     Kohat    Mardan  Peshawar
##   Ít         1.0000000        1.0000000 1.0000000 1.0000000 1.0000000 1.0000000
##   Trung bình 0.0000000        0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##   Đông       0.0000000        0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##             
##               Malakand FATA Khyber Agency Kurram Agency Mohmand Agency
##   Ít         1.0000000          1.0000000     1.0000000      1.0000000
##   Trung bình 0.0000000          0.0000000     0.0000000      0.0000000
##   Đông       0.0000000          0.0000000     0.0000000      0.0000000
##             
##              North Waziristan Agency Orakzai Agency South Waziristan Agency
##   Ít                       1.0000000      1.0000000               1.0000000
##   Trung bình               0.0000000      0.0000000               0.0000000
##   Đông                     0.0000000      0.0000000               0.0000000
##             
##              Bajaur Agency  Fr Bannu Fr DI Khan  Fr Kohat Fr Lakki Marwat
##   Ít             1.0000000 1.0000000  1.0000000 1.0000000       1.0000000
##   Trung bình     0.0000000 0.0000000  0.0000000 0.0000000       0.0000000
##   Đông           0.0000000 0.0000000  0.0000000 0.0000000       0.0000000
##             
##              Fr Peshawar   Fr Tank Rawalpindi  Sargodha Gujranwala    Lahore
##   Ít           1.0000000 1.0000000  1.0000000 1.0000000  1.0000000 0.8750000
##   Trung bình   0.0000000 0.0000000  0.0000000 0.0000000  0.0000000 0.0000000
##   Đông         0.0000000 0.0000000  0.0000000 0.0000000  0.0000000 0.1250000
##             
##              Faisalabad   Sahiwal Bahawalpur Dera Ghazi Khan    Multan
##   Ít          0.7500000 1.0000000  0.8333333       1.0000000 1.0000000
##   Trung bình  0.2500000 0.0000000  0.1666667       0.0000000 0.0000000
##   Đông        0.0000000 0.0000000  0.0000000       0.0000000 0.0000000
##             
##                Larkana    Sukkur Hyderabad   Karachi Mirpur Khas
##   Ít         1.0000000 1.0000000 1.0000000 1.0000000   1.0000000
##   Trung bình 0.0000000 0.0000000 0.0000000 0.0000000   0.0000000
##   Đông       0.0000000 0.0000000 0.0000000 0.0000000   0.0000000
##             
##              Shaheed Benazirabad     Kalat    Makran Nasirabad    Quetta
##   Ít                   1.0000000 1.0000000 1.0000000 1.0000000 1.0000000
##   Trung bình           0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##   Đông                 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##             
##                   Sibi      Zhob Islamabad
##   Ít         1.0000000 1.0000000 1.0000000
##   Trung bình 0.0000000 0.0000000 0.0000000
##   Đông       0.0000000 0.0000000 0.0000000

Nhận xét: Ở bảng trên, ta thấy được dân số Nữ cũng tương tự như bảng dân số Nam. Đa số tập trung ở nhóm Ít và chỉ một số ít rải rác ở 2 nhóm còn lại

4.2.3 Lập bảng dân số chuyển giới theo từng khu vực

Ở đây, em sẽ phân tổ biến Tr(dân số chuyển giới) trong tập pak thành 3 nhóm (0,408] (408,815] (815,1.22e+03] lần lượt là Ít, Trung bình, Đông theo các khu vực trong tỉnh

cut(pak$Tr,3)
##   [1] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##   [6] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [11] (-1.22,408]    <NA>           (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [16] (-1.22,408]    (-1.22,408]    <NA>           (-1.22,408]    <NA>          
##  [21] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [26] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [31] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [36] (-1.22,408]    (-1.22,408]    <NA>           (-1.22,408]    (-1.22,408]   
##  [41] (-1.22,408]    <NA>           (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [46] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [51] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [56] <NA>           (-1.22,408]    (-1.22,408]    (-1.22,408]    <NA>          
##  [61] (-1.22,408]    <NA>           (-1.22,408]    <NA>           (-1.22,408]   
##  [66] <NA>           (-1.22,408]    <NA>           (-1.22,408]    <NA>          
##  [71] (-1.22,408]    <NA>           (-1.22,408]    <NA>           (-1.22,408]   
##  [76] <NA>           (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [81] (-1.22,408]    (-1.22,408]    (-1.22,408]    (408,815]      (-1.22,408]   
##  [86] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [91] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
##  [96] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [101] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [106] (815,1.22e+03] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [111] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [116] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [121] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [126] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [131] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [136] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [141] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [146] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [151] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [156] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [161] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [166] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [171] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [176] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [181] (-1.22,408]    (-1.22,408]    <NA>           (-1.22,408]    <NA>          
## [186] (-1.22,408]    <NA>           (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [191] <NA>           (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [196] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [201] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [206] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [211] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [216] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [221] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [226] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [231] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [236] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [241] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [246] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [251] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [256] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [261] (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]    (-1.22,408]   
## [266] (-1.22,408]    (-1.22,408]    <NA>           (-1.22,408]    (-1.22,408]   
## [271] (-1.22,408]    (-1.22,408]   
## Levels: (-1.22,408] (408,815] (815,1.22e+03]
pakTr <- table(cut(pak$Tr,breaks=c(0,408,815,1.22e+03), labels=c("Ít","Trung bình","Đông")),pak$Div)
pakTr
##             
##              Bannu Dera Ismail Khan Hazara Kohat Mardan Peshawar Malakand FATA
##   Ít             4                3      9     5      4        6        9    0
##   Trung bình     0                0      0     0      0        0        0    0
##   Đông           0                0      0     0      0        0        0    0
##             
##              Khyber Agency Kurram Agency Mohmand Agency North Waziristan Agency
##   Ít                     1             0              1                       0
##   Trung bình             0             0              0                       0
##   Đông                   0             0              0                       0
##             
##              Orakzai Agency South Waziristan Agency Bajaur Agency Fr Bannu
##   Ít                      0                       0             1        0
##   Trung bình              0                       0             0        0
##   Đông                    0                       0             0        0
##             
##              Fr DI Khan Fr Kohat Fr Lakki Marwat Fr Peshawar Fr Tank Rawalpindi
##   Ít                  0        0               1           0       1          7
##   Trung bình          0        0               0           0       0          1
##   Đông                0        0               0           0       0          0
##             
##              Sargodha Gujranwala Lahore Faisalabad Sahiwal Bahawalpur
##   Ít                8         12      6          8       6          6
##   Trung bình        0          0      0          0       0          0
##   Đông              0          0      0          0       0          0
##             
##              Dera Ghazi Khan Multan Larkana Sukkur Hyderabad Karachi
##   Ít                       8      8       9      6        18       8
##   Trung bình               0      0       0      0         0       0
##   Đông                     0      0       0      0         0       0
##             
##              Mirpur Khas Shaheed Benazirabad Kalat Makran Nasirabad Quetta Sibi
##   Ít                   6                   6     3      3         5      5    4
##   Trung bình           0                   0     0      0         0      0    0
##   Đông                 0                   0     0      0         0      0    0
##             
##              Zhob Islamabad
##   Ít            3         2
##   Trung bình    0         0
##   Đông          0         0
prop.table(pakTr, margin = 2)
##             
##              Bannu Dera Ismail Khan Hazara Kohat Mardan Peshawar Malakand FATA
##   Ít         1.000            1.000  1.000 1.000  1.000    1.000    1.000     
##   Trung bình 0.000            0.000  0.000 0.000  0.000    0.000    0.000     
##   Đông       0.000            0.000  0.000 0.000  0.000    0.000    0.000     
##             
##              Khyber Agency Kurram Agency Mohmand Agency North Waziristan Agency
##   Ít                 1.000                        1.000                        
##   Trung bình         0.000                        0.000                        
##   Đông               0.000                        0.000                        
##             
##              Orakzai Agency South Waziristan Agency Bajaur Agency Fr Bannu
##   Ít                                                        1.000         
##   Trung bình                                                0.000         
##   Đông                                                      0.000         
##             
##              Fr DI Khan Fr Kohat Fr Lakki Marwat Fr Peshawar Fr Tank Rawalpindi
##   Ít                                       1.000               1.000      0.875
##   Trung bình                               0.000               0.000      0.125
##   Đông                                     0.000               0.000      0.000
##             
##              Sargodha Gujranwala Lahore Faisalabad Sahiwal Bahawalpur
##   Ít            1.000      1.000  1.000      1.000   1.000      1.000
##   Trung bình    0.000      0.000  0.000      0.000   0.000      0.000
##   Đông          0.000      0.000  0.000      0.000   0.000      0.000
##             
##              Dera Ghazi Khan Multan Larkana Sukkur Hyderabad Karachi
##   Ít                   1.000  1.000   1.000  1.000     1.000   1.000
##   Trung bình           0.000  0.000   0.000  0.000     0.000   0.000
##   Đông                 0.000  0.000   0.000  0.000     0.000   0.000
##             
##              Mirpur Khas Shaheed Benazirabad Kalat Makran Nasirabad Quetta
##   Ít               1.000               1.000 1.000  1.000     1.000  1.000
##   Trung bình       0.000               0.000 0.000  0.000     0.000  0.000
##   Đông             0.000               0.000 0.000  0.000     0.000  0.000
##             
##               Sibi  Zhob Islamabad
##   Ít         1.000 1.000     1.000
##   Trung bình 0.000 0.000     0.000
##   Đông       0.000 0.000     0.000

Nhận xét: Ở bảng trên, ta thấy được dân số chuyển giới cũng tương tự như 2 bảng dân số Nam và Nữ. Đa số tập trung ở nhóm Ít và chỉ một số ít rải rác ở 2 nhóm còn lại

4.3 Tính hồi quy

4.3.1 Lập bảng tính hồi qui của dân số Nam, Nữ, chuyển giới theo SR17(tỉ lệ giới tính)

hq <- lm(pak$M~pak$SR17)
summary(hq)
## 
## Call:
## lm(formula = pak$M ~ pak$SR17)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -451103 -322874 -184809  142978 5412170 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)   
## (Intercept)   861154     287567   2.995  0.00302 **
## pak$SR17       -4088       2671  -1.531  0.12707   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 545900 on 249 degrees of freedom
##   (21 observations deleted due to missingness)
## Multiple R-squared:  0.009324,   Adjusted R-squared:  0.005345 
## F-statistic: 2.344 on 1 and 249 DF,  p-value: 0.1271
hq1 <- lm(pak$F~pak$SR17)
summary(hq1)
## 
## Call:
## lm(formula = pak$F ~ pak$SR17)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -433133 -303941 -175505  149646 4910478 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)   
## (Intercept)   878590     268888   3.267  0.00124 **
## pak$SR17       -4443       2497  -1.779  0.07644 . 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 510500 on 249 degrees of freedom
##   (21 observations deleted due to missingness)
## Multiple R-squared:  0.01255,    Adjusted R-squared:  0.008587 
## F-statistic: 3.165 on 1 and 249 DF,  p-value: 0.07644
hq2 <- lm(pak$Tr~pak$SR17)
summary(hq2)
## 
## Call:
## lm(formula = pak$Tr ~ pak$SR17)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
##  -44.13  -39.79  -29.77    1.24 1182.16 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)  65.5709    53.0924   1.235    0.218
## pak$SR17     -0.2251     0.4931  -0.456    0.648
## 
## Residual standard error: 100.8 on 249 degrees of freedom
##   (21 observations deleted due to missingness)
## Multiple R-squared:  0.0008361,  Adjusted R-squared:  -0.003177 
## F-statistic: 0.2084 on 1 and 249 DF,  p-value: 0.6484

Nhận xét:

  • Hồi qui dân số Nam theo SR17, ta thấy p_value = 0.1271 lớn hơn mức ý nghĩa nên 2 biến này không có ý nghãi thống kê

-Hồi qui dân số Nữ theo SR17, ta thấy p_value = 0.07644 lớn hơn mức ý nghĩa nên 2 biến này không có ý nghãi thống kê

-Hồi qui dân số chuyển giới theo SR17, ta thấy p_value = 0.6484 lớn hơn mức ý nghĩa nên 2 biến này không có ý nghãi thống kê

4.4 Vẽ đồ thị

Đầu tiên, em sẽ gọi package ggplot2 và tidyverse để thực hiện vẽ biểu đồ với các cấu trúc lệnh khác nhau và loại bỏ các biến số NA trong tập dữ liệu

library(tidyverse)
library(ggplot2)
library(Ecdat)
## Loading required package: Ecfun
## 
## Attaching package: 'Ecfun'
## The following object is masked from 'package:base':
## 
##     sign
## 
## Attaching package: 'Ecdat'
## The following object is masked from 'package:datasets':
## 
##     Orange
library(scales)
## 
## Attaching package: 'scales'
## The following object is masked from 'package:purrr':
## 
##     discard
## The following object is masked from 'package:readr':
## 
##     col_factor
library(utf8)
Pak <-  na.omit(pak)

4.4.1 Đồ thị phân tán (Scatter plot)

4.4.1.1 Biểu đồ phân tán thể hiện mối quan hệ giữa tổng dân số năm 2017 và tổng dân số năm 1998

Pak %>% ggplot(aes(x=Po17,y=Po98))+ geom_point(color="red")+ geom_smooth(formular= y ~ x, method="lm", color="skyblue")+xlab("Tổng dân số 2017")+ylab("Tổng dân số 1998")+ggtitle("Đồ thị tổng dân số năm 2017 so với tổng dân số năm 1998")
## Warning in geom_smooth(formular = y ~ x, method = "lm", color = "skyblue"):
## Ignoring unknown parameters: `formular`
## `geom_smooth()` using formula = 'y ~ x'

cor(Pak$Po17,Pak$Po98)
## [1] 0.9727994

Nhận xét đồ thị trên: Đường hồi quy dốc và thẳng cho thấy có mối quan hệ tuyến tính giữa hai biến này. Khi tính hệ số tương quan hai biến là 0.9727994 mức tương quan này rất cao và nó cũng được thể hiện qua việc tập trung các điểm dày đặc ở phần đầu đường hồi quy.

4.4.1.2 Đồ thị Scatter cho Tổng dân số năm 2017 và tỉ lệ sinh trưởng theo từng tỉnh của Pakistan

Pak %>% ggplot(aes(x=Po17,y=GR,shape=Pr))+ geom_point(color="blue")+ labs(x="Tổng dân số năm 2017",y="Tỉ lệ sinh trưởng", title = "Đồ thị Tổng dân số năm 2017 và tỉ lệ sinh trưởng theo các tỉnh ở Pakistan")

Nhận xét: Đồ thị biểu thị các hình biểu thị 6 tỉnh lần lượt là Blaochistan, FATA Islamabad, KPK, Punjab và Sindh. Để nhận xét chi tiết hơn về sự phụ thuộc của tỉ lệ sinh trưởng vào tổng dân số 2017.

4.4.1.3 Đồ thị thể hiện tổng dân số năm 2017 và tỉ lệ sinh trưởng theo từng tình bằng các điểm không có đường hồi quy

Em thực vẽ cả hai đồ thị thay đổi 2 biến Tổng dân sô 2017 và tỉ lên tăng trưởng lần lượt vào x và y để ta dễ dàng quan sát biến động của các dữ liệu

Pak %>% ggplot(aes(x=Po17,y=GR))+ geom_point(aes(color=Pr))+ labs(x="Tổng dân số năm 2017",y="Tỉ lệ sinh trưởng", title = "Đồ thị Tổng dân số năm 2017 và tỉ lệ sinh trưởng theo các tỉnh ở Pakistan(2)")

Pak %>% ggplot(aes(x=GR,y=Po17))+ geom_point(aes(color=Pr))+ labs(x="Tổng dân số năm 2017",y="Tỉ lệ sinh trưởng", title = "Đồ thị Tổng dân số năm 2017 và tỉ lệ sinh trưởng theo các tỉnh ở Pakistan(3)")

Nhận xét: Từ 2 đồ thị trên được chia màu theo các tỉnh ở Pakistan với màu cam là Balochistan, màu nâu là FATA, màu xanh lá là Islamabad, màu xanh da trời là KPK, màu xanh dương là Punjab và màu hồng tím là Sindh.

Nình vào đồ thị ta thấy mức độ phân bố không đồn đều trong các tỉnh ở Pakistan, màu cam, xanh dương và hồng tím chiếm số đông trong bộ dữ liệu.

4.4.1.4 Đồ thị thể hiện tổng dân số năm 2017 và tỉ lệ sinh trưởng theo từng tình bằng các điểm có đường hồi quy

Pak %>% ggplot(aes(x=Po17,y=GR,color=Pr))+  
  geom_point()+
  geom_smooth(aes(color=Pr),formula=y ~ x,method="lm")+
  labs(x="Tổng dân số năm 2017",y="Tỉ lệ sinh trưởng", title = "Đồ thị Tổng dân số năm 2017 và tỉ lệ sinh trưởng theo các tỉnh ở Pakistan(4)")
## Warning in qt((1 - level)/2, df): NaNs produced
## Warning in max(ids, na.rm = TRUE): no non-missing arguments to max; returning
## -Inf

Nhận xét: Từ đồ thị ta thấy được thì tỉ lệ sinh trưởng trong cùng khoảng dân số thì tỉnh Balochistan và Islamabad có tỉ lệ sinh trưởng vuotj trội hơn so với các tỉnh khác. Tuy các tỉnh thể hiện mỗi tỉnh mỗi đường hồi qui khác nhau nhưng có mối quan hệ tuyến tính giữa 2 biến này. Trong đó, tỉnh Islamabad có mối quan hệ cao hơn do đường hồi qui đạt đỉnh cao nhất.

Để nhận xét rõ hơn thì ta có thể vẽ riêng sự phụ thuộc theo từng tỉnh khác nhau

4.4.1.5 Đồ thị phân tán có đường hổi qui giữa biếng tổng dân số năm 2017 và tỉ lệ sinh trưởng nhưng được chia ra từng tỉnh khác nhau

Pak %>% ggplot(aes(x=Po17,y=GR))+
  geom_point(aes(color=Pr))+
  geom_smooth(aes(color=Pr),formula = y ~ x,method="lm")+
  labs(x="Tổng dân số năm 2017",y="Tỉ lệ sinh trưởng", title = "Đồ thị Tổng dân số năm 2017 và tỉ lệ sinh trưởng theo các tỉnh ở Pakistan(6)")+
  facet_grid(. ~ Pr)
## Warning in qt((1 - level)/2, df): NaNs produced
## Warning in max(ids, na.rm = TRUE): no non-missing arguments to max; returning
## -Inf

Nhận xét: Đồ thị trên cũng gần như cho thấy các đường hổi quy giữa tổng dân số 2017 và tỉ lệ sinh trưởng ở từng tỉnh có độ dốc dương thì cho thấy sự tương quan dương giữa hai biến này có nghĩa là ở các tỉnh khi tổng dân số tăng thì tỉ lệ sinh trưởng cũng tăng theo. Và để có thể chắc chắn kết luận trên thì ta cần phải đi tính hệ số tương quan cũng như là kiểm định sự phù hợp mô hình trên.

4.4.1.6 Đồ thị dạng ngang nhưng thay đổi cách vẽ đường hồi qui

Pak %>% ggplot(aes(x=Po17,y=GR))+
  geom_point(aes(color=Pr))+
  geom_smooth(aes(color=Pr),formula = y ~ x+ sqrt(x),method="lm")+
  labs(x="Tổng dân số năm 2017",y="Tỉ lệ sinh trưởng", title = "Đồ thị Tổng dân số năm 2017 và tỉ lệ sinh trưởng theo các tỉnh ở Pakistan(5)")+
  facet_grid(Pr~.)
## Warning in qt((1 - level)/2, df): NaNs produced
## Warning in max(ids, na.rm = TRUE): no non-missing arguments to max; returning
## -Inf

Nhận xét: khi thay đổi hình dạng đường hồi quy thì em thấy được sự phân bố các tỉnh này xung quanh đường hồi quy đều hơn và không có sự chênh lệch lớn so với đường hồi quy tuyến tính. Hoặc có thể thấy mô hình này giải thích được sự phụ thuộc biến tỉ lệ sinh trưởng vào biến tổng dân số nhiều hơn.

4.4.2 Đồ thị Scatter plot đa biến

Đoạn mã sau sẽ tạo ra một biểu đồ ma trận tương quan với đồ thị phân tán (scatterplots) trong tam giác trên và đồ thị histogram trên đường chéo chính. Đối số histogram = TRUE đảm bảo rằng đồ thị histogram được bao gồm trong biểu đồ

library(xts,zoo)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## 
## ######################### Warning from 'xts' package ##########################
## #                                                                             #
## # The dplyr lag() function breaks how base R's lag() function is supposed to  #
## # work, which breaks lag(my_xts). Calls to lag(my_xts) that you type or       #
## # source() into this session won't work correctly.                            #
## #                                                                             #
## # Use stats::lag() to make sure you're not using dplyr::lag(), or you can add #
## # conflictRules('dplyr', exclude = 'lag') to your .Rprofile to stop           #
## # dplyr from breaking base R's lag() function.                                #
## #                                                                             #
## # Code in packages is not affected. It's protected by R's namespace mechanism #
## # Set `options(xts.warn_dplyr_breaks_lag = FALSE)` to suppress this warning.  #
## #                                                                             #
## ###############################################################################
## 
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
## 
##     first, last
library(PerformanceAnalytics)
## 
## Attaching package: 'PerformanceAnalytics'
## The following object is masked from 'package:graphics':
## 
##     legend
mdata <- Pak[,c("Ho","M","F","Tr","Po17","SR17","GR")]
chart.Correlation(mdata,histogram = TRUE, pch=20)
## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

## Warning in par(usr): argument 1 does not name a graphical parameter

Nhìn vào đồ thị trên ta có thể nhận xét được hệ số tương quan của từng cặp biến với nhau, có thể xem được giữa các biến có mối quan hệ tuyến tính hoặc có mức độ tương quan hay không

4.4.3 Biểu đồ ma trận tương quan

Giải thích thêm:

Hàm cor() tính toán ma trận tương quan cho các biến đã chọn trong dữ liệu Pak.

Hàm as.table() chuyển đổi ma trận tương quan thành định dạng bảng.

Hàm as.data.frame() chuyển đổi bảng thành dữ liệu. Hàm colnames() đặt tên cột của khung dữ liệu là “Vr1”, “Vr2” và “Cor”.

Hàm geom_tile() thêm các ô vào đồ thị, biểu thị sự tương quan giữa các biến.

Hàm geom_text() thêm nhãn văn bản vào các ô, hiển thị giá trị tương quan đã làm tròn.

Hàm scale_fill_gradient2() đặt gradient màu cho các ô, từ màu trắng (tương quan thấp) đến màu đỏ (tương quan cao), với màu trung điểm là xanh da trời. Hàm theme_minimal() đặt kiểu đồ thị với giao diện tối giản

cor_mtr <- cor(Pak[,c("Ho","M","F","Tr","Po17","SR17","GR")])
cor_data <- as.data.frame(as.table(cor_mtr))
colnames(cor_data) <- c("Vr1","Vr2","Cor")
ggplot(data=cor_data,aes(x=Vr1,y=Vr2))+
  geom_tile(aes(fill=Cor))+
  geom_text(aes(label=round(Cor,3)),color="black",size=5)+
  scale_fill_gradient2(low="white",mid="skyblue",high="red",midpoint=0)+
  theme_minimal()

Dựa vào ma trận tương quan của các biến, ta có thể đọc được các mức độ tương quan mạnh và yếu giữa các biến khác nhau

4.4.4 Vẽ đồ thị bằng gói corrplot

library(corrplot)
## corrplot 0.92 loaded
cor_mtr <- cor(Pak[,c("Ho","M","F","Tr","Po17","SR17","GR")])
corrplot(cor_mtr,type="upper", order = "hclust", tl.col = "black", tl.srt = 50)

4.4.5 Biểu đồ cột

4.4.5.1 Biểu đồ đếm số lượng tổng dân số năm 2017 thuộc các tỉnh ở Pakistan

table(Pak$Pr)
## 
## Balochistan        FATA   Islamabad         KPK      Punjab       Sindh 
##          63          16           2          45          71          54
Pak %>% ggplot(aes(Pr))+
  geom_bar(fill="orange")+
  labs(x="Các tỉnh",y="Số tổng dân số ",title="Biểu đồ dữ liệu thu thập tổng dân số năm 2017 của các tỉnh ở Pakistan")

Đoạn mã trên sẽ tạo ra biểu đồ thể hiện dữ liệu thu thập về tổng dân số năm 2017 ở các tỉnh ở Pakistan với số lượng là bao nhiêu.

4.4.5.2 Biểu đồ cột vẽ theo tỷ lệ %

Pak %>% group_by(Pr) %>% summarise(n=n()) %>% mutate(pg=percent(n/sum(n)),accuracy=.01) %>% ggplot(aes(x=Pr,y=pg))+
  geom_col(fill="cyan")+
  theme_classic()+
  labs(x="Tỉnh",y="tỉ lệ %")

Trong đoạn mã trên, chúng ta sử dụng dữ liệu từ data frame Pak, sử dụng group_by() để nhóm dữ liệu theo biến Tcoded. Sử dụng summarise() để tính số lượng (n) cho mỗi nhóm Tcoded.

Sử dụng mutate() để tính tỷ lệ phần trăm (pg) bằng cách chia n cho tổng n và định dạng với độ chính xác 0.01 bằng scales::percent().

Sử dụng ggplot() để tạo biểu đồ với aes() xác định trục x là Pr và trục y là pg.

Sử dụng geom_col() để tạo cột trong biểu đồ với màu sắc đặt là “cyan”.

Sử dụng theme_classic() để thiết lập giao diện biểu đồ với phong cách cổ điển.

Sử dụng labs() để đặt nhãn cho trục x và trục y tương ứng. Đoạn mã trên sẽ tạo ra biểu đồ cột với trục x là “Tỉnh” và trục y là “tỷ lệ %”. Các cột sẽ được tô màu “cyan”.

4.4.5.3 Biểu đồ cột vẽ theo tỷ lệ % hiển thị trên đồ thị

Pak %>% ggplot(aes(Pr))+
  geom_bar(fill="cyan")+
  geom_text(aes(label=scales::percent(after_stat(count/sum(count)))),stat="count",color="red",vjust=-.75)+
  theme_classic()+
  labs(x="Tỉnh",y="Số thu thập tổng dân số ở các tỉnh")

Sử dụng geom_text() để thêm ghi chú vào từng cột.

Aesthetic label được đặt là tỷ lệ phần trăm (scales::percent(after_stat(count / sum(count)))).

Statistic count được sử dụng để tính số lượng mỗi nhóm Tcoded.

Màu chữ được đặt là “red”.

Tham số vjust được đặt là -0.75 để điều chỉnh vị trí dọc của ghi chú.

4.4.6 Biểu đồ ngang

Pak %>% count(Pr) %>% 
  mutate(pc=percent(n/sum(n)),accuracy=.01) %>% 
  ggplot(aes(x=Pr,y=n))+
  geom_col(fill="grey")+
  geom_text(aes(label=pc), color="red",hjust=1, size= 4)+
  labs(x="Tỉnh",y="Số thu thập tổng dân số ở các tỉnh") +
  coord_flip()

4.4.6.1 Biểu đồ đếm số lượng thu thập tổng dân số thuộc các tỉnh dựa trên tình trạng cư trú

Pak %>% ggplot(aes(x=Pr,y=after_stat(count)))+
  geom_bar(fill="darkgreen")+
  geom_text(aes(label=scales::percent(after_stat(count/sum(count)))),stat="count",color="red",vjust=-.5)+
  facet_grid(. ~ Re)+
  labs(x="Tỉnh",y="Số thu thập tổng dân số ở các tỉnh")

Biểu đồ trên thể hiện trục hoành là số thu thập tổng dân số ở các tỉnh của Pakistan dựa vào tình trạng cư trú.

Biểu đồ bên trái thể hiện số thu thập tổng dân số ở các tỉnh dựa vào tình trạng cư trú ở nông thôn .

Biểu đồ bên trái thể hiện số thu thập tổng dân số ở các tỉnh dựa vào tình trạng cư trú ở đô thị .

4.4.6.2 Biểu đồ cột đôi

pk <- Pak %>% count(Pr,Re) %>% mutate(pc=prop.table(n))
ggplot(pk,aes(x=Pr,y=n,fill=factor(Re)))+
  geom_col(position = "dodge")+
  geom_text(aes(label=percent(pc,accuracy = .001)),position = position_dodge(1),vjust=-.75, size=5)+
  labs(title="Biểu đồ cột đôi",x="Tỉnh",y="Só lượng",fill="Re")+
  theme_minimal()

Một dạng khác của biểu đồ cột thì biểu đồ cột đôi cho t so sánh giữa các tỉnh về sự khác nhau về tình trạng cư trú

4.4.6.3 Biểu đồ cột chồng

ggplot(pk,aes(x=Pr,y=n,fill=factor(Re)))+
  geom_col()+
  geom_text(aes(label=percent(pc,accuracy=.001)),position = position_stack(vjust=.75),size=5)+
  labs(x="Tỉnh",y="Tình trạng cư trú")

5 Bài Tập tuần 3

Package: dpopus_ dataset: dataLH_F (Simulated population of four generations, produced by ‘VirtualPop’.)

Mô tả dữ liệu: Dữ liệu dataLH_F là tập dữ liệu về mô phỏng dân số của 4 thế hệ được thu thập bới nhóm “VirtualPop”

Số quan sát thu thập được là 2965

Tập dữ liệu có 29 biến bao gồm:

  1. ID: Mã số định danh

  2. gen: Thế hệ

  3. sex: Giới tính

  4. bdated: ngày tháng năm sinh

  5. ddated: Ngày tháng năm mất

  6. x_D: Độ tuổi hưởng thọ

  7. IDpartner: Mã định danh của bạn đời

  8. IDmother: Mã định danh của mẹ

  9. IDfather: Mã định danh của cha

  10. jch: Số thế hệ trong hộ gia đình

  11. nch: Số con đã từng sinh

  12. id.(1,2,3,4,5,6,7,8,9): Lần lượt là mã định danh của đứa con 1,2,3,4,5,6,7,8,9

  13. age.(1,2,3,4,5,6,7,8,9): Lần lượt là độ tuổi của mẹ khi sinh đứa con 1,2,3,4,5,6,7,8,9

5.1 Lệnh Pivot_wider

Đầu tiên, em sẽ thực hiện thao tác gọi các package cần thiết như tidyverse, Families chứa bộ dữ liệu dataLH_F. Tiếp đến thực hiện thao tác gán bộ datasets đó vào một biến mới tên là LH_F và cho hiện lên 6 dòng đầu của bộ dữ liệu này

library(tidyverse)
library(Families)
data (dataLH_F ) 
LH_F <- dataLH_F
head(LH_F)
##   ID gen    sex   bdated   ddated      x_D IDpartner IDmother IDfather jch nch
## 1  1   1 Female 2019.261 2095.985 76.72428       734       NA       NA  NA   2
## 2  2   1   Male 2019.593 2094.821 75.22848       811       NA       NA  NA   0
## 3  3   1 Female 2019.554 2047.549 27.99448       694       NA       NA  NA   1
## 4  4   1   Male 2019.887 2074.746 54.85930       180       NA       NA  NA   0
## 5  5   1   Male 2019.087 2090.835 71.74783       391       NA       NA  NA   0
## 6  6   1 Female 2019.744 2110.198 90.45323       483       NA       NA  NA   2
##   id.1 id.2 id.3 id.4 id.5 id.6 id.7 id.8 id.9    age.1    age.2 age.3 age.4
## 1 1001 1002   NA   NA   NA   NA   NA   NA   NA 32.22879 33.77996    NA    NA
## 2   NA   NA   NA   NA   NA   NA   NA   NA   NA       NA       NA    NA    NA
## 3 1003   NA   NA   NA   NA   NA   NA   NA   NA 22.89459       NA    NA    NA
## 4   NA   NA   NA   NA   NA   NA   NA   NA   NA       NA       NA    NA    NA
## 5   NA   NA   NA   NA   NA   NA   NA   NA   NA       NA       NA    NA    NA
## 6 1004 1005   NA   NA   NA   NA   NA   NA   NA 18.97668 37.51989    NA    NA
##   age.5 age.6 age.7 age.8 age.9
## 1    NA    NA    NA    NA    NA
## 2    NA    NA    NA    NA    NA
## 3    NA    NA    NA    NA    NA
## 4    NA    NA    NA    NA    NA
## 5    NA    NA    NA    NA    NA
## 6    NA    NA    NA    NA    NA

5.1.1 Lệnh pivot_wider tổng hợp mã định danh của đứa con đầu , độ tuổi của mẹ sinh đứa con đầu , giới tính, độ tuổi hưởng của từng hộ gia đình theo thế hệ

5.1.1.1 Bảng tổng hợp dạng rộng mã định danh đứa con đầu của từng hộ gia đình theo thế hệ

LH_F_id.1 <- LH_F %>% select(ID,gen,bdated,ddated,id.1) %>% pivot_wider(names_from=gen, values_from = id.1) %>% arrange(ID)
head(LH_F_id.1)
## # A tibble: 6 × 7
##      ID bdated ddated   `1`   `2`   `3`   `4`
##   <dbl>  <dbl>  <dbl> <dbl> <dbl> <dbl> <dbl>
## 1     1  2019.  2096.  1001    NA    NA    NA
## 2     2  2020.  2095.    NA    NA    NA    NA
## 3     3  2020.  2048.  1003    NA    NA    NA
## 4     4  2020.  2075.    NA    NA    NA    NA
## 5     5  2019.  2091.    NA    NA    NA    NA
## 6     6  2020.  2110.  1004    NA    NA    NA

5.1.1.2 Bảng tổng hợp dạng rộng của độ tuổi của mẹ sinh đứa con đầu theo thế hệ

LH_F_age <- LH_F %>% select(ID,gen,bdated,ddated,age.1)%>% pivot_wider(names_from=gen, values_from =age.1) %>% arrange(ID)
                            
head(LH_F_age)
## # A tibble: 6 × 7
##      ID bdated ddated   `1`   `2`   `3`   `4`
##   <dbl>  <dbl>  <dbl> <dbl> <dbl> <dbl> <dbl>
## 1     1  2019.  2096.  32.2    NA    NA    NA
## 2     2  2020.  2095.  NA      NA    NA    NA
## 3     3  2020.  2048.  22.9    NA    NA    NA
## 4     4  2020.  2075.  NA      NA    NA    NA
## 5     5  2019.  2091.  NA      NA    NA    NA
## 6     6  2020.  2110.  19.0    NA    NA    NA

5.1.1.3 Bảng tổng hợp dạng rộng của giới tính theo từng thế hệ

LH_F_sex <- LH_F %>% select(ID,gen,bdated,ddated,sex) %>% pivot_wider(names_from=gen, values_from =sex) %>% arrange(ID)
                            
head(LH_F_sex)
## # A tibble: 6 × 7
##      ID bdated ddated `1`    `2`   `3`   `4`  
##   <dbl>  <dbl>  <dbl> <fct>  <fct> <fct> <fct>
## 1     1  2019.  2096. Female <NA>  <NA>  <NA> 
## 2     2  2020.  2095. Male   <NA>  <NA>  <NA> 
## 3     3  2020.  2048. Female <NA>  <NA>  <NA> 
## 4     4  2020.  2075. Male   <NA>  <NA>  <NA> 
## 5     5  2019.  2091. Male   <NA>  <NA>  <NA> 
## 6     6  2020.  2110. Female <NA>  <NA>  <NA>

5.1.1.4 Bảng tổng hợp dạng rộng của độ tuổi hưởng thọ theo từng thế hệ

LH_F_x_D <- LH_F %>% select(ID,gen,bdated,ddated,x_D) %>% pivot_wider(names_from=gen, values_from =x_D) %>% arrange(ID)
                            
head(LH_F_x_D)
## # A tibble: 6 × 7
##      ID bdated ddated   `1`   `2`   `3`   `4`
##   <dbl>  <dbl>  <dbl> <dbl> <dbl> <dbl> <dbl>
## 1     1  2019.  2096.  76.7    NA    NA    NA
## 2     2  2020.  2095.  75.2    NA    NA    NA
## 3     3  2020.  2048.  28.0    NA    NA    NA
## 4     4  2020.  2075.  54.9    NA    NA    NA
## 5     5  2019.  2091.  71.7    NA    NA    NA
## 6     6  2020.  2110.  90.5    NA    NA    NA

Lệnh pivot_wider trên để chuyển đổi dữ liệu từ dạng dài sang dạng rộng dựa trên biến “gen” và giá trị “id.1”, “age.1”, “sex” và “x_D” trong bộ dữ liệu “LH_F”.

Với câu lệnh đầu tiên, tạo ra bảng dữ liệu “LH_F_id.1” với các cột là các thế hệ (cột “gen”) và giá trị là mã định danh đứa con đầu (cột “id.1”)

Câu lệnh thứ hai, tạo một bảng dữ liệu dạng rộng “LH_F_age” với các cột mới là các thế hệ và các giá trị là số tuổi của mẹ khi sinh đứa con đầu.

Câu lệnh thứ ba, tạo ra bảng dữ liệu về giói tính theo từng thế hệ .

Các bảng này có cấu trúc dạng rộng, với ngày thàng năm sinh (cột “bdated”), ngày tháng năm mất (cột “ddated”) và cột mã định danh (cột”ID”) chỉ xuất hiện một lần và được kết hợp với các giá trị mã định danh của đứa con đầu , độ tuổi của mẹ sinh đứa con đầu , giới tính, độ tuổi hưởng và lệnh arrange sắp xếp theo từng thế hệ .

=> Giúp em có thể dễ dàng xem tổng quan về mã định danh của đứa con đầu , độ tuổi của mẹ sinh đứa con đầu , giới tính, độ tuổi hưởng theo từng thế hệ ở từng hộ gia đình của biến LH_F, từ đó sẽ đưa ra phân tích từ các bộ dữ liệu chuyển đổi từ dạng dài sang dạng rộng này.

5.2 Lệnh pivot_longer

5.2.1 Chuyển đổi từ bảng dạng rọng sang dạng dài

Ở phần trước em đã thực hiện chuyển đổi bộ dữ liệu ban đầu thành dạng rộng. Ở phần này em sẽ thực hiện chuyển đổi từ dạng rộng sang dạng dài:

5.2.1.1 Chuyển dữ liệu dạng rộng LH_F_id.1 (mã định danh đứa con đầu theo từng thế hệ) sang dạng dài

LH_F_id.1_1 <- LH_F_id.1 %>% pivot_longer(cols= names(LH_F_id.1)[-c(1,2)], names_to ="gen", values_to= "id.1")
head(LH_F_id.1_1)
## # A tibble: 6 × 4
##      ID bdated gen     id.1
##   <dbl>  <dbl> <chr>  <dbl>
## 1     1  2019. ddated 2096.
## 2     1  2019. 1      1001 
## 3     1  2019. 2        NA 
## 4     1  2019. 3        NA 
## 5     1  2019. 4        NA 
## 6     2  2020. ddated 2095.

Giải thích thêm: cols= names(LH_F_id.1)[-c(1, 2)], theo em tìm hiểu được lệnh này để chọn các cột thế hệ mà ta cần chuyển sang dữ liệu từ rộng sang dài. Việc chuyển đổi dữ liệu từ rộng sang dài để chúng ta đễ dàng trực quan hóa dữ liệu sau đó đưa ra nhiều so sánh phân tích trên bảng dữ liệu đã chuyển đổi.

5.2.1.2 Chuyển dữ liệu dạng rộng LH_F_age (độ tuổi của mẹ khi sinh đứa con đầu theo từng thế hệ) sang dạng dài

LH_F_age.1_1 <- LH_F_age %>% pivot_longer(cols= names(LH_F_age)[-c(1,2)], names_to ="gen", values_to= "age.1")
head(LH_F_age.1_1)
## # A tibble: 6 × 4
##      ID bdated gen     age.1
##   <dbl>  <dbl> <chr>   <dbl>
## 1     1  2019. ddated 2096. 
## 2     1  2019. 1        32.2
## 3     1  2019. 2        NA  
## 4     1  2019. 3        NA  
## 5     1  2019. 4        NA  
## 6     2  2020. ddated 2095.

5.2.1.3 Chuyển dữ liệu dạng rộng LH_F_x_D (độ tuổi hưởng thọ theo từng thế hệ) sang dạng dài

LH_F_x_D_1 <- LH_F_x_D %>% pivot_longer(cols= names(LH_F_x_D)[-c(1,2)], names_to ="gen", values_to= "x_D")
head(LH_F_x_D_1)
## # A tibble: 6 × 4
##      ID bdated gen       x_D
##   <dbl>  <dbl> <chr>   <dbl>
## 1     1  2019. ddated 2096. 
## 2     1  2019. 1        76.7
## 3     1  2019. 2        NA  
## 4     1  2019. 3        NA  
## 5     1  2019. 4        NA  
## 6     2  2020. ddated 2095.

5.3 Các bước phân tích dữ liệu

5.3.1 Lập bảng độ tuổi hưởng thọ và được chia thành 3 nhóm từ -0,0844-37,8(ngan); 37,8-75,5(trungbinh);75,5-113(dai) theo giới tính

cut(LH_F$x_D,3)
##    [1] (75.5,113]     (37.8,75.5]    (-0.0844,37.8] (37.8,75.5]   
##    [5] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##    [9] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##   [13] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##   [17] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##   [21] (75.5,113]     (-0.0844,37.8] (37.8,75.5]    (37.8,75.5]   
##   [25] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##   [29] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##   [33] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##   [37] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##   [41] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##   [45] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##   [49] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##   [53] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##   [57] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##   [61] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##   [65] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##   [69] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##   [73] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##   [77] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##   [81] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##   [85] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##   [89] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##   [93] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##   [97] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [101] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [105] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [109] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [113] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [117] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [121] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [125] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [129] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [133] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [137] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [141] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [145] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [149] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [153] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [157] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [161] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [165] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [169] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [173] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##  [177] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [181] (75.5,113]     (-0.0844,37.8] (75.5,113]     (75.5,113]    
##  [185] (75.5,113]     (75.5,113]     (-0.0844,37.8] (75.5,113]    
##  [189] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [193] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [197] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [201] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [205] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [209] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [213] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [217] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [221] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [225] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [229] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [233] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [237] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [241] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [245] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [249] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [253] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [257] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [261] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
##  [265] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [269] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [273] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [277] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [281] (75.5,113]     (75.5,113]     (75.5,113]     (-0.0844,37.8]
##  [285] (37.8,75.5]    (-0.0844,37.8] (75.5,113]     (75.5,113]    
##  [289] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [293] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [297] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [301] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [305] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [309] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [313] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [317] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [321] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [325] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [329] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [333] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [337] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (-0.0844,37.8]
##  [341] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [345] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [349] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [353] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [357] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [361] (-0.0844,37.8] (75.5,113]     (75.5,113]     (75.5,113]    
##  [365] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [369] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [373] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [377] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [381] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [385] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [389] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [393] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [397] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [401] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [405] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [409] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [413] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [417] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [421] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (-0.0844,37.8]
##  [425] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [429] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##  [433] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [437] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [441] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
##  [445] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [449] (75.5,113]     (-0.0844,37.8] (75.5,113]     (37.8,75.5]   
##  [453] (-0.0844,37.8] (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [457] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [461] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [465] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [469] (75.5,113]     (-0.0844,37.8] (37.8,75.5]    (37.8,75.5]   
##  [473] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [477] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [481] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [485] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [489] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [493] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [497] (75.5,113]     (75.5,113]     (-0.0844,37.8] (75.5,113]    
##  [501] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [505] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [509] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [513] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [517] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [521] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [525] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##  [529] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [533] (75.5,113]     (-0.0844,37.8] (75.5,113]     (75.5,113]    
##  [537] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##  [541] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [545] (75.5,113]     (-0.0844,37.8] (75.5,113]     (75.5,113]    
##  [549] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [553] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [557] (75.5,113]     (75.5,113]     (75.5,113]     (-0.0844,37.8]
##  [561] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [565] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [569] (75.5,113]     (37.8,75.5]    (-0.0844,37.8] (75.5,113]    
##  [573] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [577] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [581] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [585] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [589] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [593] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [597] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [601] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [605] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [609] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [613] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [617] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [621] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [625] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [629] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##  [633] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [637] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [641] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [645] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [649] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [653] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [657] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [661] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [665] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [669] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [673] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [677] (75.5,113]     (75.5,113]     (37.8,75.5]    (-0.0844,37.8]
##  [681] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [685] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [689] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [693] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [697] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [701] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [705] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [709] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [713] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [717] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##  [721] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [725] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [729] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [733] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [737] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [741] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [745] (-0.0844,37.8] (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [749] (37.8,75.5]    (75.5,113]     (75.5,113]     (-0.0844,37.8]
##  [753] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [757] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [761] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [765] (-0.0844,37.8] (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##  [769] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [773] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [777] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [781] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [785] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
##  [789] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [793] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [797] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [801] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [805] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [809] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [813] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [817] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [821] (-0.0844,37.8] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
##  [825] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [829] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [833] (75.5,113]     (-0.0844,37.8] (37.8,75.5]    (75.5,113]    
##  [837] (75.5,113]     (75.5,113]     (75.5,113]     (-0.0844,37.8]
##  [841] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [845] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [849] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [853] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [857] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [861] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [865] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [869] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [873] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [877] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [881] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [885] (75.5,113]     (75.5,113]     (75.5,113]     (-0.0844,37.8]
##  [889] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [893] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [897] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [901] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [905] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [909] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [913] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [917] (75.5,113]     (37.8,75.5]    (-0.0844,37.8] (75.5,113]    
##  [921] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [925] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [929] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
##  [933] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [937] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [941] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [945] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
##  [949] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [953] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
##  [957] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [961] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
##  [965] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [969] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
##  [973] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [977] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [981] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
##  [985] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
##  [989] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
##  [993] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
##  [997] (75.5,113]     (75.5,113]     (37.8,75.5]    (-0.0844,37.8]
## [1001] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1005] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1009] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1013] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1017] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1021] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1025] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [1029] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1033] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1037] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [1041] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1045] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1049] (75.5,113]     (37.8,75.5]    (75.5,113]     (-0.0844,37.8]
## [1053] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1057] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1061] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1065] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1069] (75.5,113]     (-0.0844,37.8] (75.5,113]     (75.5,113]    
## [1073] (75.5,113]     (75.5,113]     (37.8,75.5]    (-0.0844,37.8]
## [1077] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1081] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1085] (-0.0844,37.8] (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1089] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1093] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1097] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (-0.0844,37.8]
## [1101] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1105] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1109] (75.5,113]     (37.8,75.5]    (-0.0844,37.8] (37.8,75.5]   
## [1113] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1117] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1121] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1125] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1129] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1133] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [1137] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1141] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1145] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1149] (37.8,75.5]    (75.5,113]     (75.5,113]     (-0.0844,37.8]
## [1153] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1157] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1161] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1165] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1169] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1173] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1177] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1181] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1185] (-0.0844,37.8] (75.5,113]     (75.5,113]     (75.5,113]    
## [1189] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1193] (37.8,75.5]    (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [1197] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1201] (-0.0844,37.8] (75.5,113]     (75.5,113]     (75.5,113]    
## [1205] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1209] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1213] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1217] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1221] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1225] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1229] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1233] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1237] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1241] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1245] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1249] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1253] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1257] (-0.0844,37.8] (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1261] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1265] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1269] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1273] (-0.0844,37.8] (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1277] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1281] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1285] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1289] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1293] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1297] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1301] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1305] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1309] (75.5,113]     (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [1313] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1317] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1321] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1325] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1329] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1333] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1337] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1341] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1345] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1349] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1353] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1357] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1361] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1365] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1369] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1373] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1377] (75.5,113]     (-0.0844,37.8] (75.5,113]     (75.5,113]    
## [1381] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1385] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1389] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1393] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1397] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1401] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1405] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1409] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1413] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1417] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1421] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1425] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1429] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1433] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1437] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1441] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1445] (-0.0844,37.8] (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1449] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (-0.0844,37.8]
## [1453] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1457] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1461] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1465] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1469] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1473] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1477] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1481] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1485] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1489] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1493] (37.8,75.5]    (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [1497] (37.8,75.5]    (-0.0844,37.8] (37.8,75.5]    (75.5,113]    
## [1501] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1505] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1509] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1513] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1517] (-0.0844,37.8] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [1521] (75.5,113]     (-0.0844,37.8] (37.8,75.5]    (75.5,113]    
## [1525] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1529] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1533] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1537] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1541] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1545] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1549] (37.8,75.5]    (75.5,113]     (-0.0844,37.8] (37.8,75.5]   
## [1553] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1557] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1561] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1565] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1569] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1573] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1577] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1581] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1585] (75.5,113]     (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [1589] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1593] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1597] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1601] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1605] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1609] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1613] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1617] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1621] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1625] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1629] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1633] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1637] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1641] (37.8,75.5]    (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [1645] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1649] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1653] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1657] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1661] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1665] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1669] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1673] (-0.0844,37.8] (75.5,113]     (75.5,113]     (75.5,113]    
## [1677] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1681] (75.5,113]     (75.5,113]     (75.5,113]     (-0.0844,37.8]
## [1685] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1689] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1693] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1697] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1701] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1705] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1709] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [1713] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1717] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1721] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1725] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1729] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1733] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1737] (-0.0844,37.8] (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1741] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1745] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1749] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1753] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1757] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1761] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1765] (37.8,75.5]    (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [1769] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1773] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1777] (75.5,113]     (-0.0844,37.8] (75.5,113]     (75.5,113]    
## [1781] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1785] (75.5,113]     (75.5,113]     (-0.0844,37.8] (-0.0844,37.8]
## [1789] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1793] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1797] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1801] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1805] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1809] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [1813] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1817] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (-0.0844,37.8]
## [1821] (37.8,75.5]    (37.8,75.5]    (-0.0844,37.8] (75.5,113]    
## [1825] (75.5,113]     (37.8,75.5]    (75.5,113]     (-0.0844,37.8]
## [1829] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1833] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1837] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1841] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1845] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1849] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1853] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1857] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1861] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1865] (75.5,113]     (75.5,113]     (-0.0844,37.8] (37.8,75.5]   
## [1869] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1873] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1877] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1881] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1885] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1889] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1893] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1897] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1901] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [1905] (75.5,113]     (37.8,75.5]    (-0.0844,37.8] (75.5,113]    
## [1909] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1913] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1917] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [1921] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [1925] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [1929] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1933] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1937] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1941] (75.5,113]     (37.8,75.5]    (75.5,113]     (-0.0844,37.8]
## [1945] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [1949] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1953] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1957] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [1961] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [1965] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1969] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (-0.0844,37.8]
## [1973] (75.5,113]     (-0.0844,37.8] (37.8,75.5]    (75.5,113]    
## [1977] (75.5,113]     (-0.0844,37.8] (37.8,75.5]    (37.8,75.5]   
## [1981] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [1985] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1989] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [1993] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [1997] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2001] (37.8,75.5]    (-0.0844,37.8] (37.8,75.5]    (37.8,75.5]   
## [2005] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2009] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2013] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2017] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2021] (37.8,75.5]    (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [2025] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2029] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2033] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2037] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2041] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2045] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2049] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2053] (75.5,113]     (75.5,113]     (-0.0844,37.8] (37.8,75.5]   
## [2057] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2061] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2065] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2069] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2073] (75.5,113]     (37.8,75.5]    (75.5,113]     (-0.0844,37.8]
## [2077] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2081] (75.5,113]     (-0.0844,37.8] (75.5,113]     (37.8,75.5]   
## [2085] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2089] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2093] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2097] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2101] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2105] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2109] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2113] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2117] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2121] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2125] (37.8,75.5]    (75.5,113]     (-0.0844,37.8] (37.8,75.5]   
## [2129] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2133] (-0.0844,37.8] (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2137] (37.8,75.5]    (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [2141] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2145] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2149] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2153] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2157] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2161] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2165] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2169] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2173] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2177] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2181] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2185] (75.5,113]     (37.8,75.5]    (-0.0844,37.8] (75.5,113]    
## [2189] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2193] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2197] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2201] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2205] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2209] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2213] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2217] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2221] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2225] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2229] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2233] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2237] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2241] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2245] (75.5,113]     (-0.0844,37.8] (75.5,113]     (75.5,113]    
## [2249] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2253] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2257] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2261] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2265] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2269] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2273] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2277] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2281] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2285] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2289] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2293] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2297] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2301] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2305] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2309] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2313] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2317] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2321] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2325] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2329] (75.5,113]     (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [2333] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2337] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2341] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2345] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2349] (-0.0844,37.8] (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2353] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2357] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2361] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2365] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2369] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2373] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2377] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2381] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2385] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2389] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2393] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2397] (-0.0844,37.8] (75.5,113]     (75.5,113]     (75.5,113]    
## [2401] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2405] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2409] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2413] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2417] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2421] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2425] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2429] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2433] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2437] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2441] (-0.0844,37.8] (75.5,113]     (75.5,113]     (75.5,113]    
## [2445] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2449] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2453] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2457] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2461] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2465] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2469] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2473] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2477] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2481] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2485] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2489] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2493] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2497] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2501] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2505] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2509] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2513] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2517] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2521] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2525] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2529] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2533] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2537] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2541] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2545] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2549] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2553] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2557] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2561] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2565] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2569] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2573] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2577] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2581] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2585] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2589] (-0.0844,37.8] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2593] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2597] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2601] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2605] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2609] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2613] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2617] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2621] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2625] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2629] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2633] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2637] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2641] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2645] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2649] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2653] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2657] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2661] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2665] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2669] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2673] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2677] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2681] (-0.0844,37.8] (75.5,113]     (75.5,113]     (75.5,113]    
## [2685] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2689] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2693] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2697] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2701] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2705] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2709] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2713] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2717] (37.8,75.5]    (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2721] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2725] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2729] (75.5,113]     (75.5,113]     (-0.0844,37.8] (75.5,113]    
## [2733] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2737] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2741] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2745] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (75.5,113]    
## [2749] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2753] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2757] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2761] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2765] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2769] (75.5,113]     (-0.0844,37.8] (37.8,75.5]    (75.5,113]    
## [2773] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2777] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2781] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2785] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2789] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2793] (75.5,113]     (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2797] (-0.0844,37.8] (75.5,113]     (75.5,113]     (75.5,113]    
## [2801] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2805] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2809] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2813] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2817] (37.8,75.5]    (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2821] (75.5,113]     (75.5,113]     (75.5,113]     (-0.0844,37.8]
## [2825] (-0.0844,37.8] (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2829] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2833] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2837] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2841] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2845] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2849] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2853] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2857] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2861] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2865] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2869] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2873] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2877] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2881] (75.5,113]     (37.8,75.5]    (37.8,75.5]    (37.8,75.5]   
## [2885] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2889] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2893] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2897] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (37.8,75.5]   
## [2901] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2905] (37.8,75.5]    (75.5,113]     (75.5,113]     (-0.0844,37.8]
## [2909] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2913] (75.5,113]     (75.5,113]     (75.5,113]     (75.5,113]    
## [2917] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2921] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (-0.0844,37.8]
## [2925] (37.8,75.5]    (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2929] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2933] (37.8,75.5]    (75.5,113]     (75.5,113]     (75.5,113]    
## [2937] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2941] (75.5,113]     (75.5,113]     (37.8,75.5]    (75.5,113]    
## [2945] (75.5,113]     (75.5,113]     (75.5,113]     (37.8,75.5]   
## [2949] (75.5,113]     (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2953] (37.8,75.5]    (37.8,75.5]    (75.5,113]     (75.5,113]    
## [2957] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2961] (75.5,113]     (75.5,113]     (37.8,75.5]    (37.8,75.5]   
## [2965] (37.8,75.5]   
## Levels: (-0.0844,37.8] (37.8,75.5] (75.5,113]
xd <- table(cut(LH_F$x_D,breaks=c(-0.0844,37.8,75.5,113), labels=c("ngăn","trungbinh","dai")),LH_F$sex)
xd
##            
##             Male Female
##   ngăn        57     32
##   trungbinh  528    363
##   dai        956   1028
prop.table(xd, margin = 2)
##            
##                   Male     Female
##   ngăn      0.03698897 0.02248770
##   trungbinh 0.34263465 0.25509487
##   dai       0.62037638 0.72241743

Dựa vào bảng trên ta thấy ở độ tuổi hưởng thọ ở từ khoảng ngắn thì Nam chiếm 57 khảo sát (64%) trên tổng số hàng có độ tuổi hưởng thọ ngắn. Ở độ tuổi hưởng thọ trung bình thì Nam vần chiếm phần lớn là 528 khảo sát chiếm (59,3%) ở khoảng độ tuổi hưởng thọ trung bình. Còn ở khoảng độ tưởng hưởng thọ cao thì Nữ chiếm phần nhiều hơn là 1028 tương đương với 51,8%.

5.3.2 Ma trận tương quan

c <-  cor(LH_F[,c("bdated","ddated","x_D")])
print(c)
##               bdated    ddated           x_D
## bdated  1.0000000000 0.8902223 -0.0009937708
## ddated  0.8902222501 1.0000000  0.4546415469
## x_D    -0.0009937708 0.4546415  1.0000000000
library(corrplot)
 corrplot(c,method="square")

Tạo bảng ma trận tương quan giữa các biến bdated, ddated và x_D bằng hàm Cor. Sau đó em vẽ được đồ thị ma trận tương quan theo phương pháp square.Hình vuông càng lớn là có tương quan càng mạnh, màu xanh chỉ tương quan là dương còn màu đỏ chỉ tương quan là âm. Có thể thấy tương quan giữa bdated và ddated là dương và khá cao (0,89), tương quan giữa bdated và x_D là âm và mối tương quan này rất thấp (-0,00099)

5.3.3 Độ tuổi hưởng thọ trung bình

ggplot(LH_F_x_D, aes(x= LH_F$gen, y=LH_F$x_D))+geom_line()+ labs(x="Gen", y="Tuổi", title="Sự thay đổi độ tuổi hưởng thọ qua từng thế hệ")

Từ đồ thị trên ta thấy từ thế hệ 1 đên thế hệ 2 thì độ tuổi hưởng thọ kéo trong khoảng từ 30 tuổi cho đến 75 tuổi, từ đầu thế hệ 2 thì mức tuổi đạt gần bằng 90 tuổi và giảm dần về khoảng 75 tuổi ở cuối thế hệ 2. Cuối cùng thế hệ từ 3 đến 4 có mức tuổi hưởng thọ cao nhất chạm móc 90 tuồi và giảm dần nhưng chênh lệch không quá nhiều chỉ vài tuổi

5.4 Áp dụng vảo dữ liệu ban đầu

5.4.1 Phân tích dữ liệu

Ở đây, em sẽ áp dụng tương tự nhưng phương thức trên làm trên tập dữ liệu nuclear_ package: boot

Đầu tiên, em sẽ gọi package: boot để lấy tập dữ liệu nuclear và cho hiện lên 6 giá trị đầu của tập

Tiếp theo, em sẽ gán tập dữ liệu nuclear vào biến mới là ‘n’ và đặt tên cho các biến có trong tập dữ liệu

library(boot)
data(nuclear)
head(nuclear)
##     cost  date t1 t2  cap pr ne ct bw cum.n pt
## 1 460.05 68.58 14 46  687  0  1  0  0    14  0
## 2 452.99 67.33 10 73 1065  0  0  1  0     1  0
## 3 443.22 67.33 10 85 1065  1  0  1  0     1  0
## 4 652.32 68.00 11 67 1065  0  1  1  0    12  0
## 5 642.23 68.00 11 78 1065  1  1  1  0    12  0
## 6 345.39 67.92 13 51  514  0  1  1  0     3  0
n <- nuclear
names(n) <- c('Co','Da','T1','T2','Ca','Pr','Ne','Ct','Bw','Cu','Pt')

5.4.2 Lệnh pivot_wider

####Lệnh pivot_wider lập bảng tổng hợp chi phí xây dựng, Công suất của các lò phản ứng theo nhóm công nhân xây dựng

  • Bảng tổng hợp chi phí xây dựng của từng lò phản ứng theo từng nhóm người xây dựng
n_Co <- n %>% select(Co,Da,T1,T2,Cu) %>% pivot_wider(names_from= Cu, values_from = Co) %>% arrange(n$Cu)
head(n_Co)
## # A tibble: 6 × 20
##      Da    T1    T2  `14`   `1`  `12`   `3`   `5`   `2`   `6`   `7`  `16`  `17`
##   <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1  67.3    10    73    NA  453.    NA    NA    NA   NA     NA    NA    NA    NA
## 2  67.3    10    85    NA  443.    NA    NA    NA   NA     NA    NA    NA    NA
## 3  68.4    14    59    NA  317.    NA    NA    NA   NA     NA    NA    NA    NA
## 4  69.2    15    67    NA  881.    NA    NA    NA   NA     NA    NA    NA    NA
## 5  68.3    12    71    NA   NA     NA    NA    NA  690.    NA    NA    NA    NA
## 6  68.4    15    62    NA   NA     NA    NA    NA  412.    NA    NA    NA    NA
## # ℹ 7 more variables: `8` <dbl>, `15` <dbl>, `20` <dbl>, `18` <dbl>,
## #   `19` <dbl>, `21` <dbl>, `11` <dbl>
  • Bảng tổng hợp công suất của từng lò phản ứng theo từng nhóm người xây dựng
n_Ca <- n %>% select(Ca,Da,T1,T2,Cu) %>% pivot_wider(names_from= Cu, values_from = Ca) %>% arrange(n$Cu)
head(n_Ca)
## # A tibble: 6 × 20
##      Da    T1    T2  `14`   `1`  `12`   `3`   `5`   `2`   `6`   `7`  `16`  `17`
##   <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1  67.3    10    73    NA  1065    NA    NA    NA    NA    NA    NA    NA    NA
## 2  67.3    10    85    NA  1065    NA    NA    NA    NA    NA    NA    NA    NA
## 3  68.4    14    59    NA   457    NA    NA    NA    NA    NA    NA    NA    NA
## 4  69.2    15    67    NA  1090    NA    NA    NA    NA    NA    NA    NA    NA
## 5  68.3    12    71    NA    NA    NA    NA    NA   792    NA    NA    NA    NA
## 6  68.4    15    62    NA    NA    NA    NA    NA   530    NA    NA    NA    NA
## # ℹ 7 more variables: `8` <dbl>, `15` <dbl>, `20` <dbl>, `18` <dbl>,
## #   `19` <dbl>, `21` <dbl>, `11` <dbl>
  • Câu lệnh đâu tiên, em tạo bảng dựng liệu n_Co với cột số người xây dựng(Cu) và chi phí xây dựng(Co)

  • Câu lệnh thứ hai, em tạo bảng dựng liệu n_Ca với cột số người xây dựng(Cu) và công suất(Ca)

  • Các bảng này có cấu trúc dạng rộng, với cột “Da”(số ngày được cấp quyền xây dựng), côt”T1” (Thời gian từ khi xin phép đến khi cấp giấy phép xây dựng), cột”T2” (Thời gian từ khi cấp phép hoạt động đến khi cấp phép xây dựng) chỉ xuất hiện một lần và được kết hợp với các giá trị chi phí xây dựng, công suất và lệnh arrange sắp xếp theo từng nhóm người xây dựng (cụ thế là số người xây dựng ) .

5.4.3 Lệnh pivot_longer

5.4.3.1 Chuyển dữ liệu n_Co (chi phí xây dựng) từ dạng rộng sang dạng dài

n_Co_1 <- n_Co %>% pivot_longer(cols= names(n_Co)[-c(1,2)], names_to ="Cu", values_to= "Co")
head(n_Co_1)
## # A tibble: 6 × 4
##      Da    T1 Cu       Co
##   <dbl> <dbl> <chr> <dbl>
## 1  67.3    10 T2      73 
## 2  67.3    10 14      NA 
## 3  67.3    10 1      453.
## 4  67.3    10 12      NA 
## 5  67.3    10 3       NA 
## 6  67.3    10 5       NA

5.4.3.2 Chuyển dữ liệu n_Ca(công suất) từ dạng rộng thành dạng dài

n_Ca_1 <- n_Ca %>% pivot_longer(cols= names(n_Ca)[-c(1,2)], names_to ="Cu", values_to= "Ca")
head(n_Ca_1)
## # A tibble: 6 × 4
##      Da    T1 Cu       Ca
##   <dbl> <dbl> <chr> <dbl>
## 1  67.3    10 T2       73
## 2  67.3    10 14       NA
## 3  67.3    10 1      1065
## 4  67.3    10 12       NA
## 5  67.3    10 3        NA
## 6  67.3    10 5        NA

5.5 Vẽ đồ thị

Ở đây, em vẽ đồ thị giữa chi phí xây dựng và công suất của các lò phản ứng với x là chi phí và y là công suất

n |> ggplot(aes(x = Co, y = Ca)) +
  geom_point(color = 'blue') +
  geom_line(color = 'red')+ labs(title= 'Công suất và chi phí xây dựng của các lò phản ứng', x='Chi phí xây dựng',y='Công suất')

Nhận xét: từ đồ thị trên, ta thấy được đa số những lò phản ứng có chi phí xây dựng từ tầm trung trở lên khoảng từ 400 triệu đô la thì cho ra được các lò phản ứng với công suất rất câo đổ bộ từ 800 cho đến hơn 1000

5.6 Lập bảng của chi phí xây dựng và công suất sau khi được phân tổ và dựa theo nhóm người người xây dựng

5.6.1 Lập bảng chi phí xây dựng được chưa thành 3 nhóm là 207-432; 432-657; 657-882 lần lượt là thấp, trungbinh, cao

cut(n$Co,3)
##  [1] (432,657] (432,657] (432,657] (432,657] (432,657] (207,432] (207,432]
##  [8] (207,432] (432,657] (657,882] (207,432] (207,432] (207,432] (432,657]
## [15] (207,432] (207,432] (657,882] (207,432] (657,882] (432,657] (432,657]
## [22] (657,882] (432,657] (432,657] (432,657] (657,882] (207,432] (207,432]
## [29] (207,432] (207,432] (207,432] (207,432]
## Levels: (207,432] (432,657] (657,882]
co <- table(cut(n$Co,breaks=c(207,432,657,882), labels=c("thấp","trung bình","cao")),n$Cu)
co
##             
##              1 2 3 5 6 7 8 11 12 14 15 16 17 18 19 20 21
##   thấp       1 2 3 1 1 1 2  3  0  0  0  1  0  0  0  0  0
##   trung bình 2 0 1 1 0 1 1  0  2  1  1  0  0  1  1  0  0
##   cao        1 1 0 0 0 0 0  0  0  0  0  0  1  0  0  1  1
prop.table(co, margin = 2)
##             
##                      1         2         3         5         6         7
##   thấp       0.2500000 0.6666667 0.7500000 0.5000000 1.0000000 0.5000000
##   trung bình 0.5000000 0.0000000 0.2500000 0.5000000 0.0000000 0.5000000
##   cao        0.2500000 0.3333333 0.0000000 0.0000000 0.0000000 0.0000000
##             
##                      8        11        12        14        15        16
##   thấp       0.6666667 1.0000000 0.0000000 0.0000000 0.0000000 1.0000000
##   trung bình 0.3333333 0.0000000 1.0000000 1.0000000 1.0000000 0.0000000
##   cao        0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##             
##                     17        18        19        20        21
##   thấp       0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##   trung bình 0.0000000 1.0000000 1.0000000 0.0000000 0.0000000
##   cao        1.0000000 0.0000000 0.0000000 1.0000000 1.0000000

Nhận xét: Các lò phản ứng có mức chi phí thấp thường được các nhóm người xây dừng từ 11 người đổ lại có tổng số lò phản ứng là 15 chiếm 46,875%

Còn các lò phản ứng có mức chi phí trung bình thì trải dài rải rác trên biên độ nhóm người xây dựng (khi không tính đến qui mô thực hiện xây dựng) thì có tổng 12 lò phản ứng chiếm 37,5%

5.6.2 Lập bảng công suất được chia thành 3 nhóm là (456,681] (681,906] (906,1.13e+03] lân lượt là thấp, trung , cao

cut(n$Ca,3)
##  [1] (681,906]      (906,1.13e+03] (906,1.13e+03] (906,1.13e+03] (906,1.13e+03]
##  [6] (456,681]      (681,906]      (456,681]      (681,906]      (681,906]     
## [11] (456,681]      (681,906]      (456,681]      (906,1.13e+03] (681,906]     
## [16] (681,906]      (681,906]      (456,681]      (906,1.13e+03] (906,1.13e+03]
## [21] (906,1.13e+03] (681,906]      (681,906]      (681,906]      (456,681]     
## [26] (906,1.13e+03] (681,906]      (681,906]      (681,906]      (681,906]     
## [31] (681,906]      (681,906]     
## Levels: (456,681] (681,906] (906,1.13e+03]
ca <- table(cut(n$Ca,breaks=c(456,681,906,1.13e+03), labels=c("thấp","trung","cao")),n$Cu)
ca
##        
##         1 2 3 5 6 7 8 11 12 14 15 16 17 18 19 20 21
##   thấp  1 2 2 0 0 0 0  0  0  0  0  0  0  0  1  0  0
##   trung 0 1 2 2 1 1 2  3  0  1  0  1  1  1  0  1  0
##   cao   3 0 0 0 0 1 1  0  2  0  1  0  0  0  0  0  1
prop.table(ca, margin = 2)
##        
##                 1         2         3         5         6         7         8
##   thấp  0.2500000 0.6666667 0.5000000 0.0000000 0.0000000 0.0000000 0.0000000
##   trung 0.0000000 0.3333333 0.5000000 1.0000000 1.0000000 0.5000000 0.6666667
##   cao   0.7500000 0.0000000 0.0000000 0.0000000 0.0000000 0.5000000 0.3333333
##        
##                11        12        14        15        16        17        18
##   thấp  0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
##   trung 1.0000000 0.0000000 1.0000000 0.0000000 1.0000000 1.0000000 1.0000000
##   cao   0.0000000 1.0000000 0.0000000 1.0000000 0.0000000 0.0000000 0.0000000
##        
##                19        20        21
##   thấp  1.0000000 0.0000000 0.0000000
##   trung 0.0000000 1.0000000 0.0000000
##   cao   0.0000000 0.0000000 1.0000000

Nhận xét: Các lò phản ứng được xây dựng có mức độ công suất đa số ở khoảng tầm trung, có tới 17 lò phản ứng cho ra được mức công suất ở tầm trung chiếm 53,125%

5.7 Ma trận tương quan

nmt <-  cor(n[,c("Ca","Co","Cu")])
print(nmt)
##           Ca        Co        Cu
## Ca 1.0000000 0.4717609 0.1933936
## Co 0.4717609 1.0000000 0.2751812
## Cu 0.1933936 0.2751812 1.0000000
library(corrplot)
 corrplot(nmt,method="square")

Nhận xét: Sau khi lập được ma trận tương quan giữa các giá trị Co(chi phí), Ca(Công suất), Cu(số người xây dựng) , ta có thể thấy được mức độ tương quan giữa các giá trị như Ca và Co là 0,4717; Ca và Cu là 0,19339 chỉ thuộc mức tương đối không quá cao

5.8 Tính hồi quy

Tính hồi quy Co(chi phí) theo Ca(công suất)

hq <- lm(n$Co~n$Ca)
summary(hq)
## 
## Call:
## lm(formula = n$Co ~ n$Ca)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -219.985 -112.573   -0.733   93.517  307.523 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)   
## (Intercept) 111.7408   122.3755   0.913  0.36847   
## n$Ca          0.4238     0.1446   2.931  0.00641 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 152.5 on 30 degrees of freedom
## Multiple R-squared:  0.2226, Adjusted R-squared:  0.1966 
## F-statistic: 8.588 on 1 and 30 DF,  p-value: 0.006414

Nhận xét: Kết quả từ bảng hồi qui , ta thấy được giá trị p-value= 0.006414 rất nhỏ, có nghĩa là 2 hệ số này có ý nghía thống kê đáng kể. Giá trị R-squared là 0.2226 và Adjusted R-squared là 0.1966. Ý nghĩa là mô hình giải thích được khoảng 22,26% sự thay đổi của công suất. Giá trị p-value của F-statistic là 0.006414 nhỏ hơn các mức ý nghĩa cho thấy mô hình này phù hợp để phân tích mối liên hệ giữa hai biến chi phí và coogn suất. Tuy nhiên thì hệ số R-squared không cao nên mô hình chưa giải thích hết sự thay đổi của biến phụ thuộc.

6 Bài tập tuần 2

6.1 Đặt tên cho các biến

-Tương tự như tuần 1, ta sẽ gọi dữ liệu “nuclear” từ package’boot’

-Sau đó sẽ gán dataset nuclear vào “nu”

-Sử dụng lệnh ‘names’ để đặt têm cho các biên trong dự liệu “nu”

library(boot)
data(nuclear)
nu <- nuclear
names(nu) <- c('Co','Da','T1','T2','Ca','Pr','Ne','Ct','Bw','Cu','Pt')

6.2 Lập bảng

-Chúng ta có thể lọc những lò phản ứng có điều kiện là 1 trong các cột Ne, Pr, Ct, Bw, Pt

-Kết quả từ câu lệnh sẽ được gán lần lượt vào Ne1, Pr1, Ct1, Bw1, Pt1

-Dữ liệu của các biến đấy sẽ cho ta biết thông tin của những lò phản ứng thỏa điều kiện Các câu lệnh được thực hiện như sau và kèm theo nội dung của các biến

#Biến 1 chỉ ra rằng nhà máy được xây dựng ở vùng đông bắc của Hoa Kỳ.
Ne1 <- nu[nu$Ne==1,]
Ne1
##        Co    Da T1 T2   Ca Pr Ne Ct Bw Cu Pt
## 1  460.05 68.58 14 46  687  0  1  0  0 14  0
## 4  652.32 68.00 11 67 1065  0  1  1  0 12  0
## 5  642.23 68.00 11 78 1065  1  1  1  0 12  0
## 6  345.39 67.92 13 51  514  0  1  1  0  3  0
## 10 690.19 68.33 12 71  792  0  1  1  1  2  0
## 12 402.59 68.75 13 47  790  0  1  0  0  6  0
## 17 712.27 69.50 18 60  845  0  1  0  0 17  0
## 22 665.99 70.92 22 57  828  1  1  0  0 20  0
#biến 1 chỉ ra sự tồn tại trước đó của một nhà máy LWR tại cùng một địa điểm.
Pr1 <- nu[nu$Pr==1,]
Pr1
##        Co    Da T1 T2   Ca Pr Ne Ct Bw Cu Pt
## 3  443.22 67.33 10 85 1065  1  0  1  0  1  0
## 5  642.23 68.00 11 78 1065  1  1  1  0 12  0
## 9  457.12 68.42 15 55  822  1  0  0  0  5  0
## 18 289.66 68.42 15 76  530  1  0  1  0  2  0
## 20 490.88 68.92 16 59 1050  1  0  0  0  8  0
## 22 665.99 70.92 22 57  828  1  1  0  0 20  0
## 24 608.80 70.08 19 58  821  1  0  0  0  3  0
## 30 280.36 67.83 12 71  886  1  0  0  1 11  1
## 31 217.38 67.25 13 72  745  1  0  0  0  8  1
## 32 270.71 67.83  7 80  886  1  0  0  1 11  1
#Biến 1 biểu thị việc sử dụng tháp giải nhiệt trong nhà máy.
Ct1 <- nu[nu$Ct==1,]
Ct1
##        Co    Da T1 T2   Ca Pr Ne Ct Bw Cu Pt
## 2  452.99 67.33 10 73 1065  0  0  1  0  1  0
## 3  443.22 67.33 10 85 1065  1  0  1  0  1  0
## 4  652.32 68.00 11 67 1065  0  1  1  0 12  0
## 5  642.23 68.00 11 78 1065  1  1  1  0 12  0
## 6  345.39 67.92 13 51  514  0  1  1  0  3  0
## 10 690.19 68.33 12 71  792  0  1  1  1  2  0
## 13 412.18 68.42 15 62  530  0  0  1  0  2  0
## 18 289.66 68.42 15 76  530  1  0  1  0  2  0
## 21 567.79 68.75 11 70  913  0  0  1  1 15  0
## 23 621.45 69.67 16 59  786  0  0  1  0 18  0
## 25 473.64 70.42 19 44  538  0  0  1  0 19  0
## 26 697.14 71.08 20 57 1130  0  0  1  0 21  0
## 28 288.48 67.17  9 48  821  0  0  1  0  7  1
#Biến 1 chỉ ra rằng hệ thống cung cấp hơi nước hạt nhân được sản xuất bởi Babcock-Wilcox.
Bw1 <- nu[nu$Bw==1,]
Bw1
##        Co    Da T1 T2  Ca Pr Ne Ct Bw Cu Pt
## 10 690.19 68.33 12 71 792  0  1  1  1  2  0
## 15 394.36 68.92 13 65 850  0  0  0  1 16  0
## 21 567.79 68.75 11 70 913  0  0  1  1 15  0
## 29 284.88 67.83 12 63 886  0  0  0  1 11  1
## 30 280.36 67.83 12 71 886  1  0  0  1 11  1
## 32 270.71 67.83  7 80 886  1  0  0  1 11  1
#Biến Một chỉ ra những nhà máy có đảm bảo chìa khóa trao tay một phần.
Pt1 <- nu[nu$Pt==1,]
Pt1
##        Co    Da T1 T2  Ca Pr Ne Ct Bw Cu Pt
## 27 207.51 67.25 13 63 745  0  0  0  0  8  1
## 28 288.48 67.17  9 48 821  0  0  1  0  7  1
## 29 284.88 67.83 12 63 886  0  0  0  1 11  1
## 30 280.36 67.83 12 71 886  1  0  0  1 11  1
## 31 217.38 67.25 13 72 745  1  0  0  0  8  1
## 32 270.71 67.83  7 80 886  1  0  0  1 11  1

-Kế tiếp đó ta thêm một cột dữ liệu cho tệp ‘nu’ dự trên phân tổ của biến chi phí xây dựng (Co). Trong đó sẽ chia làm 4 khoảng từ 207 đến 376, từ 376 đến 544, từ 544 đến 713, từ 713 đến 882. Tham số labels được dùng để đặt tên cho các khoảng

-Sau đó ta có thể lập bảng biến chi phí xây dựng mới bằng lệnh table

-Bảng này cho ta biết:

  • Có 11 lò phản ứng có chí phi đều ở tầm thấp và trung bình chiếm 34,375%

  • Có 9 lò phản ứng có chi phí ở tầm cao chiếM 28,125%

  • Có 1 lò phản ứng có chi phí rất cao chiếm 3,125%

cut(nu$Co,4)
##  [1] (376,544] (376,544] (376,544] (544,713] (544,713] (207,376] (207,376]
##  [8] (207,376] (376,544] (544,713] (207,376] (376,544] (376,544] (376,544]
## [15] (376,544] (376,544] (544,713] (207,376] (713,882] (376,544] (544,713]
## [22] (544,713] (544,713] (544,713] (376,544] (544,713] (207,376] (207,376]
## [29] (207,376] (207,376] (207,376] (207,376]
## Levels: (207,376] (376,544] (544,713] (713,882]
nu$Cos <- cut(nu$Co, breaks=c(207,376,544,713,882), labels=c("thap","trung","cao","rat cao"))
table(nu$Cos)
## 
##    thap   trung     cao rat cao 
##      11      11       9       1
table(nu$Cos)/32*100
## 
##    thap   trung     cao rat cao 
##  34.375  34.375  28.125   3.125

6.3 Thống Kê biến

-Để nhìn tổng quan chúng ta có thể dùng lệnh summary để biết được các thông tin về trung bình, max, min. trung vị và các tứu phân vị của các biến

-Sau đó ta có thể sử dụng các lệnh thống kê cơ bản để phân tích về biến chi phí (Co)

-Kết quả đạt được có ý nghĩa như sau:

  • Lệnh mean cho biết chi phí trung bình là 461,5601 triệu đô la

  • Lệnh median cho biết có 1 nửa lò phản ứng có mức chi phí dưới 448,105 triệu đô la

  • Lệnh sd cho biết độ lệch chuẩn của biến ‘Co’ là 170,1207

  • Lệnh quantitile cho biết có 75% số lò phản ứng có mức chi phí thấp hơn hoặc bằng 611,9625 triệu đô la

-Tiếp theo ta có thể quan sát sự phân bố dữ liệu qua biểu đồ histogram,ta thực hiện lệnh hist

summary(nu)
##        Co              Da              T1              T2       
##  Min.   :207.5   Min.   :67.17   Min.   : 7.00   Min.   :44.00  
##  1st Qu.:310.3   1st Qu.:67.90   1st Qu.:11.75   1st Qu.:56.50  
##  Median :448.1   Median :68.42   Median :13.00   Median :62.50  
##  Mean   :461.6   Mean   :68.58   Mean   :13.75   Mean   :62.38  
##  3rd Qu.:612.0   3rd Qu.:68.92   3rd Qu.:15.25   3rd Qu.:70.25  
##  Max.   :881.2   Max.   :71.08   Max.   :22.00   Max.   :85.00  
##        Ca               Pr               Ne             Ct        
##  Min.   : 457.0   Min.   :0.0000   Min.   :0.00   Min.   :0.0000  
##  1st Qu.: 745.0   1st Qu.:0.0000   1st Qu.:0.00   1st Qu.:0.0000  
##  Median : 822.0   Median :0.0000   Median :0.00   Median :0.0000  
##  Mean   : 825.4   Mean   :0.3125   Mean   :0.25   Mean   :0.4062  
##  3rd Qu.: 947.2   3rd Qu.:1.0000   3rd Qu.:0.25   3rd Qu.:1.0000  
##  Max.   :1130.0   Max.   :1.0000   Max.   :1.00   Max.   :1.0000  
##        Bw               Cu               Pt              Cos    
##  Min.   :0.0000   Min.   : 1.000   Min.   :0.0000   thap   :11  
##  1st Qu.:0.0000   1st Qu.: 3.000   1st Qu.:0.0000   trung  :11  
##  Median :0.0000   Median : 7.500   Median :0.0000   cao    : 9  
##  Mean   :0.1875   Mean   : 8.531   Mean   :0.1875   rat cao: 1  
##  3rd Qu.:0.0000   3rd Qu.:12.500   3rd Qu.:0.0000               
##  Max.   :1.0000   Max.   :21.000   Max.   :1.0000
mean(nu$Co)
## [1] 461.5603
median(nu$Co)
## [1] 448.105
sd(nu$Co)
## [1] 170.1207
quantile(nu$Co,.75)
##      75% 
## 611.9625
hist(nu$Co)

-Tiếp theo, chúng ta có thể tổng hợp dữ liệu của biến ‘Co’ theo các biến’Ne’,‘Ct’. CỤ thể hơn, ta tổng hợp biến ‘Co’ theo các biến trên trong dataframe và tính trung bình của ‘Co’ theo mỗi giá trị của các biến trên

-Ý nghĩa của các bảng lần lượt là:

  • Biến Co theo Ne:

  • Những lò phản ứng không được xây dựng ở phía Đông Bắc Hoa Kỳ có mức chi phí trung bình là 424,9542 triệu đô la

  • Những lò phản ứng được xây dựng ở phía Đông Bắc Hoa Kỳ có mức chi phí trung bình là 571,3787 triệu đô la

  • Biến Co theo Ct:

  • Những lò phản ứng không được cho phép việc sử dụng tháp giải nhiệt trong nhà máy có mức chi phí là 432,2237 triệu đô la

  • Những lò phản ứng được cho phép việc sử dụng tháp giải nhiệt trong nhà máy có mức chi phí là 505,8985 triệu đô la

aggregate(Co~Ne,nu, FUN=mean)
##   Ne       Co
## 1  0 424.9542
## 2  1 571.3787
aggregate(Co~Ct,nu, FUN=mean)
##   Ct       Co
## 1  0 431.2237
## 2  1 505.8985

-Kế tiếp, ta tạo một biến tên là BW để gán tên cho các giá trị 0 là sai và 1 là đúng với biến Bw trong tệp ‘nu’

-Sau đó, ta dùng lệnh “group_by” để phân nhóm dữ liệu theo Đúng/Sai. Dùng lệnh summarise để tính trung bình và tổng chi phí dựa vào tính Đúng/Sai

  • Ở nhóm Sai (ý nghĩa: lò phản ứng không có hệ thống cung cấp hơi nước hạt nhân được sản xuất bởi Babcock-Wilcox) thì có chi phí trung bình là 472,3708 triệu đô la cao hơn nhóm Đúng 57,6558 triệu đô la
  • Và tổng của nhóm Sai có mức chi phí là 12281,64 triệu đô la gấp 5 lần ở nhóm Đúng
library(tidyverse)
nu$BW <- factor(nu$Bw, labels=c("Sai","Dung"))
nu$BW
##  [1] Sai  Sai  Sai  Sai  Sai  Sai  Sai  Sai  Sai  Dung Sai  Sai  Sai  Sai  Dung
## [16] Sai  Sai  Sai  Sai  Sai  Dung Sai  Sai  Sai  Sai  Sai  Sai  Sai  Dung Dung
## [31] Sai  Dung
## Levels: Sai Dung
group_by(nu,BW) %>% summarise(mean=mean(Co),sum=sum(Co))
## # A tibble: 2 × 3
##   BW     mean    sum
##   <fct> <dbl>  <dbl>
## 1 Sai    472. 12282.
## 2 Dung   415.  2488.

-Ngoài ra để có thể phân biệt các người thu thập dữ liệu và ghép chúng lại thành một cột ta có cách dùng như sau:

  • Giả sử 10 số liệu đầu do người thu thập tên là X

  • Tiếp theo 10 số liệu tiếp là của người thu thập Y

  • Cuối cúng 10 số liệu tiếp là của người thu thập Z

-Cuối cùng, ta dừng lênh rbind để nối 3 data trên thành một data mới có tên là CapNew

ca <- nu$Ca
ca1 <- ca[1:10]
ca2 <- ca[11:20]
ca3 <- ca[21:30]
cap1 <- data.frame(solieu=ca1, nguoithuthap="X")
cap2 <- data.frame(solieu=ca2, nguoithuthap="Y")
cap3 <- data.frame(solieu=ca3, nguoithuthap="Z")
CapNew <- rbind(cap1,cap2,cap3)
CapNew
##    solieu nguoithuthap
## 1     687            X
## 2    1065            X
## 3    1065            X
## 4    1065            X
## 5    1065            X
## 6     514            X
## 7     822            X
## 8     457            X
## 9     822            X
## 10    792            X
## 11    560            Y
## 12    790            Y
## 13    530            Y
## 14   1050            Y
## 15    850            Y
## 16    778            Y
## 17    845            Y
## 18    530            Y
## 19   1090            Y
## 20   1050            Y
## 21    913            Z
## 22    828            Z
## 23    786            Z
## 24    821            Z
## 25    538            Z
## 26   1130            Z
## 27    745            Z
## 28    821            Z
## 29    886            Z
## 30    886            Z

7 Bài tập tuần 1

Tập dữ liệu nuclear trong package boot là Dữ liệu liên quan đến việc xây dựng 32 nhà máy lò phản ứng nước nhẹ (LWR) được xây dựng ở Hoa Kỳ vào cuối những năm 1960 và đầu những năm 1970. Dữ liệu được thu thập với mục đích dự đoán chi phí xây dựng các nhà máy LWR tiếp theo. 6 trong số các nhà máy điện có bảo đảm chìa khóa trao tay một phần và có thể, đối với các nhà máy này, một số khoản trợ cấp của nhà sản xuất có thể được ẩn trong chi phí vốn được báo giá.

7.1 Giải thích thêm:

-Lò phản ứng nước nhẹ là một loại lò phản ứng neutron nhiệt sử dụng nước bình thường thay vì nước nặng, một dạng nước chứa một lượng lớn đồng vị deuterium hydro. Nước bình thường có chứa đồng vị hydro-1 được gọi là protium. Các lò phản ứng nước nhẹ sử dụng nước vừa là phương pháp làm mát vừa là chất điều tiết nơtron làm giảm tốc độ của các nơtron chuyển động nhanh. Lò phản ứng nước nhẹ tạo ra nhiệt bằng phản ứng phân hạch hạt nhân có kiểm soát.

-Nước nhẹ đơn giản là nước bình thường không chứa một lượng lớn đơteri, khiến nó khác biệt với nước nặng. Mặc dù nước này có chứa một số lượng nhỏ các phân tử nước nặng, nhưng nó không đủ để tạo ra bất kỳ thay đổi đáng kể nào về tính chất của nó. Nước nhẹ đóng một vai trò quan trọng trong việc tạo ra điện từ năng lượng hạt nhân, vì nó có thể đóng vai trò vừa là chất điều hòa vừa là chất làm mát để mang đi năng lượng được tạo ra bởi phản ứng phân hạch hạt nhân.

7.2 Giải thích các biến

  • Cost(Chi phí): Chi phí vốn xây dựng hàng triệu đô la được điều chỉnh theo cơ sở năm 1976.
  • Date(Ngày): Ngày cấp giấy phép xây dựng. Dữ liệu được tính theo năm kể từ ngày 1 tháng 1 năm 1990 đến tháng gần nhất.
  • t1: Thời gian từ khi xin phép đến khi cấp giấy phép xây dựng.
  • t2: Thời gian từ khi cấp phép hoạt động đến khi cấp phép xây dựng.
  • Cap: Công suất thuần của nhà máy điện (MWe).
  • pr: biến 1 chỉ ra sự tồn tại trước đó của một nhà máy LWR tại cùng một địa điểm.
  • ne: Biến 1 chỉ ra rằng nhà máy được xây dựng ở vùng đông bắc của Hoa Kỳ.
  • ct: Biến 1 biểu thị việc sử dụng tháp giải nhiệt trong nhà máy.
  • bw: Biến 1 chỉ ra rằng hệ thống cung cấp hơi nước hạt nhân được sản xuất bởi Babcock-Wilcox.
  • cum.n: Số lượng tích lũy của các nhà máy điện được xây dựng bởi mỗi kiến trúc sư-kỹ sư.
  • pt:Biến Một chỉ ra những nhà máy có đảm bảo chìa khóa trao tay một phần.

7.3 Quy trình xử lý dữ liệu

Tôi thực hiện lần lượt mở package boot bằng hàm library(), sau đó trích xuất dữ liệu nuclear bằng hàm data(). Kế tiếp tôi tiếp tục thục hiên đặt tên cho dữ liệu và các biến trong dữ liệu bằng câu lên gán và names(). Cuối cùng tôi thực hiện các câu lệnh và hàm để thống kê, phân tích dữ liệu, lập bảng tần số và tính toán kèm theo nhận xét thông qua số liệu đã được xử lý.

Các câu lệnh được trình bày như sau:

#Mở package boot để trích xuất dữ liệu nuclear
library(boot)
data(nuclear)

#Gán tập dữ liệu vào n
n <- nuclear

#Cấu trúc của tập dữ liệu n
str(n)
## 'data.frame':    32 obs. of  11 variables:
##  $ cost : num  460 453 443 652 642 ...
##  $ date : num  68.6 67.3 67.3 68 68 ...
##  $ t1   : num  14 10 10 11 11 13 12 14 15 12 ...
##  $ t2   : num  46 73 85 67 78 51 50 59 55 71 ...
##  $ cap  : num  687 1065 1065 1065 1065 ...
##  $ pr   : num  0 0 1 0 1 0 0 0 1 0 ...
##  $ ne   : num  1 0 0 1 1 1 0 0 0 1 ...
##  $ ct   : num  0 1 1 1 1 1 0 0 0 1 ...
##  $ bw   : num  0 0 0 0 0 0 0 0 0 1 ...
##  $ cum.n: num  14 1 1 12 12 3 5 1 5 2 ...
##  $ pt   : num  0 0 0 0 0 0 0 0 0 0 ...
#Đặt tên cho các biên trong tập dữ liệu n
names(n) <- c('C','D','T1','T2','Ca','Pr','Ne','Ct','Bw','Cu','Pt')

#Lấy 6 cái trong tập dữ liệu n
head(n)
##        C     D T1 T2   Ca Pr Ne Ct Bw Cu Pt
## 1 460.05 68.58 14 46  687  0  1  0  0 14  0
## 2 452.99 67.33 10 73 1065  0  0  1  0  1  0
## 3 443.22 67.33 10 85 1065  1  0  1  0  1  0
## 4 652.32 68.00 11 67 1065  0  1  1  0 12  0
## 5 642.23 68.00 11 78 1065  1  1  1  0 12  0
## 6 345.39 67.92 13 51  514  0  1  1  0  3  0
#Gán biến C(Chi phí) vào Cos
Cos <- n$C

#Lọc dữ liệu lò phản ứng có chi phí xây dựng nhiều hơn 300 triệu đô la và ít hơn 500 triệu đô la
Cos300_500 <- Cos[Cos>300 & Cos<500]
Cos300_500
##  [1] 460.05 452.99 443.22 345.39 317.21 457.12 350.63 402.59 412.18 495.58
## [11] 394.36 423.32 490.88 473.64

Nhận xét: Sau khi lọc dữ liệu ta thấy được có 14 trên 32 lò phản ứng có chi phí xây dựng từ 300 đến 500 triệu đô la chiếm 43,75%

#Gán biến Ca(Công suất) vào Cap
Cap <- n$Ca

#Lọc dữ liệu các lò phản ứng có chi phí lớn hơn 300 triệu đô la và có công suất lơn hơn 700
Cos300Cap700 <- n[n$C>300&n$Ca>700,]
Cos300Cap700
##         C     D T1 T2   Ca Pr Ne Ct Bw Cu Pt
## 2  452.99 67.33 10 73 1065  0  0  1  0  1  0
## 3  443.22 67.33 10 85 1065  1  0  1  0  1  0
## 4  652.32 68.00 11 67 1065  0  1  1  0 12  0
## 5  642.23 68.00 11 78 1065  1  1  1  0 12  0
## 9  457.12 68.42 15 55  822  1  0  0  0  5  0
## 10 690.19 68.33 12 71  792  0  1  1  1  2  0
## 12 402.59 68.75 13 47  790  0  1  0  0  6  0
## 14 495.58 68.92 17 52 1050  0  0  0  0  7  0
## 15 394.36 68.92 13 65  850  0  0  0  1 16  0
## 16 423.32 68.42 11 67  778  0  0  0  0  3  0
## 17 712.27 69.50 18 60  845  0  1  0  0 17  0
## 19 881.24 69.17 15 67 1090  0  0  0  0  1  0
## 20 490.88 68.92 16 59 1050  1  0  0  0  8  0
## 21 567.79 68.75 11 70  913  0  0  1  1 15  0
## 22 665.99 70.92 22 57  828  1  1  0  0 20  0
## 23 621.45 69.67 16 59  786  0  0  1  0 18  0
## 24 608.80 70.08 19 58  821  1  0  0  0  3  0
## 26 697.14 71.08 20 57 1130  0  0  1  0 21  0

Nhận xét: Sau khi lọc dữ liệu ta thấy được có 18 trên 32 lò phản ứng có chi phí xây dưng từ 300 triệu đô la trở lên và có công suất lơn hơn 700 chiếm 56,25%

#Tỏng chí phí xây dưng 32 lò phản ứng
sum(Cos)
## [1] 14769.93
#Tổng công suất của 32 lò phản ứng
sum(Cap)
## [1] 26412

Nhận xét: Để xây dựng 32 lò phản ứng thì chi phí phải bỏ ra là 14769,93 triệu đô la và tạo ra tổng công suất lên tới 26412

#Chia 2 biến chi phí xây dựng và công suất thành 4 tổ
cut(n$C,4)
##  [1] (376,544] (376,544] (376,544] (544,713] (544,713] (207,376] (207,376]
##  [8] (207,376] (376,544] (544,713] (207,376] (376,544] (376,544] (376,544]
## [15] (376,544] (376,544] (544,713] (207,376] (713,882] (376,544] (544,713]
## [22] (544,713] (544,713] (544,713] (376,544] (544,713] (207,376] (207,376]
## [29] (207,376] (207,376] (207,376] (207,376]
## Levels: (207,376] (376,544] (544,713] (713,882]
cut(n$Ca,4)
##  [1] (625,794]      (962,1.13e+03] (962,1.13e+03] (962,1.13e+03] (962,1.13e+03]
##  [6] (456,625]      (794,962]      (456,625]      (794,962]      (625,794]     
## [11] (456,625]      (625,794]      (456,625]      (962,1.13e+03] (794,962]     
## [16] (625,794]      (794,962]      (456,625]      (962,1.13e+03] (962,1.13e+03]
## [21] (794,962]      (794,962]      (625,794]      (794,962]      (456,625]     
## [26] (962,1.13e+03] (625,794]      (794,962]      (794,962]      (794,962]     
## [31] (625,794]      (794,962]     
## Levels: (456,625] (625,794] (794,962] (962,1.13e+03]
#Bảng tần sô giữ chi phí xây dựng và số lượng kỹ sư hoặc kiên trúc sư tham gia xây dựng
table(cut(n$C,4),cut(n$Cu,4))
##            
##             (0.98,6] (6,11] (11,16] (16,21]
##   (207,376]        5      6       0       0
##   (376,544]        6      2       2       1
##   (544,713]        2      0       3       4
##   (713,882]        1      0       0       0

Nhận xét:

  • Có tổng cộng 14 lò phản ứng được xây dựng bởi nhóm có từ (1-6) kỹ sư/kiến trúc sư chiếm 43,75%, có 8 lò phản ứng được nhóm (6-11) người xây dựng chiếm 25%, còn lại 10 lò phản ứng được chia đều cho 2 nhóm (11-16) và (16-21) chiếm 15,625%

  • Có 11 lò phản ứng được xây dựng với mỗi loại chi phí từ (207-376) và (376-544) chiếm 34,375%, còn lại 9 lò phản ứng được xây dựng với chi phí (544-713) chiếm 28,125% (chi phí: triệu đô la)

#Bảng tần số giữa chi phí xây dững với các lò phản ứng có chìa khóa để được tiến hành đưa vào sử dụng sau khi được xây dựng
table(cut(n$C,4),n$Pt)
##            
##              0  1
##   (207,376]  5  6
##   (376,544] 11  0
##   (544,713]  9  0
##   (713,882]  1  0
#Bảng tần số giữ công suất với các lò phản ứng có chìa khóa để được tiến hành đưa vào sử dụng sau khi được xây dựng
table(cut(n$Ca,4),n$Pt)
##                 
##                  0 1
##   (456,625]      6 0
##   (625,794]      5 2
##   (794,962]      7 4
##   (962,1.13e+03] 8 0

Nhận xét: Ta thấy 2 bảng trên, ta thấy được có 6 lò phản ứng được trao chìa khóa có công suất tương đối cao từ (625-962) nhưng chi phí xây dưng chỉ nằm trong khoảng (207-376) triệu đô la thấp nhất trong các khoảng chi phí

#Tính log của các biên Cap và Cos
n$logCap <- log(Cap)
n$logCap
##  [1] 6.532334 6.970730 6.970730 6.970730 6.970730 6.242223 6.711740 6.124683
##  [9] 6.711740 6.674561 6.327937 6.672033 6.272877 6.956545 6.745236 6.656727
## [17] 6.739337 6.272877 6.993933 6.956545 6.816736 6.719013 6.666957 6.710523
## [25] 6.287859 7.029973 6.613384 6.710523 6.786717 6.786717 6.613384 6.786717
n$logCos <- log(Cos)
n$logCos
##  [1] 6.131335 6.115870 6.094066 6.480535 6.464946 5.844674 5.607161 5.759564
##  [9] 6.124946 6.536967 5.859732 5.997919 6.021460 6.205729 5.977264 6.048128
## [17] 6.568457 5.668708 6.781330 6.196200 6.341752 6.501275 6.432055 6.411490
## [25] 6.160448 6.546986 5.335180 5.664626 5.652068 5.636074 5.381647 5.601048