R Markdown

This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.

When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:

summary(cars)
##      speed           dist       
##  Min.   : 4.0   Min.   :  2.00  
##  1st Qu.:12.0   1st Qu.: 26.00  
##  Median :15.0   Median : 36.00  
##  Mean   :15.4   Mean   : 42.98  
##  3rd Qu.:19.0   3rd Qu.: 56.00  
##  Max.   :25.0   Max.   :120.00

Including Plots

You can also embed plots, for example:

Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot. MENGHITUNG DENGAN R 3.1 PERINTAH DAN EVALUASI Notasi matematika berkembang untuk tujuan komunikasi antar manusia. Dengan diperkenalkannya komputer yang dapat diprogram pada pertengahan abad ke-20, notasi diperlukan untuk berkomunikasi antara manusia dan perangkat keras. Ternyata notasi matematika tradisional dalam kalkulus tidak sepenuhnya memadai untuk tujuan ini.

Komputer perlu membedakan antara pernyataan deklaratif dan imperatif . Pernyataan deklaratif, seperti mendefinisikan dan menggambarkan suatu hubungan. Pernyataan imperatif merupakan arahan untuk melakukan suatu tindakan . Misalnya, “Tokonya ada di blok berikutnya,” bersifat deklaratif. “Bawakan beberapa biskuit dari toko,” sangat penting.

Nama dan format instruksi tersebut—misalnya membuat fungsi matematika dari rumus, menggambar grafik suatu fungsi, memplot data—diberikan dalam notasi fungsi yang sama dengan yang kita gunakan dalam matematika. Misalnya, makeFun()membuat fungsi dari rumus, slice_plot()membuat grafik fungsi, gf_point()membuat satu gaya grafik data. Entitas R yang mengatakan “lakukan ini” juga disebut “fungsi”.

Ketika mengacu pada fungsi R “lakukan ini”, kita akan merujuk pada hal-hal yang berada di antara tanda kurung sebagai “argumen.” Kata “masukan” juga baik-baik saja. Tujuan penggunaan “input” untuk fungsi matematika dan “argumen” untuk fungsi R “lakukan ini” hanyalah untuk membantu Anda mengidentifikasi kapan kita berbicara tentang matematika dan kapan kita berbicara tentang komputasi.

Dengan komputer, penulisan ekspresi dalam notasi komputer berjalan seiring dengan evaluasi notasi. Kita akan mulai dengan mode evaluasi yang paling sederhana, yaitu Anda menulis ekspresi di konsol untuk bahasa tersebut. ?fig-R-console menunjukkan dan contoh tab konsol yang disediakan oleh aplikasi RStudio. Orang yang memegang keyboard kemudian mengetikkan ekspresi sederhana:2 + 3

Setelah menyelesaikan ekspresi, pemain keyboard menekan “return.” Aplikasi RStudio mengirimkan ekspresi ke perangkat lunak yang “menafsirkannya” sesuai dengan aturan bahasa R. 2 + 3adalah ekspresi R yang lengkap dan valid, pernyataan imperatif. Akibatnya, perangkat lunak bahasa R melakukan tindakan yang ditentukan—menambahkan 2 dan 3—dan mengembalikan hasilnya ke RStudio, yang menampilkannya tepat di bawah ekspresi itu sendiri.

Perhatikan bahwa nilai ekspresi hanyalah angka 5. Bahasa R diatur untuk memformat angka dengan indeks, yang berguna ketika nilai ekspresi adalah kumpulan angka yang besar. Dalam kasus di sini, dengan hanya satu angka pada hasil evaluasi ekspresi, indeks hanya menyatakan hal yang sudah jelas.

Setelah mencetak hasil evaluasi ekspresi 2 + 3, RStudio menampilkan prompt lain, yang menandakan bahwa Anda siap untuk memasukkan ekspresi berikutnya. Pada Gambar 3.1 kita melihat konsol setelah orang di keyboard merespons prompt dengan menulis ekspresi lain, menekan return, meminta RStudio mencetak nilai ekspresi itu, dan menampilkan prompt baru.

