Pengenalan Fungsi Dasar R

R sendiri diciptakan oleh Ross Ihaka dan Robert Gentleman pada tahun 1995. R programming adalah sistem perangkat lunak yang dirancang secara khusus untuk mengerjakan semua hal yang berkaitan dengan statistik. Saat ini R ini menjadi pilihan bagi para peneliti maupun praktisi di berbagai untuk mengolah dan menganalisis data baik untuk kepentingan penelitian maupun bisnis. Untuk mempelajari R programming, terlebih dahulu mengetahui fitur-fitur dasar dalam R.

Operator Aritmatika

9+10 #jumlah
## [1] 19
10-9  #kurang
## [1] 1
110/5 #bagi
## [1] 22
sqrt(25) #akar
## [1] 5
10^2 #pangkat
## [1] 100
5*7 #kali
## [1] 35
11%%2 #modulus (mencari sisa pembagian)
## [1] 1

Membuat Sebuah Vektor

x <- c(12,7,3,4.2,18,2,54,-21,8,-5,10,19,48)
x
##  [1]  12.0   7.0   3.0   4.2  18.0   2.0  54.0 -21.0   8.0  -5.0  10.0  19.0
## [13]  48.0

Ukuran Statistik

nilai.mean<-mean(x)
nilai.mean
## [1] 12.24615
nilai.range<-range(x)
nilai.range
## [1] -21  54
nilai.median<-median(x)
nilai.median
## [1] 8
nilai.var<-var(x)
nilai.var
## [1] 400.7544

Operator Perbandingan

a<-10
b<-9

a>b #lebih besar
## [1] TRUE
a<b #lebih kecil
## [1] FALSE
a==b #sama dengan
## [1] FALSE
a!=b #tidak sama dengan
## [1] TRUE
a>=b #lebih besar sama dengan
## [1] TRUE
a<=b #lebih kecil sama dengan
## [1] FALSE

Operator Logika

p <- c(TRUE,TRUE, FALSE)
q <- c(FALSE,FALSE,FALSE)

print(p&&q) # AND
## [1] FALSE
print(p||q) # OR
## [1] TRUE
print(!p) # NOT
## [1] FALSE FALSE  TRUE
print(p&q) # AND elment
## [1] FALSE FALSE FALSE
print(p|q) # OR element
## [1]  TRUE  TRUE FALSE

Tipe Data

jeruk<-TRUE # logical
class(jeruk)
## [1] "logical"
w<-19.9 # numeric
class(w)
## [1] "numeric"
n<-2L # integer
class(n)
## [1] "integer"
u<- 7+3i #complex
class(u)
## [1] "complex"
k <- "kamu" #character
class(k)
## [1] "character"
bil<- "165" #character
class(bil)
## [1] "character"
is.character (bil)
## [1] TRUE
is.logical(k)
## [1] FALSE
# class() digunakan untuk melihat termasuk dalam tipe data apa. Selain menggunakan fungsi class(), dapat pula menggunakan fungsi is_numeric(), is.character(), is.logical(), dan sebagainya berdasarkan jenis data apa yang ingin dicek. 

Data Frame

nama<-c("Abdullah", "Wahsyi","Sumayyah", "Shafiyyah", "Imran")
nama
## [1] "Abdullah"  "Wahsyi"    "Sumayyah"  "Shafiyyah" "Imran"
usia<-c(33,9,15,19,17)
usia
## [1] 33  9 15 19 17
tinggibadan = c(176,100,150,151,160)
tinggibadan
## [1] 176 100 150 151 160
dataf = data.frame(nama,usia,tinggibadan)
dataf
##        nama usia tinggibadan
## 1  Abdullah   33         176
## 2    Wahsyi    9         100
## 3  Sumayyah   15         150
## 4 Shafiyyah   19         151
## 5     Imran   17         160

Input data ke R

