1 Apa itu R?

R merupakan salah satu bahasa dalam pemrograman open source yang cukup terkenal di bidang statistika. R pertama kali diperkenalkan oleh 2 orang Profesor statistika Ross Ihaka dan Robert Gentlemen dari University of Auckland di Selandia Baru pada tahun 1996.Menurut Ross dan RObert ide untuk merencanakan R muncul karena keinginan mereka berdua akan teknologi yang lebih cocok untuk mahasiswa Statistika, mereka yang ingin menganalisa data dan menghasilkan model grafik dari informasi ataupun data yang ada karena beberapa software yang ada dibuat dan didesain oleh ahli computer yang ternyata menyebabkan software-software tersebut lebih sulit untuk dipahami dan digunakan, karena itu sejak tahun 1991 Ross dan Robert bekerja penuh waktu untuk membuat R.

1.1 Kelebihan R

Di bawah ini merupakan kelebihan R jika anda menggunakan R sebagai software untuk memecahkan masalah yang berkenaan dengan data:

• R merupakan open source software yang artinya tidak berbayar sehingga tidak perlu untuk membeli lisensi.

• Karena aplikasi R ini bersifat open source maka banyak orang yang tertarik untuk mengembangkannya, dan sangat banyak tersedia forum diskusi online mengenai R, seperti stackoverflow.com dan lain-lain sehingga dapat membantu pengguna apabila mengalami kesulitan.

• R efektif dalam hal pengelolaan dan penyimpanan data karena ukuran file yang disimpan lebih kecil dibandingkan software lainnya.

• R memiliki tampilan grafik yang menarik dan dapat dimodifikasi sesuai keinginan.

1.2 Kekurangan R

Tak luput dari kekurangan, R sebagai software juga mempunyai beberapa kekurangan diantaranya:

• Dibutuhkan ketelitian yang cukup tinggi dalam menggunakan R, karena R sangat bersifat case sensitive. Misalkan untuk penamaan dan menggantikan nama variabel atau hal lain sebagainya. Nama variabel “dataframe” akan berbeda jika kita menuliskan “Dataframe” atau “data_frame”.

• Mudah membuat kesalahan, error code sudah menjadi hal yang biasa. Sehingga diperlukan latihan sesering mungkin untuk agar mahir meggunakan R.

2 Penamaan object di R

Dalam penamaan object atau variabel di R harus mengikuti aturan-aturan berikut, diantaranya:

  • Menggunakan kapital yaitu huruf (A-Z) juga bisa menggunakan huruf kecil yaitu huruf (a-z). Ingat bahwa R bersifat case sensitive yang berarti object ‘Statistika’ berbeda dengan ‘statistika’.
Statistika <- "saya menyukai statistika"
Statistika
## [1] "saya menyukai statistika"

R akan membaca Nama object ‘Statistika’ berbeda dengan ‘statistika’

  • Tidak dapat menggunakan spasi

  • Dapat menambahkan karakter numerik (0-9), juga titik (.) atau garisbawah (_) namun disarankan untuk meletakkannya setelah huruf.

jumlah12 <- 6+6
jumlah12
## [1] 12
  • Hindari penggunaan kata-kata yang juga digunakan sebagai perintah-perintah yang terdapat di dalam R seperti: c, if, else, repeat, while, function, for,in, next, break, TRUE, FALSE, NULL, NA dan sebagainya.

3 Struktur Data di R

R umumnya memiliki 6 struktur data diantaranya: Vector, Matrix, Array, Factor, List, Data Frame.

3.1 Vector

Vector atau array dua dimensi adalah struktur data yang dimana semua unsur atau elemen dalam vektor memiliki tipe kelas data yang sama.Pada pembahasan mengenai tipe kelas object R sebelumnya, secara tidak langsung saya sudah memberikan mengenai contoh struktur data vector dengan semua tipe kelas masing-masing.

nama <- c("Dina", "Anton", "Lily")
nama
## [1] "Dina"  "Anton" "Lily"
  • Tipe Kelas di Object Vector

  • Character