Dua ekspresi yang ditunjukkan pada konsol pada Gambar 3.1 keduanya bernilai satu angka. Kita mengatakan, “perintah mengembalikan suatu nilai.” Perintahnya adalah ekspresi R yang valid diikuti dengan sinyal (menekan tombol “Kembali”) untuk mengevaluasi perintah . Nilai ekspresi adalah hasil evaluasi perintah.

Dalam pernyataan matematika seperti , itu menunjukkan bahwa pernyataan tersebut bersifat deklaratif. Di sisi lain, menerapkan fungsi pada suatu nilai, seperti pada , adalah pernyataan imperatif.

Bentuk umum lain dari ekspresi R adalah penugasan , sebuah pernyataan deklaratif. Tugas memberi nama pada suatu nilai. Hal ini dilakukan dengan menggunakan nama simbolis dan <-token:

b <- 3

Hasil evaluasi perintah ini akan disimpan di memori komputer, dengan nama b, Karena nilai sedang disimpan, R dirancang untuk tidak menampilkan nilai seperti yang terjadi pada dua perintah pertama di konsol. Jika Anda ingin melihat nilai yang dicetak, berikan nama sebagai perintah penting:

b ## [1] 3

Seringkali, pernyataan deklaratif dan imperatif digabungkan, misalnya

b <- 22/7

Buku ini menampilkan perintah yang sedang dievaluasi dalam kotak abu-abu, tanpa perintah. Nilai yang dikembalikan oleh perintah ditampilkan di bawah perintah, diawali dengan . Dalam pemformatan buku, empat perintah yang baru saja kami jelaskan akan ditampilkan sebagai berikut:

2 + 3 ## [1] 5 sqrt(16) ## [1] 4 b <- 3 b <- 22/7 b ## [1] 3.142857

Saat membaca buku ini, berhati-hatilah dalam membedakan antara tampilan suatu perintah dan tampilan nilai yang dikembalikan oleh perintah tersebut. Yang pertama adalah sesuatu yang Anda ketik, yang kedua dicetak oleh komputer. 3.2 MEMASANG MOSAIK Buku ini menggunakan bahasa R yang diperluas dengan serangkaian paket yang dikenal secara kolektif sebagai {mosaic}. Untuk menggunakan perintah di bagian selanjutnya, Anda perlu menginstal paket ini. Ini adalah operasi satu kali; Anda melakukannya satu kali untuk setiap komputer setelah Anda menyiapkan R dan RStudio. Perintah-perintah ini akan melakukan pekerjaan itu. Jalankan ke konsol R Anda.

install.packages(“remotes”) remotes::install_github(“ProjectMOSAIC/mosaicCalc”)

Anda tidak perlu menginstal ulang paket setiap kali Anda memulai konsol R baru. Namun, Anda harus memberi tahu setiap konsol R yang Anda buka untuk merujuk ke paketnya. Lakukan ini dengan perintah berikut, yang biasanya menjadi hal pertama yang Anda ketik saat membuka konsol.

library(mosaicCalc) 3.3 FUNGSI DALAM R ATAU MOSAIC Salah satu operasi matematika mendasar dalam buku ini adalah mendefinisikan fungsi . Anda telah melihat cara kita menggunakan notasi matematika untuk mendefinisikan suatu fungsi, misalnya,

R/mosaik setara dengan definisi adalah:

h <- makeFun(1.5*t^2 - 2 ~ t)

Setelah Anda mendefinisikan suatu fungsi, Anda dapat mengevaluasinya pada sebuah masukan. Notasi R untuk mengevaluasi fungsi sama dengan notasi matematika, misalnya,

h(4) ## [1] 22

atau

h(t=4) ## [1] 22

Namun terdapat perbedaan yang jelas antara notasi matematika dan notasi komputasi yang digunakan untuk mendefinisikan suatu fungsi. Semua informasi yang diberikan sama, tetapi formatnya berbeda. Informasi itu adalah:

nama fungsinya: atau h. Saat menulis nama fungsi yang ditentukan komputer, kita akan meletakkan tanda kurung pengingat setelah namanya, seperti pada h(). nama input ke fungsi: ataux perhitungan yang dilakukan fungsi, ditulis dalam bentuk nama input. atau 1.5 * t^2 - 2. Dengan meletakkan kedua bentuk notasi secara berdampingan, mari kita beri label pada elemen yang dimilikinya:

