mean : rata-rata
median : median
var : ragam(variansi)
range : nilai minimum dan maksimum
quantile : persentil, desil, kuartil
summary : min, Q1, median, mean, Q3, max
x<- c(2,2,0,1,3,3,2,2,2,2)
summary(x)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.0 2.0 2.0 1.9 2.0 3.0
range(x)
## [1] 0 3
Modus
mode <- function(x){
uqx <- unique(x)
tab <- table(x)
sort(uqx)[tab == max(tab)]
}
mode(x)
## [1] 2
Rata-rata Geometeri
mean.geom <- function(x){
exp(mean(log(x)))
}
mean.geom(x)
## [1] 0
Rata-rata Harmoni
mean.harm <- function(x){
1/(mean(1/x))
}
mean.harm(x)
## [1] 0
Nilai Skewness dan Kurtosis
library(e1071)
skewness(x)
## [1] -0.7329177
kurtosis(x)
## [1] -0.1729112
Diagram dahan daun (stem-and-leaf display) dari data dapat dilakukan dengan
stem(x)
nilai.matematika<-c(67,74,58,90,82,66,86,45,95,74)
nilai.fisika<-c(72,65,66,86,72,56,79,80,89,56)
stem(nilai.matematika)
##
## The decimal point is 1 digit(s) to the right of the |
##
## 4 | 58
## 6 | 6744
## 8 | 2605
Untuk membandingkan beberapa kelompok data sering digunakan diagram kotak garis (boxplot). Untuk membuat diagram kotak garis suatu kelompok data digunakan
boxplot(x)
nilai.matematika<-c(67,74,58,90,82,66,86,45,95,74)
nilai.fisika<-c(72,65,66,86,72,56,79,80,89,56)
boxplot(nilai.matematika, xlab="Matematika",ylab="nilai")
dt <- cbind(nilai.matematika,nilai.fisika)
boxplot(dt, xlab="grup", ylab="nilai",col =c("lightblue"))
hist(v,main,xlab,xlim,ylim,breaks,col,border)
v adalah vektor yang mengandung nilai numerik yang digunakan dalam histogram.
main menunjukkan judul grafik.
col digunakan untuk mengatur warna batang.
border digunakan untuk mengatur warna border setiap bar.
xlab digunakan untuk memberikan gambaran sumbu x.
xlim digunakan untuk menentukan kisaran nilai pada sumbu x.
ylim digunakan untuk menentukan rentang nilai pada sumbu y.
break digunakan untuk menyebutkan lebar setiap batang.
hist(nilai.matematika,xlab = "nilai",col = "yellow",border = "blue")
hist(nilai.matematika,xlab = "Weight",col = "green",border = "red", xlim = c(0,100), ylim = c(0,5), breaks = 5)
Untuk membuat diagram pencar (scatter plot) dari data berpasangan (x,y)
Scatter Plot atau diagram pencar adalah diagram yang digunakan untuk menampilkan sebaran data. Scatter plot seringkali dipakai untuk melakukan analisa regresi dan korelasi, runtun waktu (time series), bahkan dapat digunakan untuk melakukan statistical learning
Ada banyak jenis tipe untuk atribut type, diantaranya:
type=”l” untuk memberi garis penghubung antar titik
type=”p” untuk memberi penebal titik
type=”b” untuk memberi garis penghubung dengan penebal titik
type=”c” untuk memberi garis penghubung tanta titik
type=”h” untuk membuat histogram
type=”s” untuk membuat grafik fungsi tangga
type=”o” untuk membuat overplot (mirip dengan “b” cuman titiknya ditembus oleh garis penghubung)
plot(x, y, pch = 19, cex = 0.8, frame = FALSE, xlab = “nama label pada sumbu X”, ylab = “nama label pada sumbu y”)
plot(nilai.matematika, nilai.fisika, pch = 19, cex = 0.8, frame = FALSE, xlab = "matematika", ylab = "fisika", main="korelasi")
barplot(nilai.matematika, names.arg = nilai.matematika, col = "red")
barplot(nilai.matematika)
par(mfrow=c(1,2))
barplot(nilai.matematika, names.arg = nilai.matematika, horiz = TRUE,col = "blue")
barplot(nilai.matematika, names.arg = nilai.matematika, col = "red")
VADeaths
## Rural Male Rural Female Urban Male Urban Female
## 50-54 11.7 8.7 15.4 8.4
## 55-59 18.1 11.7 24.3 13.6
## 60-64 26.9 20.3 37.0 19.3
## 65-69 41.0 30.9 54.6 35.1
## 70-74 66.0 54.3 71.1 50.0
barplot(VADeaths,
col = c("lightblue", "mistyrose", "lightcyan",
"lavender", "cornsilk"),
legend = rownames(VADeaths))
barplot(VADeaths,
col = c("lightblue", "mistyrose", "lightcyan",
"lavender", "cornsilk"),
legend = rownames(VADeaths), beside = TRUE)
ggplot
df <- data.frame(dose=c("D0.5", "D1", "D2"),
len=c(4.2, 10, 29.5))
head(df)
library(ggplot2)
ggplot(data=df, aes(x=dose, y=len))+geom_bar(stat="identity", fill="steelblue")+geom_text(aes(label=len), vjust=1.6, color="white", size=3.5)+theme_minimal()
Mengurutkan Diagram Batang dengan fungsi ggplot
kabkot_kalbar <- c("Sambas", "Bengkayang", "Landak","Mempawah", "Sanggau", "Ketapang","Sintang", "Kapuas Hulu","Sekadau", "Melawi", "Kayong Utara", "Kubu Raya", "Pontianak", "Singkawang")
TPT <- c(3.34, 2.40, 2.29, 6.87, 2.47, 3.23, 2.34, 1.58, 2.80, 3.15, 3.93, 5.04, 10.37, 7.88)
TPT_kabkot_kalbar_2018 <- data.frame(kabkot_kalbar, TPT)
TPT_kabkot_kalbar_2018
### install packages ###
install.packages("ggplot2")
library("ggplot2")
## Mengurutkan data tertinggi ke terendah
TPT_barchart <- ggplot(TPT_kabkot_kalbar_2018,
aes(x = reorder(TPT_kabkot_kalbar_2018$kabkot_kalbar, -TPT_kabkot_kalbar_2018$TPT),
y = TPT_kabkot_kalbar_2018$TPT)) +
geom_bar(stat = "identity",color='skyblue', fill='steelblue') +
theme(axis.text.x = element_text(angle = 45, hjust = 1)) +
labs(title = "Tingkat Pengangguran Terbuka", subtitle="Tingkat Pengangguran Terbuka Kab/Kota di Kalimantan Barat 2018",
caption="Sumber: Badan Pusat Statistik", y = "TPT (%)", x = "Kabupaten/Kota")
TPT_barchart
### Merubah menjadi vertikal
TPT_barchart <- ggplot(TPT_kabkot_kalbar_2018,
aes(x = reorder(TPT_kabkot_kalbar_2018$kabkot_kalbar, TPT_kabkot_kalbar_2018$TPT),
y = TPT_kabkot_kalbar_2018$TPT)) +
geom_bar(stat = "identity", color='skyblue', fill='steelblue') +
theme(axis.text.x = element_text(angle = 45, hjust = 1)) +
geom_text(aes(label = TPT), nudge_y = -0.5) +
labs(title = "Tingkat Pengangguran Terbuka", subtitle="Tingkat Pengangguran Terbuka Kab/Kota di Kalimantan Barat 2018",
caption="Sumber: Badan Pusat Statistik", y = "TPT (%)", x = "Kabupaten/Kota") +
coord_flip()
TPT_barchart
pie(x, labels, radius, main, col, clockwise)
x adalah vektor yang berisi nilai numerik yang digunakan dalam diagram lingkaran.
label digunakan untuk memberikan deskripsi pada irisan.
radius menunjukkan jari-jari lingkaran diagram lingkaran (nilai antara −1 dan +1).
main menunjukkan judul grafik.
col menunjukkan palet warna.
clockwise adalah nilai logika yang menunjukkan jika irisan digambar searah jarum jam atau berlawanan arah jarum jam.
x <- c(21, 62, 10,53)
kota <- c("London","New York","Singapore","Mumbai")
piepercent<- round(100*x/sum(x), 1)
pie(x, labels = piepercent, main = "City pie chart",col = rainbow(length(x)))
legend("topright", c("London","New York","Singapore","Mumbai"), cex = 0.8,
fill = rainbow(length(x)))
library(plotrix)
x <- c(21, 62, 10,53)
lbl <- c("London","New York","Singapore","Mumbai")
pie3D(x,labels = lbl,explode = 0.1, main = "Pie Chart of Countries")
cars <- c(1, 3, 6, 4, 9,4,11,23,44)
trucks <- c(2, 5, 4, 5, 12,4,34,18,9)
# membuat line plot
plot(cars, type="o", col="blue", ylim=c(0,50))
# menambahkan line plot
lines(trucks, type="o", pch=22, lty=2, col="red")
title(main="Autos", col.main="red", font.main=4)
*** Contoh 2
# Persiapan Data
Tahun <- c("2000","2001","2002","2003","2004","2005","2006","2007","2008","2009","2010",
"2011","2012","2013","2014","2015","2016","2017","2018")
Tahun <- as.integer(Tahun)
TPT <- c(6.08, 8.10, 9.06, 9.67, 9.86, 11.24, 10.28, 9.11, 8.39, 7.87, 7.14,
7.48, 6.13, 6.17, 5.94, 6.18, 5.61, 5.50, 5.34)
Miskin <- c(19.14, 18.41, 18.20, 17.42, 16.66, 15.97, 17.75, 16.58, 15.42,14.15, 13.33,
12.49, 11.66, 11.47, 10.96, 11.13, 10.70, 10.12, 9.66)
# Membuat dataframe
data <- data.frame(Tahun, TPT, Miskin)
data
# install packages ###
install.packages("ggplot2")
## Warning: package 'ggplot2' is in use and will not be installed
library("ggplot2")
### Membuat Beberapa Grafik Garis ###
lineChart <- ggplot(data, aes(x = Tahun)) +
geom_line(aes(y = TPT), color = "#00ba38", size=1) +
geom_line(aes(y = Miskin), color = "#f8766d", size=1) +
labs(title = "TPT dan Kemiskinan", subtitle="Tingkat Pengangguran Terbuka dan Kemiskinan Indonesia Tahun 2000-2018",
caption="Sumber: Badan Pusat Statistik", y = "Persentase (%)")
lineChart
Contoh 3
Time series analysis atau deret waktu adalah rangkaian titik data yang setiap titik datanya dikaitkan dengan waktu
Objek deret waktu dibuat dengan menggunakan fungsi ts().
timeseries.object.name <- ts(data, start, end, frequency)
data adalah vektor atau matriks yang berisi nilai-nilai yang digunakan dalam deret waktu.
start menentukan waktu mulai untuk pengamatan pertama dalam deret waktu.
end menentukan waktu berakhir untuk pengamatan terakhir dalam deret waktu.
frequency menentukan jumlah pengamatan per satuan waktu.
# Dapatkan titik data dalam bentuk vektor R..
rainfall1 <- c(799,1174.8,865.1,1334.6,635.4,918.5,685.5,998.6,784.2,985,882.8,1071)
rainfall2 <-
c(655,1306.9,1323.4,1172.2,562.2,824,822.4,1265.5,799.6,1105.6,1106.7,1337.8)
# Ubah menjadi matriks.
combined.rainfall <- matrix(c(rainfall1,rainfall2),nrow = 12)
# Ubah menjadi objek deret waktu.
rainfall.timeseries <- ts(combined.rainfall,start = c(2012,1),frequency = 12)
# Cetak data deret waktu.
print(rainfall.timeseries)
## Series 1 Series 2
## Jan 2012 799.0 655.0
## Feb 2012 1174.8 1306.9
## Mar 2012 865.1 1323.4
## Apr 2012 1334.6 1172.2
## May 2012 635.4 562.2
## Jun 2012 918.5 824.0
## Jul 2012 685.5 822.4
## Aug 2012 998.6 1265.5
## Sep 2012 784.2 799.6
## Oct 2012 985.0 1105.6
## Nov 2012 882.8 1106.7
## Dec 2012 1071.0 1337.8
# Plot grafik deret waktu.
plot(rainfall.timeseries, main = "Multiple Time Series")