Kelas object yang berisikan karakter dan string.

nama <- c("Dina", "Anton", "Lily")
class(nama)
## [1] "character"
  • Complex

Kelas object yang berisikan bilangan kompleks misalkan bilangan imaginer.

waktu <- c(2+3i, 8i, (2+1i)*2)
class(waktu)
## [1] "complex"
  • Numeric

Kelas object yang berisikan segala jenis angka

tinggi_badan <- c(160, 164.5, 156.8)
class(tinggi_badan)
## [1] "numeric"
  • Integer

Kelas object yang berisikan bilangan integer (bilangan bulat)

jml_saudara <- c(3L,2L,4L)
class(jml_saudara)
## [1] "integer"
  • Logical

Kelas object yang berisikan nilai boolean yaitu TRUE atau FALSE

abc <- c(TRUE, FALSE, TRUE)
class(abc)
## [1] "logical"

Yang menjadi pertanyaan adalah bagaimana jika kita membangun sebuah vector namun menginputkan lebih dari 1 tipe kelas yang berbeda? Maka R akan membaca tipe kelas data berdasarkan tipe kelas dengan urutan tertinggi sesuai susunan berikut:

  • Character

  • Complex

  • Numeric

  • Integer

  • Logical

Contoh: Kita akan membuat suatu vektor dengan 3 tipe kelas yang berbeda, yaitu: Complex, Integer, dan Logical.

vektor1 <- c(5i, 7i, 6.7, 8, TRUE, FALSE)
vektor1
## [1] 0.0+5i 0.0+7i 6.7+0i 8.0+0i 1.0+0i 0.0+0i
class(vektor1)
## [1] "complex"

Dapat dilihat tipe kelas object “vektor1” merupakan complex karena tipe kelas complex berada di atas integer dan logical.

  • Membuat Baris Bilangan

Membuat baris bilangan genap dari 2 hingga 20.

seq(2, 20, by=2) 
##  [1]  2  4  6  8 10 12 14 16 18 20
  • Membuat Bilangan Berulang
#Membuat angka 10 sebanyak 5
rep(10,5)
## [1] 10 10 10 10 10
#Membuat deret angka 1 sampai 5 sebanyak 3 kali
rep(1:5, 3)
##  [1] 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
#Membuat deret angka genap yang berada diantra 2 hingga 10 diulang sebanyak 3 kali.
rep(seq(2,10, by=2),3)
##  [1]  2  4  6  8 10  2  4  6  8 10  2  4  6  8 10
#Membuat deret angka 1 muncul 1 kali, angka 2 muncul 2 kali, dan angka 3 muncul 3 kali.
rep(1:3,1:3)
## [1] 1 2 2 3 3 3
#Membuat deret angka 1 sampai 3 yang dimana setiap angka diulang 2 kali 
rep(1:3,rep(2,3))
## [1] 1 1 2 2 3 3
rep(1:3,each=2)
## [1] 1 1 2 2 3 3
  • Membuat Karakter Berpola
#Membuat karakter A1 sampai A10 dimana tidak ada pemisah antara A dan tiap angkanya.

paste("A",1:10,sep="")
##  [1] "A1"  "A2"  "A3"  "A4"  "A5"  "A6"  "A7"  "A8"  "A9"  "A10"
paste0("A",1:10)
##  [1] "A1"  "A2"  "A3"  "A4"  "A5"  "A6"  "A7"  "A8"  "A9"  "A10"
#Membuat karakter A-1 sampai A-10 dimana ada pemisah (-) antara A dan tiap angkanya.
paste("A",1:10,sep="-")
##  [1] "A-1"  "A-2"  "A-3"  "A-4"  "A-5"  "A-6"  "A-7"  "A-8"  "A-9"  "A-10"

Perhatikan perbedaan pola karakter jika menggunakan function ‘paste0’