Bagi manusia yang membaca notasi matematika, Anda mengetahui bahwa pernyataan tersebut mendefinisikan suatu fungsi karena Anda telah diberitahu demikian. Demikian pula, komputer perlu diberi tahu apa yang harus dilakukan dengan informasi yang diberikan. Itulah intinya makeFun(). Ada perintah R/mosaik lain yang dapat mengambil informasi yang sama dan melakukan sesuatu yang lain dengannya, misalnya membuat grafik fungsi atau (bagi mereka yang memiliki beberapa kalkulus) membuat turunan atau antiturunan dari fungsi tersebut.

Perhatikan … Dalam R, hal seperti ini makeFun()disebut “fungsi” karena, seperti fungsi matematika, hal tersebut mengubah masukan menjadi keluaran. Dalam kasus makeFun(), inputnya adalah bentuk yang disebut ekspresi tilde , karena karakter tilde ( ~ ) di tengahnya. Di sisi kanan tilde terdapat nama masukan. Di sebelah kiri adalah ekspresi R untuk rumus yang akan digunakan, ditulis seperti biasa dalam nama masukan. Seluruh ekspresi gelombang laut diambil sebagai satu-satunya argumen untuk makeFun(). Meskipun mungkin terasa aneh jika ada tanda baca di tengah-tengah argumen, ingatlah bahwa hal serupa terjadi saat kita menulis . 3.4 NAMA DAN TUGAS Perintah

h <- makeFun(1.5*t^2 - 2 ~ t)

memberi nama hpada fungsi yang dibuat oleh makeFun(). Pilihan nama yang baik membuat perintah Anda lebih mudah bagi pembaca manusia.

Bahasa R memberikan beberapa batasan pada nama yang diperbolehkan. Ingatlah hal ini saat Anda membuat nama R di pekerjaan Anda selanjutnya:

Nama adalah satu -satunya hal yang diperbolehkan di sisi kiri simbol penugasan .<- Nama harus diawali dengan huruf abjad, misal able, Baker, dan seterusnya. Angka dapat digunakan setelah huruf awal, seperti pada final4atau g20. Anda juga dapat menggunakan titik .dan garis bawah _seperti pada third_place. Tidak ada karakter lain yang dapat digunakan dalam nama: tanpa tanda minus, tanpa @tanda, tanpa /atau +, tanpa tanda kutip, dan seterusnya. Misalnya, meskipun third_placemerupakan nama yang sah di R, yang berikut ini bukan: 3rd_place, third-place. Namun boleh saja jika memiliki nama seperti place_3rdatau place3, dll., yang diawali dengan huruf.

R juga membedakan huruf besar/kecil. Misalnya, Henryadalah nama yang berbeda dari henry, meskipun keduanya terlihat sama bagi pembaca manusia. 3.5 RUMUS DI R Kendala pada keyboard berarti rumus komputer ditulis dengan cara yang sedikit berbeda dari notasi matematika tradisional. Hal ini paling jelas terlihat saat menulis perkalian dan eksponensial. Perkalian harus selalu ditandai dengan simbol, misalnya ditulis 3pi. Untuk eksponensial, daripada menggunakan superskrip seperti Anda menggunakan karakter “tanda sisipan”, seperti pada 2^3. Cara terbaik untuk belajar menerapkan rumus matematika dalam bahasa komputer adalah dengan membaca contoh dan berlatih menulisnya.

Berikut beberapa contohnya:

Notasi tradisional Notasi R 3 + 2 3 / 2 6 * 4 sqrt(4) log(5) 2 * pi

(1 / 2) * 17 17 - 5 / 2

(17 - 5) / 2 3^2 exp(-2) Masing-masing contoh ini ditulis menggunakan angka sebagai masukan untuk operasi matematika. Sintaksnya akan sama ketika menggunakan nama input seperti xatau yatau altitude, misalnya (x - y) / 2. Agar perintah tersebut dapat digunakan xdan yberfungsi, beberapa makna harus telah melekat sebelumnya pada simbol-simbol tersebut. Kami akan kembali ke topik penting ini di lain hari.