Universitas : Universitas Islam Negeri Maulana Malik Ibrahim Malang
Jurusan : Teknik Informatika
Disini kita akan mempelajari tentang permodelan statistik. Namun, di sini kita akan mengambil potongan pertama pada subjek dalam bentuk penyesuaian kurva, proses pengaturan parameter fungsi matematika untuk membuat fungsi tersebut menjadi representasi dekat dari beberapa data.
Cara mengakses data dalam file komputer, bagaimana data disimpan, dan bagaimana memvisualisasikan data adalah apa yang akan kita lakukan dengan R dan mosaicpaket yang memudahkan hal tersebut.
Di sini, kita akan bekerja dengan “Income-Housing.csv”, yang terletak di “http://www.mosaic-web.org/go/datasets/Income-Housing.csv”. File ini memberikan informasi dari survei tentang kondisi perumahan untuk orang-orang dalam kelompok pendapatan yang berbeda di AS.
Berikut cara membacanya menjadi R:
Housing = read.csv("http://www.mosaic-web.org/go/datasets/Income-Housing.csv")
read.csv()fungsi mengembalikan nilai yang disimpan dalam objek yang disebut housing, atau apapun nama yang kita mau. Setiap kali Anda membaca data dari file, nama file harus dalam tanda kutip ganda karakter tunggal tersebut. Dengan begitu, R tahu untuk memperlakukan karakter secara harfiah dan bukan sebagai nama objek seperti backquote
Housing
## Income IncomePercentile CrimeProblem AbandonedBuildings IncompleteBathroom
## 1 3914 5 39.6 12.6 2.6
## 2 10817 15 32.4 10.0 3.3
## 3 21097 30 26.7 7.1 2.3
## 4 34548 50 23.9 4.1 2.1
## 5 51941 70 21.4 2.3 2.4
## 6 72079 90 19.9 1.2 2.0
## NoCentralHeat ExposedWires AirConditioning TwoBathrooms MotorVehicle
## 1 32.3 5.5 52.3 13.9 57.3
## 2 34.7 5.0 55.4 16.9 82.1
## 3 28.1 2.4 61.7 24.8 91.7
## 4 21.4 2.1 69.8 39.6 97.0
## 5 14.9 1.4 73.9 51.2 98.0
## 6 9.6 1.0 76.7 73.2 99.0
## TwoVehicles ClothesWasher ClothesDryer Dishwasher Telephone
## 1 17.3 57.8 37.5 16.5 68.7
## 2 34.3 61.4 38.0 16.0 79.7
## 3 56.4 78.6 62.0 25.8 90.8
## 4 75.3 84.4 75.2 41.6 96.5
## 5 86.6 92.8 88.9 58.2 98.3
## 6 92.9 97.1 95.6 79.7 99.5
## DoctorVisitsUnder7 DoctorVisits7To18 NoDoctorVisitUnder7 NoDoctorVisit7To18
## 1 3.6 2.6 13.7 31.2
## 2 3.7 2.6 14.9 32.0
## 3 3.6 2.1 13.8 31.4
## 4 4.0 2.3 10.4 27.3
## 5 4.0 2.5 7.7 23.9
## 6 4.7 3.1 5.3 17.5
Anda dapat melihat nama semua variabel dalam format yang ringkas dengan names( ).
names(Housing)
## [1] "Income" "IncomePercentile" "CrimeProblem"
## [4] "AbandonedBuildings" "IncompleteBathroom" "NoCentralHeat"
## [7] "ExposedWires" "AirConditioning" "TwoBathrooms"
## [10] "MotorVehicle" "TwoVehicles" "ClothesWasher"
## [13] "ClothesDryer" "Dishwasher" "Telephone"
## [16] "DoctorVisitsUnder7" "DoctorVisits7To18" "NoDoctorVisitUnder7"
## [19] "NoDoctorVisit7To18"
Saat Anda ingin mengakses salah satu variabel, Anda memberi nama seluruh kumpulan data diikuti dengan nama variabel, dengan dua nama dipisahkan oleh $.
Housing$Income
## [1] 3914 10817 21097 34548 51941 72079
Nilai NULL akan muncul ketika anda melakukan keslahan pengetikan
Biasanya penyajian data yang paling informatif adalah grafis. Salah satu bentuk grafik yang paling dikenal adalah scatter-plot , format di mana setiap “kasus” atau “titik data” diplot sebagai titik di lokasi koordinat yang diberikan oleh dua variabel. Contoh :
library (mosaicCalc)
## Loading required package: mosaic
## Registered S3 method overwritten by 'mosaic':
## method from
## fortify.SpatialPolygonsDataFrame ggplot2
##
## The 'mosaic' package masks several functions from core packages in order to add
## additional features. The original behavior of these functions should not be affected by this.
##
## Attaching package: 'mosaic'
## The following objects are masked from 'package:dplyr':
##
## count, do, tally
## The following object is masked from 'package:Matrix':
##
## mean
## The following object is masked from 'package:ggplot2':
##
## stat
## The following objects are masked from 'package:stats':
##
## binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
## quantile, sd, t.test, var
## The following objects are masked from 'package:base':
##
## max, mean, min, prod, range, sample, sum
## Loading required package: mosaicCore
##
## Attaching package: 'mosaicCore'
## The following objects are masked from 'package:dplyr':
##
## count, tally
##
## Attaching package: 'mosaicCalc'
## The following object is masked from 'package:stats':
##
## D
gf_point(CrimeProblem ~ Income, data = Housing )
Untuk menampilkan dua lapisan dalam plot yang sama, hubungkan dengan %>%simbol (disebut “pipa”). Perhatikan bahwa tidak pernah%>% bisa pergi di awal baris baru. Contoh :
gf_point(
CrimeProblem ~ Income, data=Housing ) %>%
slice_plot(
35 - Income/1500 ~ Income, color = "green")
Jika, saat memplot data Anda, Anda lebih suka menetapkan batas sumbu ke sesuatu yang Anda pilih sendiri, Anda bisa melakukan ini. Contohnya:
gf_point(
CrimeProblem ~ Income, data = Housing) %>%
slice_plot(
35 - Income / 2800 ~ Income, color = "green") %>%
gf_lims(
x = range(0,75000),
y=range(0,45))
Grafik ilmiah yang dibuat dengan benar harus memiliki nama sumbu yang informatif. Anda dapat mengatur nama sumbu secara langsung menggunakan gf_labs:
gf_point(
CrimeProblem ~ Income, data=Housing) %>%
gf_labs(x= "Income Bracket ($US per household)/year",
y = "Fraction of Households",
main = "Crime Problem") %>%
gf_lims(x = range(0,75000), y = range(0,45))
Menggambarkan pemasangan kurva menggunakan pengukuran suhu (dalam
derajat C) secangkir kopi versus waktu (dalam menit):
s = read.csv(
"http://www.mosaic-web.org/go/datasets/stan-data.csv")
gf_point(temp ~ time, data=s)
Berikut catatan tingkat pasang surut di Hawaii selama sekitar 100
jam:
h = read.csv(
"http://www.mosaic-web.org/go/datasets/hawaii.csv")
gf_point(water ~ time, data=h)
File data “utilities.csv”memiliki catatan utilitas untuk sebuah rumah di
St. Paul, Minnesota, AS. Buat plot ini, termasuk labelnya
library (mosaicCalc)
Utilities <- read.csv(
"http://www.mosaic-web.org/go/datasets/utilities.csv")
gf_point(
temp ~ month, data=Utilities) %>%
gf_labs(x = "Month (Jan=1, Dec=12)",
y = "Temperature (F)",
main = "Ave. Monthly Temp.")
Dari “utilities.csv”file data, membuat plot tagihan bulanan rumah tangga untuk gas alam versus suhu rata-rata. Garis memiliki kemiringan 5 USD/derajat dan intersep 300 USD.
gf_point(
gasbill ~ temp, data=Utilities) %>%
gf_labs(xlab = "Temperature (F)",
ylab = "Expenditures ($US)",
main = "Natural Gas Use") %>%
slice_plot( 300 - 5*temp ~ temp, color="red")
Cara memplot grafik fungsi dari satu variabel, misalnya:
slice_plot(
95 - 73*exp(-.2*t) ~ t,
domain(t = 0:20) )
Penggunaan contour_plot()untuk memplot dengan dua variabel input. Anda
perlu membuat daftar dua variabel di sebelah kanan +tanda, dan Anda
perlu memberikan rentang untuk masing-masing variabel. Sebagai
contoh:
contour_plot(
sin(2*pi*t/10)*exp(-.2*x) ~ t & x,
domain(t = range(0,20), x = range(0,10)))
Anda bisa membuat komputer menampilkan plot perspektif 3 dimensi dengan
menggunakan interactive_plot()fungsi. Seperti yang akan Anda lihat
dengan mengarahkan mouse di sekitar plot, ini interaktif.
interactive_plot(
sin(2*pi*t/10)*exp(-.5*x) ~ t & x,
domain(t = 0:20, x = 0:10))
Untuk membuat fungsi yang dapat Anda evaluasi secara numerik, buat fungsi tersebut dengan makeFun(). Sebagai contoh:
g <- makeFun(
sin(2*pi*t/10)*exp(-.2*x) ~ t & x)
contour_plot(
g(t, x) ~ t + x,
domain(t=0:20, x=0:10))
g(x = 4, t = 7)
## [1] -0.4273372