paste0("A",1:10,sep="-")
##  [1] "A1-"  "A2-"  "A3-"  "A4-"  "A5-"  "A6-"  "A7-"  "A8-"  "A9-"  "A10-"
#Membuat pola karakter A1 sampai A3 dimana setiap karakter diulang 2 kali
paste0("A",rep(1:3,each=2))
## [1] "A1" "A1" "A2" "A2" "A3" "A3"
#Membuat sebuah vector terdiri dari 2 kata "la" dan "ye". Dengan urutan "la" "ye" "ye" "la" yang diulang sebanyak 4 kali

c("la","ye")[rep(c(1,2,2,1),times=4)]
##  [1] "la" "ye" "ye" "la" "la" "ye" "ye" "la" "la" "ye" "ye" "la" "la" "ye" "ye"
## [16] "la"
#Membuat sebuah vector terdiri dari 2 kata "la" dan "ye". Setiap"la" dan "ye" masing-masing diulang 3 kali, kemudian dimunculkan 2 kali.
c("la","ye")[rep(rep(1:2,each=3),2)]
##  [1] "la" "la" "la" "ye" "ye" "ye" "la" "la" "la" "ye" "ye" "ye"
  • Akses Vektor
vektor2 <- paste("A",1:12,sep="")
vektor2
##  [1] "A1"  "A2"  "A3"  "A4"  "A5"  "A6"  "A7"  "A8"  "A9"  "A10" "A11" "A12"
#Melihat panjang elemen pada vektor2
length(vektor2)
## [1] 12
#Mengambil elemen ketiga dalam vektor2
vektor2[3]
## [1] "A3"
#Mengambil elemen ke 7 sampai 10 dalam vektor2
vektor2[7:10]
## [1] "A7"  "A8"  "A9"  "A10"
#Mengambil elemen selain elemen ke 7 sampai 10 dalam vektor2
vektor2[-(7:10)]
## [1] "A1"  "A2"  "A3"  "A4"  "A5"  "A6"  "A11" "A12"
#Mengambil elemen 1, 3, dan 7 dari vektor2
vektor2[c(1,3,7)]
## [1] "A1" "A3" "A7"
#Mengambil elemen selain elemen 1, 3, dan 7 dari vektor2
vektor2[-c(1,3,7)]
## [1] "A2"  "A4"  "A5"  "A6"  "A8"  "A9"  "A10" "A11" "A12"
#Mengambil elemen dengan urutan genap dari vektor2
vektor2[(seq(2,12, by= 2))]
## [1] "A2"  "A4"  "A6"  "A8"  "A10" "A12"
#Mengambil elemen dengan urutan ganjil dari vektor2
vektor2[(seq(1,12, by= 2))]
## [1] "A1"  "A3"  "A5"  "A7"  "A9"  "A11"
vektor2[-(seq(2,12, by= 2))]
## [1] "A1"  "A3"  "A5"  "A7"  "A9"  "A11"
x1 <- paste(c("X","Y"),1:10,sep="")

#Membuat urutan bilangan dari 1:28 dengan selang 3 angka
x2 <- seq(1,28, by=3)
names(x2) <- x1
x2
##  X1  Y2  X3  Y4  X5  Y6  X7  Y8  X9 Y10 
##   1   4   7  10  13  16  19  22  25  28
x2[3:4]
## X3 Y4 
##  7 10

3.2 Matrix

Matrix atau array dua dimensi adalah struktur data yang memiliki row dan column, Unsur-unsur di dalam matriks semua harus memiliki tipe kelas data yang sama.

#Membuat matriks berisi angka 1 sampai 12 dengan elemen 3 baris dan 4 kolom
matrix(1:12,3,4)
##      [,1] [,2] [,3] [,4]
## [1,]    1    4    7   10
## [2,]    2    5    8   11
## [3,]    3    6    9   12
matrix(1:12,3,4,byrow=TRUE)
##      [,1] [,2] [,3] [,4]
## [1,]    1    2    3    4
## [2,]    5    6    7    8
## [3,]    9   10   11   12
matrix(1:10,4,5)
##      [,1] [,2] [,3] [,4] [,5]
## [1,]    1    5    9    3    7
## [2,]    2    6   10    4    8
## [3,]    3    7    1    5    9
## [4,]    4    8    2    6   10
  • Mengubah object vector ke matrix
