#Loading packages
library(ggplot2)
library(psych)
##
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
##
## %+%, alpha
library(table1)
##
## Attaching package: 'table1'
## The following objects are masked from 'package:base':
##
## units, units<-
library(compareGroups)
#Check format of data
data(diamonds)
str(diamonds)
## tibble[,10] [53,940 x 10] (S3: tbl_df/tbl/data.frame)
## $ carat : num [1:53940] 0.23 0.21 0.23 0.29 0.31 0.24 0.24 0.26 0.22 0.23 ...
## $ cut : Ord.factor w/ 5 levels "Fair"<"Good"<..: 5 4 2 4 2 3 3 3 1 3 ...
## $ color : Ord.factor w/ 7 levels "D"<"E"<"F"<"G"<..: 2 2 2 6 7 7 6 5 2 5 ...
## $ clarity: Ord.factor w/ 8 levels "I1"<"SI2"<"SI1"<..: 2 3 5 4 2 6 7 3 4 5 ...
## $ depth : num [1:53940] 61.5 59.8 56.9 62.4 63.3 62.8 62.3 61.9 65.1 59.4 ...
## $ table : num [1:53940] 55 61 65 58 58 57 57 55 61 61 ...
## $ price : int [1:53940] 326 326 327 334 335 336 336 337 337 338 ...
## $ x : num [1:53940] 3.95 3.89 4.05 4.2 4.34 3.94 3.95 4.07 3.87 4 ...
## $ y : num [1:53940] 3.98 3.84 4.07 4.23 4.35 3.96 3.98 4.11 3.78 4.05 ...
## $ z : num [1:53940] 2.43 2.31 2.31 2.63 2.75 2.48 2.47 2.53 2.49 2.39 ...
#Traditional method ##Major disadvatage: cannot create a whole table for data
summary(diamonds)
## carat cut color clarity depth
## Min. :0.2000 Fair : 1610 D: 6775 SI1 :13065 Min. :43.00
## 1st Qu.:0.4000 Good : 4906 E: 9797 VS2 :12258 1st Qu.:61.00
## Median :0.7000 Very Good:12082 F: 9542 SI2 : 9194 Median :61.80
## Mean :0.7979 Premium :13791 G:11292 VS1 : 8171 Mean :61.75
## 3rd Qu.:1.0400 Ideal :21551 H: 8304 VVS2 : 5066 3rd Qu.:62.50
## Max. :5.0100 I: 5422 VVS1 : 3655 Max. :79.00
## J: 2808 (Other): 2531
## table price x y
## Min. :43.00 Min. : 326 Min. : 0.000 Min. : 0.000
## 1st Qu.:56.00 1st Qu.: 950 1st Qu.: 4.710 1st Qu.: 4.720
## Median :57.00 Median : 2401 Median : 5.700 Median : 5.710
## Mean :57.46 Mean : 3933 Mean : 5.731 Mean : 5.735
## 3rd Qu.:59.00 3rd Qu.: 5324 3rd Qu.: 6.540 3rd Qu.: 6.540
## Max. :95.00 Max. :18823 Max. :10.740 Max. :58.900
##
## z
## Min. : 0.000
## 1st Qu.: 2.910
## Median : 3.530
## Mean : 3.539
## 3rd Qu.: 4.040
## Max. :31.800
##
#Psych package ##Problem: Too voluminous
describe(diamonds, skew=F)
## vars n mean sd min max range se
## carat 1 53940 0.80 0.47 0.2 5.01 4.81 0.00
## cut* 2 53940 3.90 1.12 1.0 5.00 4.00 0.00
## color* 3 53940 3.59 1.70 1.0 7.00 6.00 0.01
## clarity* 4 53940 4.05 1.65 1.0 8.00 7.00 0.01
## depth 5 53940 61.75 1.43 43.0 79.00 36.00 0.01
## table 6 53940 57.46 2.23 43.0 95.00 52.00 0.01
## price 7 53940 3932.80 3989.44 326.0 18823.00 18497.00 17.18
## x 8 53940 5.73 1.12 0.0 10.74 10.74 0.00
## y 9 53940 5.73 1.14 0.0 58.90 58.90 0.00
## z 10 53940 3.54 0.71 0.0 31.80 31.80 0.00
#Table1 ##Suitable for most of scientific paper (without p-value)
table1(~carat+color+clarity+depth+table+price,data=diamonds)
| Overall (N=53940) |
|
|---|---|
| carat | |
| Mean (SD) | 0.798 (0.474) |
| Median [Min, Max] | 0.700 [0.200, 5.01] |
| color | |
| D | 6775 (12.6%) |
| E | 9797 (18.2%) |
| F | 9542 (17.7%) |
| G | 11292 (20.9%) |
| H | 8304 (15.4%) |
| I | 5422 (10.1%) |
| J | 2808 (5.2%) |
| clarity | |
| I1 | 741 (1.4%) |
| SI2 | 9194 (17.0%) |
| SI1 | 13065 (24.2%) |
| VS2 | 12258 (22.7%) |
| VS1 | 8171 (15.1%) |
| VVS2 | 5066 (9.4%) |
| VVS1 | 3655 (6.8%) |
| IF | 1790 (3.3%) |
| depth | |
| Mean (SD) | 61.7 (1.43) |
| Median [Min, Max] | 61.8 [43.0, 79.0] |
| table | |
| Mean (SD) | 57.5 (2.23) |
| Median [Min, Max] | 57.0 [43.0, 95.0] |
| price | |
| Mean (SD) | 3930 (3990) |
| Median [Min, Max] | 2400 [326, 18800] |
#CompareGroups ##Table1+ p-value
createTable(compareGroups(cut~ carat+price+color+x+y+z, method=c(price=2), data=diamonds))
## Warning in cor.test.default(x, as.integer(y), method = "spearman"): Cannot
## compute exact p-value with ties
##
## --------Summary descriptives table by 'cut'---------
##
## ___________________________________________________________________________________________________________
## Fair Good Very Good Premium Ideal p.overall p.trend
## N=1610 N=4906 N=12082 N=13791 N=21551
## ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
## carat 1.05 (0.52) 0.85 (0.45) 0.81 (0.46) 0.89 (0.52) 0.70 (0.43) 0.000 <0.001
## price 3282 [2050;5206] 3050 [1145;5028] 2648 [912;5373] 3185 [1046;6296] 1810 [878;4678] <0.001 <0.001
## color: <0.001 <0.001
## D 163 (10.1%) 662 (13.5%) 1513 (12.5%) 1603 (11.6%) 2834 (13.2%)
## E 224 (13.9%) 933 (19.0%) 2400 (19.9%) 2337 (16.9%) 3903 (18.1%)
## F 312 (19.4%) 909 (18.5%) 2164 (17.9%) 2331 (16.9%) 3826 (17.8%)
## G 314 (19.5%) 871 (17.8%) 2299 (19.0%) 2924 (21.2%) 4884 (22.7%)
## H 303 (18.8%) 702 (14.3%) 1824 (15.1%) 2360 (17.1%) 3115 (14.5%)
## I 175 (10.9%) 522 (10.6%) 1204 (9.97%) 1428 (10.4%) 2093 (9.71%)
## J 119 (7.39%) 307 (6.26%) 678 (5.61%) 808 (5.86%) 896 (4.16%)
## x 6.25 (0.96) 5.84 (1.06) 5.74 (1.10) 5.97 (1.19) 5.51 (1.06) 0.000 <0.001
## y 6.18 (0.96) 5.85 (1.05) 5.77 (1.10) 5.94 (1.26) 5.52 (1.07) 0.000 <0.001
## z 3.98 (0.65) 3.64 (0.65) 3.56 (0.73) 3.65 (0.73) 3.40 (0.66) 0.000 <0.001
## ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