Skip to content

Latest commit

 

History

History
137 lines (116 loc) · 6.5 KB

test.md

File metadata and controls

137 lines (116 loc) · 6.5 KB

1928-1969間,小兒麻痺在美國各州的發生率變化

資料前處理

讀資料進來

polio<-read.csv("POLIO_Incidence.csv",stringsAsFactors = F)
head(polio)
##   YEAR WEEK ALABAMA ALASKA ARIZONA ARKANSAS CALIFORNIA COLORADO
## 1 1928    1       0      -       0        0       0.17     0.39
## 2 1928    2       0      -       0        0       0.15      0.2
## 3 1928    3    0.04      -       0        0       0.11        0
## 4 1928    4       0      -    0.24     0.11       0.07      0.2
## 5 1928    5       0      -    0.24        0       0.32        0
## 6 1928    6       0      -       0        0       0.22      0.1
##   CONNECTICUT DELAWARE DISTRICT.OF.COLUMBIA FLORIDA GEORGIA HAWAII IDAHO
## 1           0        0                    -       0    0.03      -     0
## 2           0        0                    -       0       0      -     0
## 3        0.06        0                    -       0       -      -     0
## 4        0.06        0                    0       0       0      -     0
## 5        0.13        0                    0       0       0      -     0
## 6           0        0                    0       0       0      -     -
##   ILLINOIS INDIANA IOWA KANSAS KENTUCKY LOUISIANA MAINE MARYLAND
## 1     0.03    0.03 0.08      0        0         0     0     0.06
## 2     0.01    0.03    -   0.22        0      0.05  0.13     0.06
## 3     0.03    0.03    -      0        0         0     0        0
## 4     0.05    0.12    0      0        0         0     0        0
## 5     0.04       0 0.04      0        0         0  0.38     0.12
## 6     0.03       0    0      0        0         0     0        0
##   MASSACHUSETTS MICHIGAN MINNESOTA MISSISSIPPI MISSOURI MONTANA NEBRASKA
## 1          0.14     0.04         0           0     0.03    0.18     0.07
## 2          0.14     0.04      0.04           0     0.06       0     0.07
## 3          0.07     0.02         0           0     0.03    0.18        0
## 4          0.02     0.02         0           0     0.06       0        0
## 5          0.02     0.04         0           0        0       0     0.15
## 6          0.05     0.06         0           0        0       0     0.07
##   NEVADA NEW.HAMPSHIRE NEW.JERSEY NEW.MEXICO NEW.YORK NORTH.CAROLINA
## 1      -             -       0.08          0     0.08              0
## 2      -             -       0.03          0     0.05           0.03
## 3      -             -          0          0     0.03              0
## 4      -             0       0.03          0     0.06              0
## 5      -             0       0.03       0.48     0.07              0
## 6      -             0          0          0     0.03              0
##   NORTH.DAKOTA OHIO OKLAHOMA OREGON PENNSYLVANIA RHODE.ISLAND
## 1            - 0.02        0   0.64            0            0
## 2         0.45    -     0.04   0.43         0.03            0
## 3            0 0.06        0   1.07         0.02            0
## 4         0.15    0     0.09   0.53         0.02            0
## 5            0 0.03        0   0.32            0            0
## 6            0 0.05     0.04   0.21         0.04            0
##   SOUTH.CAROLINA SOUTH.DAKOTA TENNESSEE TEXAS UTAH VERMONT VIRGINIA
## 1           0.06            0      0.04  0.05    0       0        -
## 2           0.06            0      0.04  0.04    0       0        -
## 3           0.35            0         0     0    0       0        -
## 4           0.23            0      0.04  0.05    0       0        -
## 5           0.17         0.15         0  0.05    0       0        -
## 6           0.06         0.29      0.04     0  0.2       0     0.04
##   WASHINGTON WEST.VIRGINIA WISCONSIN WYOMING
## 1       0.26          0.06      0.03       0
## 2       0.39          0.24      0.03       0
## 3       0.13          0.12      0.03       0
## 4       0.06          0.12         0       0
## 5       0.13          0.06      0.03       0
## 6       0.06             0      0.14       0

將寬表格轉為長表格

#install.packages("reshape")
library(reshape)
## Warning: package 'reshape' was built under R version 3.2.5
polio.m<-melt(polio,id.vars = c('YEAR','WEEK'))
head(polio.m)
##   YEAR WEEK variable value
## 1 1928    1  ALABAMA     0
## 2 1928    2  ALABAMA     0
## 3 1928    3  ALABAMA  0.04
## 4 1928    4  ALABAMA     0
## 5 1928    5  ALABAMA     0
## 6 1928    6  ALABAMA     0

處理缺值

polio.m[polio.m$value=="-",]$value<-NA #處理缺值,將"-"轉為NA
polio.m$value<-as.numeric(as.character(polio.m$value)) #將value欄位轉為數字

計算年度發生率

polio.sumYear<- #各州各年度加總,計算該年度的總發生率
    aggregate(value~YEAR+variable,data=polio.m,FUN=sum,na.rm=F)
head(polio.sumYear)
##   YEAR variable value
## 1 1928  ALABAMA  2.39
## 2 1929  ALABAMA  2.25
## 3 1930  ALABAMA  2.57
## 4 1931  ALABAMA  2.07
## 5 1932  ALABAMA  1.38
## 6 1933  ALABAMA  1.12

視覺化呈現

因要求顯示1928-1969年間小兒麻痺在美國各州的發生率變化,表示需要用三維的圖來呈現各洲每年的發生率,x軸放年度,y軸放各州的名字,每個點則放小兒麻痺的發生率,藉此就能清楚比較每個州每年的發生率之間的關係,也可以清楚看到在1955年之後,發生率都有變小的趨勢,因而選擇使用以Heatmap來畫圖。

#install.packages("ggplot2")
library(ggplot2) #for ggplot()
## Warning: package 'ggplot2' was built under R version 3.2.5
ggplot(polio.sumYear, aes(YEAR,variable )) + #aes(x,y)
    geom_tile(aes(fill = value),colour = "white")+ #geom_tile: 區塊著色
      geom_vline(xintercept = 1955)+ #geom_tile: 區塊著色
    scale_fill_gradient(low = "white",high = "red") #數值低:白色

圖形說明: 上圖為美國在1928-1969年間,小兒麻痺在各州的發生率變化。可以發現在1928-1955年間發生率每年都有慢慢成長的趨勢,但是自從1955年出現小兒麻痺疫苗之後,發生率瞬間驟降,甚至有些州發生率等於0,可見小兒麻痺疫苗帶來很好的效果。