vektor3 <- 1:12
vektor3
##  [1]  1  2  3  4  5  6  7  8  9 10 11 12
class(vektor3)
## [1] "integer"
dim(vektor3) <- c(6,2)
vektor3
##      [,1] [,2]
## [1,]    1    7
## [2,]    2    8
## [3,]    3    9
## [4,]    4   10
## [5,]    5   11
## [6,]    6   12
class(vektor3)
## [1] "matrix" "array"
typeof(vektor3)
## [1] "integer"

Function class pada structur data vector mengeluarkan type kelas data seperti output diatas object vektor3 memiliki struktur data “matrix” dan “array”. Function class pada selain structur data vector mengeluarkan type structur data. Pada contoh di atas structur data bisa matrix atau array (array 2 dimensi). Untuk mengeluarkan tipe kelas data pada structur mariks bisa menggunakan function typeof.

is.matrix(vektor3)
## [1] TRUE
is.array(vektor3)
## [1] TRUE
#Membuat matriks dengan hanya menentukan banyaknya nrow (banyaknya baris) kemudian ncol(banyaknya kolom) akan menyesuaikan sesuai bilangan yang tersisa

matrix(1:6,2)
##      [,1] [,2] [,3]
## [1,]    1    3    5
## [2,]    2    4    6
matrix(1:6,3)
##      [,1] [,2]
## [1,]    1    4
## [2,]    2    5
## [3,]    3    6
matriks1 <- matrix(1:4,2)
matriks1
##      [,1] [,2]
## [1,]    1    3
## [2,]    2    4
matriks2 <- matrix(6:9,2)
matriks2
##      [,1] [,2]
## [1,]    6    8
## [2,]    7    9
  • Menggabungkan 2 matrik berdasarkan baris
matriks3 <- rbind(matriks1, matriks2)
matriks3
##      [,1] [,2]
## [1,]    1    3
## [2,]    2    4
## [3,]    6    8
## [4,]    7    9
  • Menggabungkan 2 matrik berdasarkan kolom
matriks4 <- cbind(matriks1, matriks2)
matriks4
##      [,1] [,2] [,3] [,4]
## [1,]    1    3    6    8
## [2,]    2    4    7    9
  • Melihat dimensi dang length (row x col) matriks
dim(matriks4)
## [1] 2 4
length(matriks4)
## [1] 8
matriks5 <- matrix(1:8, 4,4)
matriks5
##      [,1] [,2] [,3] [,4]
## [1,]    1    5    1    5
## [2,]    2    6    2    6
## [3,]    3    7    3    7
## [4,]    4    8    4    8
dim(matriks5)
## [1] 4 4
length(matriks5)
## [1] 16
  • Mengakses Elemen Matriks Mengakses matrik dapat mengikuti formula berikut:nama_matriks[row, col]
#Mengakses elemen matriks5 yang berada di row ke 2 dan column ke 3
matriks5[2,3]
## [1] 2
#Mengakses elemen matriks5 yang berada di row ke 2 dan semua column
matriks5[2,]
## [1] 2 6 2 6
#Mengakses elemen matriks5 yang berada di row ke 1 dan 3 dan semua column kecuali column ke 2.
matriks5
##      [,1] [,2] [,3] [,4]
## [1,]    1    5    1    5
## [2,]    2    6    2    6
## [3,]    3    7    3    7
## [4,]    4    8    4    8
matriks5[c(1,3),-2]
##      [,1] [,2] [,3]
## [1,]    1    1    5
## [2,]    3    3    7
matriks6a <- matrix(paste("A",1:12,sep=""), 4,3)
matriks6a
##      [,1] [,2] [,3] 
## [1,] "A1" "A5" "A9" 
## [2,] "A2" "A6" "A10"
## [3,] "A3" "A7" "A11"
## [4,] "A4" "A8" "A12"
matriks6b <- matrix(paste("A",1:12,sep=""), 4,3, byrow = T)
matriks6b
##      [,1]  [,2]  [,3] 
## [1,] "A1"  "A2"  "A3" 
## [2,] "A4"  "A5"  "A6" 
## [3,] "A7"  "A8"  "A9" 
## [4,] "A10" "A11" "A12"
#Mengakses elemen ketiga dari matriks6a dan matriks6b. PERHATIKAN PERBEDAANNYA
matriks6a[3]
## [1] "A3"
matriks6b[3]
## [1] "A7"

