Membuat Matriks

a<-c(2,4)
a
## [1] 2 4
b<-c("laki-laki","perempuan")
b
## [1] "laki-laki" "perempuan"

#Pengulangan ## Pengulangan sekali

rep(a,2)
## [1] 2 4 2 4

Pengulangan 2x pada tiap elemen

rep(a,each=2)
## [1] 2 2 4 4

Membuat Urutan dari 3 ke 1

seq(from=3, to=1)
## [1] 3 2 1

Urutan dari 4 sampai 1 dengan selisih 0.5

seq(from=1, to=4, by=0.5)
## [1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0

is.vector (memeriksa suatu objek adalah vektor atau bukan)

c<-c(1:4)
c
## [1] 1 2 3 4
is.vector(c)
## [1] TRUE

False karena d merupakan suatu matriks

d<-matrix(1:4, ncol=4, nrow=4)
d
##      [,1] [,2] [,3] [,4]
## [1,]    1    1    1    1
## [2,]    2    2    2    2
## [3,]    3    3    3    3
## [4,]    4    4    4    4

as.vector (merubah objek menjadi vektor)

e<-matrix(1:6, nrow=2, ncol=3)
V<-as.vector(e)
print(V)
## [1] 1 2 3 4 5 6

Akses elemen ke i dalam suatu vektor

angka<-c(1,2,3,4)
names(angka)<-c("a", "b", "c", "d")
angka 
## a b c d 
## 1 2 3 4
angka[1:3]
## a b c 
## 1 2 3
angka[c(1,4)]
## a d 
## 1 4
angka[angka<=3]
## a b c 
## 1 2 3
angka[-2]
## a c d 
## 1 3 4

Membuat Matriks melalui Vektor

Data<-matrix(c(1,2,1, 100,102,103), nrow = 2, ncol = 3, byrow = TRUE, dimnames = list(c("row1", "row2"), c("C.1", "C.2", "C.3")))
Data
##      C.1 C.2 C.3
## row1   1   2   1
## row2 100 102 103

dim (untuk mengetahui ukuran matriks)

A<-matrix(1:12, ncol=3, nrow=4)
dimensi<-dim(A)
dimensi
## [1] 4 3

rbind (menggabungkan terhadap baris)

a<-c(2,3,4)
b<-c(1,0,1)
cbind(a,b)
##      a b
## [1,] 2 1
## [2,] 3 0
## [3,] 4 1

cbind (menggabungkan terhadap kolom)

a<-c(2,3,4)
b<-c(1,0,1)
cbind(a,b)
##      a b
## [1,] 2 1
## [2,] 3 0
## [3,] 4 1

[] (untuk mengakses elemen dalam suatu matriks)

Data<-matrix(c(1,2,1, 100,102,103), nrow = 2, ncol = 3, byrow = FALSE,dimnames = list(c("row1", "row2"), c("C.1", "C.2", "C.3")))
Data[1,3]
## [1] 102
Data[,1]
## row1 row2 
##    1    2
Data[-1,-2]
## C.1 C.3 
##   2 103

factor() : Menampilkan data kategorik

Ciri-ciri

1. Levels (tingkat) : nilai-nilai unik dalam faktor

2. Integer storage factor disimpan sebagai integer yang mewakilii masing-masing kategori

3. Ordered/unordered : factor bisa diurutkan (ordered)/ tidak diurutkan (unordered)

Membuat faktor dari vektor karakter

gender <- factor(c("laki-laki", "perempuan", "laki-laki", "perempuan"))
print(gender)
## [1] laki-laki perempuan laki-laki perempuan
## Levels: laki-laki perempuan

as.factor (konversi vektor menjadi faktor)

hewan<-c("kucing","anjing","babi","unta")
factor_hewan<- as.factor(hewan)
factor_hewan
## [1] kucing anjing babi   unta  
## Levels: anjing babi kucing unta

is.factor (mengecek data apakah sebuah faktor)

warna<-c("hijau","biru","ungu")
is_warna_factor<- is.factor(warna)
is_warna_factor
## [1] FALSE

list() : menyimpan berbagai tipe data dalam satu wadah ## Ciri-ciri

1. Heterogen : dapat menyimpan elemen-elemen dengan tipe data berbeda

2. Fleksibel : menyimpan berbagai struktur data lainnya (vektor, matriks, df, dll)

3. Dinamika : ukuran dan isi dapat diubah-ubah setelah dibuat

Membuat List

