# APLIKASI DALAM R (DATA TIDAK BERKELOMPOK)
library(readxl)

# membaca data4.1 dari Excel
simpan <- read_excel("Data_Bab_4.xlsx",
                     sheet = "data4.1",
                     skip = 1)

simpan
## # A tibble: 19 × 3
##    data1 data2 data3
##    <dbl> <dbl> <dbl>
##  1     1    10     1
##  2     2    10     2
##  3     3    10     2
##  4     4    20     3
##  5     5    20     3
##  6     6    30     3
##  7     7    30     3
##  8     8    30     3
##  9     9    30     4
## 10    10    30     4
## 11    11    30     4
## 12    12    30     5
## 13    13    40     5
## 14    14    40     6
## 15    15    40     6
## 16    16    50    NA
## 17    17    50    NA
## 18    18    50    NA
## 19    NA    50    NA
# Memisahkan variabel
data_1 = simpan$data1
data_11 = na.omit(data_1)

data_2 = simpan$data2
data_21 = na.omit(data_2)

data_3 = simpan$data3
data_31 = na.omit(data_3)


# Menampilkan data
data_1
##  [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 NA
data_11
##  [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18
## attr(,"na.action")
## [1] 19
## attr(,"class")
## [1] "omit"
data_2
##  [1] 10 10 10 20 20 30 30 30 30 30 30 30 40 40 40 50 50 50 50
data_21
##  [1] 10 10 10 20 20 30 30 30 30 30 30 30 40 40 40 50 50 50 50
data_3
##  [1]  1  2  2  3  3  3  3  3  4  4  4  5  5  6  6 NA NA NA NA
data_31
##  [1] 1 2 2 3 3 3 3 3 4 4 4 5 5 6 6
## attr(,"na.action")
## [1] 16 17 18 19
## attr(,"class")
## [1] "omit"
# STATISTIK DESKRIPTIF
library(psych)

describe(data_11)
##    vars  n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 18  9.5 5.34    9.5     9.5 6.67   1  18    17    0     -1.4 1.26
describe(data_21)
##    vars  n  mean    sd median trimmed   mad min max range  skew kurtosis   se
## X1    1 19 31.58 13.44     30   31.76 14.83  10  50    40 -0.14    -1.13 3.08
describe(data_31)
##    vars  n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 15  3.6 1.45      3    3.62 1.48   1   6     5 0.14    -1.01 0.38
# APLIKASI DALAM R (DATA BERKELOMPOK)
library(readxl)

# membaca data4.2 dari Excel
simpan <- read_excel("Data_Bab_4.xlsx",
                     sheet = "data4.2",
                     skip = 1)

simpan
## # A tibble: 12 × 6
##    jurusan.angka jurusan.label jenis.angka jenis.label    IQ    EQ
##            <dbl> <chr>               <dbl> <chr>       <dbl> <dbl>
##  1             1 matematika              1 laki-laki     101   102
##  2             1 matematika              1 laki-laki     104   104
##  3             1 matematika              1 laki-laki     102   104
##  4             1 matematika              2 perempuan     111   105
##  5             1 matematika              2 perempuan     101   106
##  6             1 matematika              2 perempuan     105   102
##  7             2 statistika              1 laki-laki     104   101
##  8             2 statistika              1 laki-laki     103   112
##  9             2 statistika              1 laki-laki     104   104
## 10             2 statistika              2 perempuan     102   101
## 11             2 statistika              2 perempuan     101   102
## 12             2 statistika              2 perempuan     101   104
# DESKRIPSI BERDASARKAN KELOMPOK
library(psych)

# IQ berdasarkan jurusan angka
describeBy(simpan$IQ,
           simpan$jurusan.angka)
## 
##  Descriptive statistics by group 
## group: 1
##    vars n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 6  104 3.79    103     104 2.97 101 111    10 0.86    -0.93 1.55
## ------------------------------------------------------------ 
## group: 2
##    vars n  mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 6 102.5 1.38  102.5   102.5 2.22 101 104     3    0    -2.06 0.56
# IQ berdasarkan jurusan label
describeBy(simpan$IQ,
           simpan$jurusan.label)
## 
##  Descriptive statistics by group 
## group: matematika
##    vars n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 6  104 3.79    103     104 2.97 101 111    10 0.86    -0.93 1.55
## ------------------------------------------------------------ 
## group: statistika
##    vars n  mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 6 102.5 1.38  102.5   102.5 2.22 101 104     3    0    -2.06 0.56
# EQ berdasarkan jurusan angka
describeBy(simpan$EQ,
           simpan$jurusan.angka)
## 
##  Descriptive statistics by group 
## group: 1
##    vars n   mean  sd median trimmed  mad min max range  skew kurtosis   se
## X1    1 6 103.83 1.6    104  103.83 2.22 102 106     4 -0.02    -1.82 0.65
## ------------------------------------------------------------ 
## group: 2
##    vars n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 6  104 4.15    103     104 2.22 101 112    11 1.05    -0.59 1.69
# EQ berdasarkan jurusan label
describeBy(simpan$EQ,
           simpan$jurusan.label)
## 
##  Descriptive statistics by group 
## group: matematika
##    vars n   mean  sd median trimmed  mad min max range  skew kurtosis   se
## X1    1 6 103.83 1.6    104  103.83 2.22 102 106     4 -0.02    -1.82 0.65
## ------------------------------------------------------------ 
## group: statistika
##    vars n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 6  104 4.15    103     104 2.22 101 112    11 1.05    -0.59 1.69
# RINGKASAN IQ DAN EQ BERDASARKAN JURUSAN DAN JENIS KELAMIN
library(doBy)

summaryBy(IQ + EQ ~ jurusan.label + jenis.label,
          data = simpan,
          FUN = function(x){
            c(
              ratarata = mean(x),
              standar_deviasi = sd(x),
              jumlah = length(x)
            )
          })
## # A tibble: 4 × 8
##   jurusan.label jenis.label IQ.ratarata IQ.standar_deviasi IQ.jumlah EQ.ratarata
##   <chr>         <chr>             <dbl>              <dbl>     <dbl>       <dbl>
## 1 matematika    laki-laki          102.              1.53          3        103.
## 2 matematika    perempuan          106.              5.03          3        104.
## 3 statistika    laki-laki          104.              0.577         3        106.
## 4 statistika    perempuan          101.              0.577         3        102.
## # ℹ 2 more variables: EQ.standar_deviasi <dbl>, EQ.jumlah <dbl>