3.3 Array

Array dalam Pemrograman R secara sederhana disebut sebagai struktur Data multi-dimensi. Array dasarnya sama seperti matrix namun array dapat mempunyai lebih dari dua dimensi.

  • Membuat array 3 dimensi: Dimana membangun matriks dimensi 2x2 yang berisikan elemen Huruf Kapital dengan function LETTERS kemudian diulangi sebanyak 3 kali (3 lapisan)
array1 <- array(LETTERS,dim=c(2,2,3))
array1
## , , 1
## 
##      [,1] [,2]
## [1,] "A"  "C" 
## [2,] "B"  "D" 
## 
## , , 2
## 
##      [,1] [,2]
## [1,] "E"  "G" 
## [2,] "F"  "H" 
## 
## , , 3
## 
##      [,1] [,2]
## [1,] "I"  "K" 
## [2,] "J"  "L"
  • Membuat array 4 dimensi: Membuat matriks ukuran 2x1 dengan hanya 2 elemen A dan B kemudian diulang dengan 2 kali lapisan (2 lembar) kemudian dibungkus (seolah-olah menjadi sebuah buku) dan diulang lagi sebanyak 3 lapisan (3 buku)
array(c("A","B"),dim=c(2,1,2,3))
## , , 1, 1
## 
##      [,1]
## [1,] "A" 
## [2,] "B" 
## 
## , , 2, 1
## 
##      [,1]
## [1,] "A" 
## [2,] "B" 
## 
## , , 1, 2
## 
##      [,1]
## [1,] "A" 
## [2,] "B" 
## 
## , , 2, 2
## 
##      [,1]
## [1,] "A" 
## [2,] "B" 
## 
## , , 1, 3
## 
##      [,1]
## [1,] "A" 
## [2,] "B" 
## 
## , , 2, 3
## 
##      [,1]
## [1,] "A" 
## [2,] "B"
  • Membuat array 2 dimensi sama dengan membuat matrix dapat dengan menggunakan 2 function berikut:
array(1:12,dim=c(3,4))
##      [,1] [,2] [,3] [,4]
## [1,]    1    4    7   10
## [2,]    2    5    8   11
## [3,]    3    6    9   12
matrix(1:12,3,4)
##      [,1] [,2] [,3] [,4]
## [1,]    1    4    7   10
## [2,]    2    5    8   11
## [3,]    3    6    9   12
  • Mengakses Array

General Function object_array[baris, kolom, lembar, buku]

  • Mengakses lembar ke-1 dari object array1 : array1[,,1,]

  • Mengakses buku ke-2 dari object array1 : array1[,,,2]

  • Mengakses lembar ke-2 dan buku ke 3 dari object array1 : array1[,,2,3]

array1
## , , 1
## 
##      [,1] [,2]
## [1,] "A"  "C" 
## [2,] "B"  "D" 
## 
## , , 2
## 
##      [,1] [,2]
## [1,] "E"  "G" 
## [2,] "F"  "H" 
## 
## , , 3
## 
##      [,1] [,2]
## [1,] "I"  "K" 
## [2,] "J"  "L"
array1[1,2,3]
## [1] "K"

3.4 Factor