list(a,dt,Data) = list(vektor,faktor,matriks)

list <- list(nama="Alice", umur=25, skor=c(90, 85, 88), matriks=matrix(1:4, nrow=2))
list
## $nama
## [1] "Alice"
## 
## $umur
## [1] 25
## 
## $skor
## [1] 90 85 88
## 
## $matriks
##      [,1] [,2]
## [1,]    1    3
## [2,]    2    4

$ : mengakses elemen dalam list

list$nama
## [1] "Alice"

Mengubah dan menambahkan elemen dalam list

Mengubah elemen

list$umur<-26
list
## $nama
## [1] "Alice"
## 
## $umur
## [1] 26
## 
## $skor
## [1] 90 85 88
## 
## $matriks
##      [,1] [,2]
## [1,]    1    3
## [2,]    2    4

Menambahkan elemen baru

list$alamat<-"Jakarta"
list
## $nama
## [1] "Alice"
## 
## $umur
## [1] 26
## 
## $skor
## [1] 90 85 88
## 
## $matriks
##      [,1] [,2]
## [1,]    1    3
## [2,]    2    4
## 
## $alamat
## [1] "Jakarta"

Data Frame : bentuk khusus dari list untuk menyimpan data dari berbagai tipe dalam bentuk matriks

data.frame() : membuat data frame baru dari vektor/list

dtf<-data.frame(Mahasiswa=c("Amir","Budi", "Citra"), JK=c("L","L","P"))
dtf
##   Mahasiswa JK
## 1      Amir  L
## 2      Budi  L
## 3     Citra  P
dtf<-rbind(dtf, data.frame(Mahasiswa="Budi", JK="L"))
dtf
##   Mahasiswa JK
## 1      Amir  L
## 2      Budi  L
## 3     Citra  P
## 4      Budi  L

colnames(): mengetahui nama-nama pada kolom

colnames(dtf)
## [1] "Mahasiswa" "JK"

length()/dim() : mengerahui jumlah kolom/dimensi

length(dtf)
## [1] 2

dtf[]/dtf[“JK”]/dtf$JK : untuk mengakses/mengambil semua elemen di JK

dtf[]
##   Mahasiswa JK
## 1      Amir  L
## 2      Budi  L
## 3     Citra  P
## 4      Budi  L

dtf[,1] : untuk mengakses/mengambil elemen di baris ke-1 semua kolom

dtf[,1]
## [1] "Amir"  "Budi"  "Citra" "Budi"

dtf[2,1]: untuk mengakses elemen pada baris ke 2 dan kolom ke 1

dtf[2,1]
## [1] "Budi"

names(dtf)[1] <= “Nama” : mengganti nama kolom ke-1 menjadi “Nama”

names(dtf)[1]<-"Nama"
dtf
##    Nama JK
## 1  Amir  L
## 2  Budi  L
## 3 Citra  P
## 4  Budi  L

as.data.frame() : mengonversi objek menjadi df

Konversi vektor ke df

vektor <- c(1, 2, 3, 4)
df_vektor <- as.data.frame(vektor)
df_vektor
##   vektor
## 1      1
## 2      2
## 3      3
## 4      4

Konversi matriks ke df

matriks <- matrix(1:9, nrow=3, ncol=3)
df_matriks <- as.data.frame(matriks)
df_matriks
##   V1 V2 V3
## 1  1  4  7
## 2  2  5  8
## 3  3  6  9

konversi list ke df

daftar <- list(A=1:3, B=c("x", "y", "z"))
df_daftar <- as.data.frame(daftar)
df_daftar
##   A B
## 1 1 x
## 2 2 y
## 3 3 z

Konversi list ke df

faktor <- factor(c("laki-laki", "perempuan", "laki-laki"))
df_faktor <- as.data.frame(faktor)
df_faktor
##      faktor
## 1 laki-laki
## 2 perempuan
## 3 laki-laki

read.table() : membaca data dari file teks

1. File .txtx

- data<-read.table(“E:/…../namadata.txt”, header=TRUE)

Jika pemisah antar kolom (delimiter)bukan spasi maka: data<- read.delim(“E:/…../namadata.txt”, header = TRUE, sep = “;”)

2. File .csv

- data <- read.csv(“E:/…../namadata.txt”, header = TRUE)

Jika menggunakan delimiter “;” maka: read.csv2

3. File .xlsx

- library(readxl)

data<- read_excel(path = “data/namadata.xlsx”, col_names = TRUE)