library(readxl)
dataq= read_excel("E:/housing-prices.xls")
View(dataq) # melihat data
head(dataq) # menampilkan data pertama
## # A tibble: 6 x 16
##    Price Lot.Size Waterfront   Age Land.Value New.Construct Central.Air
##    <dbl>    <dbl>      <dbl> <dbl>      <dbl>         <dbl>       <dbl>
## 1 132500     0.09          0    42      50000             0           0
## 2 181115     0.92          0     0      22300             0           0
## 3 109000     0.19          0   133       7300             0           0
## 4 155000     0.41          0    13      18700             0           0
## 5  86060     0.11          0     0      15000             1           1
## 6 120000     0.68          0    31      14000             0           0
## # ... with 9 more variables: Fuel.Type <chr>, Heat.Type <chr>,
## #   Sewer.Type <chr>, Living.Area <dbl>, Pct.College <dbl>, Bedrooms <dbl>,
## #   Fireplaces <dbl>, Bathrooms <dbl>, Rooms <dbl>
attach(dataq)
str(dataq) # struktur data
## tibble [1,734 x 16] (S3: tbl_df/tbl/data.frame)
##  $ Price        : num [1:1734] 132500 181115 109000 155000 86060 ...
##  $ Lot.Size     : num [1:1734] 0.09 0.92 0.19 0.41 0.11 0.68 0.4 1.21 0.83 1.94 ...
##  $ Waterfront   : num [1:1734] 0 0 0 0 0 0 0 0 0 0 ...
##  $ Age          : num [1:1734] 42 0 133 13 0 31 33 23 36 4 ...
##  $ Land.Value   : num [1:1734] 50000 22300 7300 18700 15000 14000 23300 14600 22200 21200 ...
##  $ New.Construct: num [1:1734] 0 0 0 0 1 0 0 0 0 0 ...
##  $ Central.Air  : num [1:1734] 0 0 0 0 1 0 0 0 0 0 ...
##  $ Fuel.Type    : chr [1:1734] "Electric" "Gas" "Gas" "Gas" ...
##  $ Heat.Type    : chr [1:1734] "Electric" "Hot Water" "Hot Water" "Hot Air" ...
##  $ Sewer.Type   : chr [1:1734] "Private" "Private" "Public" "Private" ...
##  $ Living.Area  : num [1:1734] 906 1953 1944 1944 840 ...
##  $ Pct.College  : num [1:1734] 35 51 51 51 51 22 51 35 51 44 ...
##  $ Bedrooms     : num [1:1734] 2 3 4 3 2 4 4 4 3 3 ...
##  $ Fireplaces   : num [1:1734] 1 0 1 1 0 1 1 1 0 0 ...
##  $ Bathrooms    : num [1:1734] 1 2.5 1 1.5 1 1 1.5 1.5 1.5 1.5 ...
##  $ Rooms        : num [1:1734] 5 6 8 5 3 8 8 9 8 6 ...

Ringkasan Statistik

summary(dataq)
##      Price           Lot.Size         Waterfront            Age        
##  Min.   :  5000   Min.   : 0.0000   Min.   :0.000000   Min.   :  0.00  
##  1st Qu.:145000   1st Qu.: 0.1700   1st Qu.:0.000000   1st Qu.: 13.00  
##  Median :189700   Median : 0.3700   Median :0.000000   Median : 19.00  
##  Mean   :211545   Mean   : 0.5003   Mean   :0.008651   Mean   : 28.26  
##  3rd Qu.:257290   3rd Qu.: 0.5400   3rd Qu.:0.000000   3rd Qu.: 34.00  
##  Max.   :775000   Max.   :12.2000   Max.   :1.000000   Max.   :225.00  
##    Land.Value     New.Construct      Central.Air      Fuel.Type        
##  Min.   :   200   Min.   :0.00000   Min.   :0.0000   Length:1734       
##  1st Qu.: 15100   1st Qu.:0.00000   1st Qu.:0.0000   Class :character  
##  Median : 25000   Median :0.00000   Median :0.0000   Mode  :character  
##  Mean   : 34536   Mean   :0.04671   Mean   :0.3662                     
##  3rd Qu.: 40200   3rd Qu.:0.00000   3rd Qu.:1.0000                     
##  Max.   :412600   Max.   :1.00000   Max.   :1.0000                     
##   Heat.Type          Sewer.Type         Living.Area    Pct.College   
##  Length:1734        Length:1734        Min.   : 616   Min.   :20.00  
##  Class :character   Class :character   1st Qu.:1300   1st Qu.:52.00  
##  Mode  :character   Mode  :character   Median :1632   Median :57.00  
##                                        Mean   :1753   Mean   :55.57  
##                                        3rd Qu.:2134   3rd Qu.:64.00  
##                                        Max.   :5228   Max.   :82.00  
##     Bedrooms       Fireplaces       Bathrooms         Rooms       
##  Min.   :1.000   Min.   :0.0000   Min.   :0.000   Min.   : 2.000  
##  1st Qu.:3.000   1st Qu.:0.0000   1st Qu.:1.500   1st Qu.: 5.000  
##  Median :3.000   Median :1.0000   Median :2.000   Median : 7.000  
##  Mean   :3.152   Mean   :0.5998   Mean   :1.899   Mean   : 7.032  
##  3rd Qu.:4.000   3rd Qu.:1.0000   3rd Qu.:2.500   3rd Qu.: 8.000  
##  Max.   :7.000   Max.   :4.0000   Max.   :4.500   Max.   :12.000
var(dataq$Price) # nilai variansi pada variabel Price
## [1] 9712853383
# pada summary() akan menampilkan ringkasan statistika pada setiap variabel meliputi min, max, mean, median, q1 dan q3.