Faktor adalah objek data yang digunakan untuk data kategori dan menyimpannya sebagai level. Factor dapat menyimpan string dan integer, factor berguna untuk suatu kolom yang memiliki nilai unik dalam jumlah terbatas. Misalkan “Pria,” Wanita" dan “Benar”, “Salah”, dsb.

Faktor dibangun dengan menggunakan function faktor() dengan menggunakan vektor sebagai input.

  • Data Kategori dengan skala pengukuran Nominal
#Membangun sebuah vektor kelas character
golongan_darah <- c("A", "A","B","O","AB","O")
golongan_darah
## [1] "A"  "A"  "B"  "O"  "AB" "O"
#Membangun struktur data factor dari yang semula vector
factor(golongan_darah)
## [1] A  A  B  O  AB O 
## Levels: A AB B O
levels(factor(golongan_darah))
## [1] "A"  "AB" "B"  "O"

Data golongan darah merupakan data kategorik nominal (yang tidak memiliki tingkatan) urutan levels akan terurut sesuai abjad. Bagaimana jika ingin mengurutkan levels menjadi “O”,“A”,“B”,“AB”?

faktor_nominal <- factor(golongan_darah, levels = c("O","A","B","AB"))
faktor_nominal
## [1] A  A  B  O  AB O 
## Levels: O A B AB
levels(factor(golongan_darah, levels = c("O","A","B","AB")))
## [1] "O"  "A"  "B"  "AB"
  • Data Kategori dengan skala pengukuran Ordinal
tingkat_pendidikan <- c("SD","SMP","SMA")
#Mendefinisikan tingkat_pendidikan sebagai data dengan skala pengukuran ordinal dengan urutan sesuai vektor tingkat_pendidikan
ordered(tingkat_pendidikan)
## [1] SD  SMP SMA
## Levels: SD < SMA < SMP
ordered(tingkat_pendidikan, levels=tingkat_pendidikan)
## [1] SD  SMP SMA
## Levels: SD < SMP < SMA

Karena tingkat_pendidikan sudah diordered (data ordinal) maka levels akan berubah dan mendefinisikan bahwa tingkat SD lebih rendah dibanding SMP dan lebihrendah dibanding SMA.

Atau langkah di atas bisa juga digantikan dengan alternatif syntax di bawah ini:

faktor_ordinal <- factor(tingkat_pendidikan, levels=tingkat_pendidikan, ordered=TRUE)
faktor_ordinal
## [1] SD  SMP SMA
## Levels: SD < SMP < SMA

Membangun factor dengan tipe peubah nominal hanya dengan mengganti parameter ordered=F

factor(golongan_darah, levels = c("O","A","B","AB"), ordered=F)
## [1] A  A  B  O  AB O 
## Levels: O A B AB
  • Mengakses Factor
faktor_nominal[6]
## [1] O
## Levels: O A B AB

Mengambil elemen ke-6 dari faktor_nominal. Ingat yang diambil adalah elemennya bukan levels factornya.

faktor_ordinal[3:4]
## [1] SMA  <NA>
## Levels: SD < SMP < SMA

Mengambil elemen ke-3 dan 4 dari faktor_ordinal. Karena elemen dalam faktor_ordinal hanya ada 3 elemen, sehingga elemen ke-4 bernilai NA.

3.5 List

List adalah objek R yang memungkinkan elemen dari berbagai tipe kelas data seperti integer, character, logical dan lainnya. List juga dapat berisi matriks atau fungsi sebagai elemennya. List dibuat dengan menggunakan function list().

