Read Data

pisa = read.csv("C:/Users/Paul Vo/Desktop/Textbook/PISA Data Vietnam 2015.csv")
head(pisa)
##     School SchoolSize ClassSize STratio SchoolType  Area Region   Age Gender
## 1 70400001        883        18  22.075          3 URBAN  SOUTH 15.58   Boys
## 2 70400001        883        18  22.075          3 URBAN  SOUTH 15.92   Boys
## 3 70400001        883        18  22.075          3 URBAN  SOUTH 15.42  Girls
## 4 70400001        883        18  22.075          3 URBAN  SOUTH 15.58  Girls
## 5 70400001        883        18  22.075          3 URBAN  SOUTH 15.92  Girls
## 6 70400001        883        18  22.075          3 URBAN  SOUTH 16.25  Girls
##   PARED HISCED  WEALTH INSTSCIE JOYSCIE  ICTRES    Math    Read Science
## 1     9      2 -2.0697   0.9798  2.1635 -1.5244 439.923 412.290 475.612
## 2    12      4 -1.7903   1.7359  2.1635 -1.9305 406.251 409.598 450.320
## 3     9      2 -2.1942  -0.2063 -0.1808 -1.6093 414.369 384.307 405.787
## 4     5      1 -2.0301  -0.3115 -0.4318 -1.6250 468.801 459.104 462.968
## 5     9      2 -1.0522   0.7648  1.3031 -0.5305 355.432 402.435 453.736
## 6     5      1 -3.0570   0.3708  0.5094 -2.5873 458.955 483.885 529.866

Checking

Rows and Columns

dim(pisa)
## [1] 5826   18

Overview

summary(pisa)
##      School           SchoolSize     ClassSize        STratio      
##  Min.   :70400001   Min.   : 113   Min.   :13.00   Min.   : 4.314  
##  1st Qu.:70400052   1st Qu.: 650   1st Qu.:38.00   1st Qu.:14.024  
##  Median :70400096   Median :1090   Median :38.00   Median :16.627  
##  Mean   :70400097   Mean   :1082   Mean   :40.57   Mean   :16.497  
##  3rd Qu.:70400143   3rd Qu.:1419   3rd Qu.:43.00   3rd Qu.:18.983  
##  Max.   :70400188   Max.   :4016   Max.   :53.00   Max.   :38.651  
##                                    NA's   :34                      
##    SchoolType        Area          Region          Age          Gender    
##  Min.   :1.000   REMOTE: 410   CENTRAL:2006   Min.   :15.33   Boys :2786  
##  1st Qu.:3.000   RURAL :2368   NORTH  :1958   1st Qu.:15.50   Girls:3040  
##  Median :3.000   URBAN :3048   SOUTH  :1862   Median :15.75               
##  Mean   :2.849                                Mean   :15.78               
##  3rd Qu.:3.000                                3rd Qu.:16.00               
##  Max.   :3.000                                Max.   :16.25               
##  NA's   :35                                                               
##      PARED            HISCED         WEALTH          INSTSCIE      
##  Min.   : 3.000   Min.   :0.00   Min.   :-7.635   Min.   :-1.9301  
##  1st Qu.: 9.000   1st Qu.:2.00   1st Qu.:-2.829   1st Qu.: 0.0125  
##  Median : 9.000   Median :2.00   Median :-2.163   Median : 0.3708  
##  Mean   : 9.374   Mean   :2.58   Mean   :-2.219   Mean   : 0.4835  
##  3rd Qu.:12.000   3rd Qu.:4.00   3rd Qu.:-1.504   3rd Qu.: 1.0218  
##  Max.   :17.000   Max.   :6.00   Max.   : 3.211   Max.   : 1.7359  
##  NA's   :14       NA's   :14     NA's   :15       NA's   :17       
##     JOYSCIE            ICTRES            Math            Read      
##  Min.   :-2.1154   Min.   :-3.508   Min.   :201.7   Min.   :107.1  
##  1st Qu.: 0.5094   1st Qu.:-2.587   1st Qu.:440.0   1st Qu.:442.5  
##  Median : 0.5094   Median :-1.855   Median :493.4   Median :489.5  
##  Mean   : 0.6448   Mean   :-1.795   Mean   :496.1   Mean   :489.9  
##  3rd Qu.: 1.1049   3rd Qu.:-1.117   3rd Qu.:551.5   3rd Qu.:537.6  
##  Max.   : 2.1635   Max.   : 3.497   Max.   :820.1   Max.   :744.1  
##  NA's   :19        NA's   :34                                      
##     Science     
##  Min.   :292.7  
##  1st Qu.:470.9  
##  Median :523.9  
##  Mean   :524.8  
##  3rd Qu.:574.8  
##  Max.   :807.3  
## 

Making table

table(pisa$Area)
## 
## REMOTE  RURAL  URBAN 
##    410   2368   3048

Replace table

pisa$Area = factor(pisa$Area,levels=c('URBAN','RURAL','REMOTE'))
table(pisa$Area)
## 
##  URBAN  RURAL REMOTE 
##   3048   2368    410

pisa$Type [pisa$SchoolType == 1] = "Private"
pisa$Type [pisa$SchoolType == 3] = "Public"
table(pisa$Type)
## 
## Private  Public 
##     436    5355

instal.packages(“table1”)

library(table1)
## Warning: package 'table1' was built under R version 3.4.4
## 
## Attaching package: 'table1'
## The following objects are masked from 'package:base':
## 
##     units, units<-

Call name data again

names(pisa)
##  [1] "School"     "SchoolSize" "ClassSize"  "STratio"    "SchoolType"
##  [6] "Area"       "Region"     "Age"        "Gender"     "PARED"     
## [11] "HISCED"     "WEALTH"     "INSTSCIE"   "JOYSCIE"    "ICTRES"    
## [16] "Math"       "Read"       "Science"    "Type"

Making table

table1(~SchoolSize + ClassSize + Gender|Area, data = pisa)
URBAN
(n=3048)
RURAL
(n=2368)
REMOTE
(n=410)
Overall
(n=5826)
SchoolSize
Mean (SD) 1140 (564) 1080 (609) 700 (337) 1080 (581)
Median [Min, Max] 1180 [113, 3370] 976 [134, 4020] 691 [246, 1290] 1090 [113, 4020]
ClassSize
Mean (SD) 41.0 (7.59) 39.8 (7.69) 41.5 (10.5) 40.6 (7.90)
Median [Min, Max] 43.0 [13.0, 53.0] 38.0 [13.0, 53.0] 38.0 [13.0, 53.0] 38.0 [13.0, 53.0]
Missing 34 (1.1%) 0 (0%) 0 (0%) 34 (0.6%)
Gender
Boys 1460 (47.9%) 1106 (46.7%) 220 (53.7%) 2786 (47.8%)
Girls 1588 (52.1%) 1262 (53.3%) 190 (46.3%) 3040 (52.2%)

compareGroup packed

#library("compareGroups")
#t=compareGroups(Area~WEALTH+PARED+Math+Read+Science, data=pisa)
#createTable(t)