list1 <- list("man", "women", c(10,12,21), TRUE, FALSE, 119.1)
list1
## [[1]]
## [1] "man"
## 
## [[2]]
## [1] "women"
## 
## [[3]]
## [1] 10 12 21
## 
## [[4]]
## [1] TRUE
## 
## [[5]]
## [1] FALSE
## 
## [[6]]
## [1] 119.1
class(list1)
## [1] "list"
#Mengeluarkan elemen ke 2 dan 3 dari list1
list1[2:3]
## [[1]]
## [1] "women"
## 
## [[2]]
## [1] 10 12 21
#Mengeluarkan elemen ke-1 dari elemen ke-3 dari list1
list1[[3]][1]
## [1] 10
list2 <- list(vect=nama,mat=matriks1,array=array1,fac=faktor_ordinal)
list2
## $vect
## [1] "Dina"  "Anton" "Lily" 
## 
## $mat
##      [,1] [,2]
## [1,]    1    3
## [2,]    2    4
## 
## $array
## , , 1
## 
##      [,1] [,2]
## [1,] "A"  "C" 
## [2,] "B"  "D" 
## 
## , , 2
## 
##      [,1] [,2]
## [1,] "E"  "G" 
## [2,] "F"  "H" 
## 
## , , 3
## 
##      [,1] [,2]
## [1,] "I"  "K" 
## [2,] "J"  "L" 
## 
## 
## $fac
## [1] SD  SMP SMA
## Levels: SD < SMP < SMA
#Mengakses list2 dimana struktur datanya merupakan factor
list2$fac
## [1] SD  SMP SMA
## Levels: SD < SMP < SMA
list2$fac[2]
## [1] SMP
## Levels: SD < SMP < SMA
length(list1)
## [1] 6
length(list2)
## [1] 4
names(list2)
## [1] "vect"  "mat"   "array" "fac"

3.6 Data Frame

Data frame adalah struktur data dimana satu kolom harus memiliki tipe kelas yang sama, namun kolom yang berbeda dapat memiliki tipe kelas yang berbeda.

#Membuat data frame dari object sebelumnya yang sudah dibangun

df_1 <- data.frame(nama, tinggi_badan, jml_saudara, faktor_ordinal)
df_1
##    nama tinggi_badan jml_saudara faktor_ordinal
## 1  Dina        160.0           3             SD
## 2 Anton        164.5           2            SMP
## 3  Lily        156.8           4            SMA
  • Melihat nama variabel dari df_1
names(df_1)
## [1] "nama"           "tinggi_badan"   "jml_saudara"    "faktor_ordinal"
  • Melihat struktur data frame
str(df_1)
## 'data.frame':    3 obs. of  4 variables:
##  $ nama          : chr  "Dina" "Anton" "Lily"
##  $ tinggi_badan  : num  160 164 157
##  $ jml_saudara   : int  3 2 4
##  $ faktor_ordinal: Ord.factor w/ 3 levels "SD"<"SMP"<"SMA": 1 2 3
  • Akses Data Frame
df_1$nama
## [1] "Dina"  "Anton" "Lily"
df_1[2,2]
## [1] 164.5

Melihat apakah ada daftar dengan nama Lily

df_1$nama=="Lily"
## [1] FALSE FALSE  TRUE

Nama Lily terdapat di daftar no.3

class(matriks1)
## [1] "matrix" "array"
is.array(matriks1)
## [1] TRUE

Seorang peneliti merancang sebuah perancangan percobaan RAKL dengan 4 perlakuan dan 3 kelompok (anggaplah respon percobaan berupa baris bilangan ganjil dari 1 hingga 23).

Perl <- paste0("P",rep(1:4,each=3))
Kel <- factor(rep(1:3,4))
Resp <- seq(1,23, by=2)

data1 <- data.frame(Perl, Kel, Resp)
data1
##    Perl Kel Resp
## 1    P1   1    1
## 2    P1   2    3
## 3    P1   3    5
## 4    P2   1    7
## 5    P2   2    9
## 6    P2   3   11
## 7    P3   1   13
## 8    P3   2   15
## 9    P3   3   17
## 10   P4   1   19
## 11   P4   2   21
## 12   P4   3   23

4 Reference and Contacs

Modul Praktikum Pemrograman Statistika Tahun 2020 mengenai Object Data di R

(Program Magister Statistika dan Sains Data Departemen Statistika FMIPA-IPB University)

Feel free to discuss:

https://www.linkedin.com/in/hafizah-ilma-665449141/