{"id":219,"date":"2023-08-18T02:05:23","date_gmt":"2023-08-17T19:05:23","guid":{"rendered":"https:\/\/people.usd.ac.id\/~ydkristanto\/?page_id=219"},"modified":"2025-09-03T05:43:22","modified_gmt":"2025-09-02T22:43:22","slug":"pengantar-r","status":"publish","type":"page","link":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/seri-belajar-statistika-dan-ilmu-data-dengan-r\/pengantar-r\/","title":{"rendered":"Pengantar Pemrograman R"},"content":{"rendered":"\n<p class=\"has-drop-cap\">Selamat datang di Pengantar <a href=\"https:\/\/www.r-project.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Pemrograman R<\/a>! Bab ini akan mengajak Anda untuk berkenalan dengan R, bahasa pemrograman yang terkemuka dan populer di bidang statistika dan ilmu data.<\/p>\n\n\n\n<p>Setelah menyelesaikan bab ini, Anda akan menguasai landasan dan fondasi bahasa pemrograman R&#8211;termasuk di antaranya adalah vektor, matriks, faktor, data frame, dan daftar. Dengan keterampilan-keterampilan tersebut, Anda akan siap untuk melakukan analisis data secara mandiri di R!<\/p>\n\n\n\n<p>Bab Pengantar Pemrograman R ini terbagi menjadi enam subbab yang memandu Anda untuk menyelami berbagai topik dasar tentang R.<\/p>\n\n\n\n<ul><li><a href=\"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/seri-belajar-statistika-dan-ilmu-data-dengan-r\/pengantar-r\/2\/\">Dasar-Dasar R (hal. 2)<\/a><\/li><li><a href=\"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/seri-belajar-statistika-dan-ilmu-data-dengan-r\/pengantar-r\/3\/\">Vektor (hal. 3)<\/a><\/li><li><a href=\"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/seri-belajar-statistika-dan-ilmu-data-dengan-r\/pengantar-r\/4\/\">Matriks (hal. 4)<\/a><\/li><li><a href=\"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/seri-belajar-statistika-dan-ilmu-data-dengan-r\/pengantar-r\/5\/\">Faktor (hal. 5)<\/a><\/li><li><a href=\"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/seri-belajar-statistika-dan-ilmu-data-dengan-r\/pengantar-r\/6\/\">Data Frame (hal. 6)<\/a><\/li><li><a href=\"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/seri-belajar-statistika-dan-ilmu-data-dengan-r\/pengantar-r\/7\/\">Daftar (hal. 7)<\/a><\/li><\/ul>\n\n\n\n<p>Anda akan disediakan banyak sekali latihan terbimbing dalam menyelami R. Di latihan terbimbing tersebut, Anda akan praktik dan bekerja dengan R tanpa harus meninggalkan laman ini!<\/p>\n\n\n\n<p>Bersiap mencicipinya? Ayo klik tombol Submit di dalam contoh latihan interaktif berikut!<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\">Bersedia, Siap, Ya!<\/p>\n\n\n\n<p>Anda akan sering berjumpa dengan editor R seperti di bawah ini. Cermati kode yang tertulis di dalam editor tersebut. Menurut Anda, Apa yang akan dilakukan oleh kode tersebut? Ayo silakan cari tahu dengan mengklik tombol Submit!<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\nprint(\"Saya siap belajar dan berlatih pemrograman R dengan penuh semangat!\")\n\n<\/code>\n<code data-type=\"solution\">\nprint(\"Saya siap belajar dan berlatih pemrograman R dengan penuh semangat!\")\n\n<\/code>\n<code data-type=\"sct\">\n\nsuccess_msg(\"Hebat! Anda siap untuk belajar dan berlatih pemrograman R. Selanjutnya Anda akan masuk ke dasar-dasar R di halaman kedua. Untuk itu, silakan klik `Page 2` di bagian bawah halaman ini!\")\n<\/code>\n<div data-type=\"hint\">Cukup klik tombol Submit! Iya, semudah itu untuk belajar pemrogram R.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<!--nextpage-->\n\n\n\n<h2 id=\"dasar-r\">Dasar-Dasar R<\/h2>\n\n\n\n<p class=\"has-drop-cap\">Subbab ini adalah awal perjalanan Anda dalam menyelami R. Di dalam subbab ini, Anda akan belajar bagaimana menggunakan R untuk melakukan operasi-operasi aritmetika dan bagaimana memberikan nilai kepada variabel. Selain itu, Anda akan mengetahui jenis-jenis data yang mendasar di R. Mari kita mulai dengan penuh semangat!<\/p>\n\n\n\n<h3 id=\"operasi-aritmetika\">Operasi Aritmetika dengan R<\/h3>\n\n\n\n<p>Hal mendasar yang dapat kita lakukan di R adalah menggunakannya sebagai kalkulator. Kita dapat menggunakan R untuk melakukan operasi-operasi aritmetika. Untuk melakukannya, kita gunakan operator-operator berikut ini.<\/p>\n\n\n\n<ul><li>Penjumlahan: <code>+<\/code><\/li><li>Pengurangan: <code>-<\/code><\/li><li>Perkalian: <code>*<\/code><\/li><li>Pembagian: <code>\/<\/code><\/li><li>Perpangkatan: <code>^<\/code><\/li><li>Modulus: <code>%%<\/code><\/li><\/ul>\n\n\n\n<p>Operasi modulus memberikan sisa pembagian ketika kita membagi sebuah bilangan dengan bilangan lain. Misalnya, <code>10 %% 4<\/code> akan menghasilkan 2 karena 10 dibagi 4 sisanya 2.<\/p>\n\n\n\n<p>Berdasarkan informasi tersebut, sekarang kerjakan <a href=\"#latihan-1.1\">Latihan 1.1<\/a> berikut!<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.1\">Latihan 1.1<\/p>\n\n\n\n<ul><li>Perhatikan editor di bawah ini! Kita dapat mengamati bahwa tagar <code>#<\/code> digunakan untuk menambahkan komentar terhadap kode R.<\/li><li>Hitunglah 3 pangkat 4 dengan menuliskan <code>3^4<\/code>.<\/li><li>Tentukan berapakah sisa pembagian 44 oleh 7 dengan menuliskan <code>44 %% 7<\/code>.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Penjumlahan\n8 + 7 \n\n# Pengurangan\n2023 - 20\n\n# Perkalian\n23 * 5\n\n# Pembagian\n(5 + 5) \/ 2 \n\n# Perpangkatan\n\n\n# Modulus\n\n\n<\/code>\n<code data-type=\"solution\">\n# Penjumlahan\n8 + 7 \n\n# Pengurangan\n2023 - 20\n\n# Perkalian\n23 * 5\n\n# Pembagian\n(5 + 5) \/ 2 \n\n# Perpangkatan\n3^4\n\n# Modulo\n44%%7\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghilangkan contoh operasi aritmetika lainnya!\"\nex() %&gt;% check_output_expr(\"3^4\", missing_msg = \"Contoh perpangkatannya masih keliru. Tulislah `3 ^ 4` pada baris baru.\")\n\nex() %&gt;% check_output_expr(\"44 %% 7\", missing_msg = \"Sepertinya ada kekeliruan dalam contoh modulonya. Silakan tulis `44 %% 7` pada baris baru.\")\nsuccess_msg(\"Hebat! Ayo lanjut mempelajari variabel di bagian berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Contoh lain penggunaan operator modulo: <code>35 %% 8<\/code> menghasilkan <code>3<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"variabel\">Variabel<\/h3>\n\n\n\n<p>Variabel penting dalam statistika maupun pemrograman, khususnya di R. Dengan variabel, kita dapat menyimpan sebuah nilai (misalnya 5) atau objek (misalnya sebuah daftar informasi film). Nama variabel tersebut kemudian dapat kita gunakan lagi untuk mengakses nilai atau objek yang tersimpan dalam variabel tersebut.<\/p>\n\n\n\n<p>Untuk menyimpan 5 kepada sebuah variabel <code>var_ku<\/code>, kita gunakan perintah berikut. Sekarang ayo kerjakan <a href=\"#latihan-1.2\">Latihan 1.2<\/a>!<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>var_ku &lt;- 5<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.2\">Latihan 1.2<\/p>\n\n\n\n<p>Perhatikan editor di bawah ini. Berikan nilai 144 kepada variabel <code>var_mu<\/code>. Setelah itu, klik tombol Submit. Jika jawabannya benar, nilai 144 akan ditampilkan di R Console.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Berikan nilai 144 kepada variabel var_mu\nvar_mu <- \n\n# Cetaklah nilai dari variabel var_mu\nvar_mu\n\n<\/code>\n<code data-type=\"solution\">\n# Berikan nilai 144 kepada variabel var_mu\nvar_mu <- 144\n\n# Cetaklah nilai dari variabel var_mu\nvar_mu\n\n<\/code>\n<code data-type=\"sct\">\nex() %>% check_object(\"var_mu\", undefined_msg = \"Pastikan variabel `var_mu` terdefinisi.\")  %>% check_equal(incorrect_msg = \"Pastikan untuk memasukkan nilai yang akurat kepada `var_mu`.\")\n\nsuccess_msg(\"Luar biasa! Mari lanjut ke pendalaman tentang variabel di bagian berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Lakukan cara yang sama dengan memasukkan nilai 5 ke variabel <code>var_mu<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Sekarang misalkan kita menghadap sebuah laci. Laci tersebut berisi tiga buku teks. Selanjutnya, kita dapat membuat sebuah variabel dengan nama <code>buku_teks<\/code> dan memberikannya nilai sebanyak buku teks dalam laci tersebut. Lakukan hal ini di <a href=\"#latihan-1.3\">Latihan 1.3<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.3\">Latihan 1.3<\/p>\n\n\n\n<ul><li>Tikkan kode berikut ke dalam editor: <code>buku_teks &lt;- 3<\/code>. Apa maksud kode tersebut? Kode tersebut membuat variabel <code>buku_teks<\/code> dan menjadikannya bernilai 3.<\/li><li>Tuliskan <code>buku_teks<\/code> di bawah komentar yang kedua. Hal ini digunakan untuk menampilkan nilai variabel tersebut.<\/li><li>Klik tombol Submit untuk mengirimkan jawaban Anda. Kita akan melihat 3 tercetak dalam output. Artinya R telah menghubungkan <code>buku_teks<\/code> dengan 3.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Berikan nilai 3 kepada variabel buku_teks\n\n\n# Tampilkan nilai variabel buku_teks\n\n\n<\/code>\n<code data-type=\"solution\">\n# Berikan nilai 3 kepada variabel buku_teks\nbuku_teks <- 3\n\n# Tampilkan nilai variabel buku_teks\nbuku_teks\n\n<\/code>\n<code data-type=\"sct\">\nex() %>% check_object(\"buku_teks\", undefined_msg = \"Silakan definisikan variabel `buku_teks`.\") %>% check_equal(incorrect_msg = \"Pastikan nilai `buku_teks` sudah akurat.\")\n\nex() %>% check_output_expr(\"buku_teks\", missing_msg = \"Apakah Anda sudah meminta R menampilkan nilai `buku_teks` pada console?\")\n\nsuccess_msg(\"Bagus! Silakan lanjut ke pembahasan berikutnya!\")\n<\/code>\n<div data-type=\"hint\">Ingat, Anda dapat menggunakan operator <code><-<\/code> untuk memberikan nilai kepada variabel.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Di luar laci tersebut, kita melihat enam buku tulis. Kita dapat membuat variabel <code>buku_tulis<\/code> dan memberikan nilai 6 kepada variabel tersebut. Agar rapi, kita masukkan semua buku tulis tersebut ke dalam laci. Ada berapa buku di dalam laci tersebut? Jawabannya dapat dicari dengan kode berikut. Silakan kerjakan di <a href=\"#latihan-1.4\">Latihan 1.4<\/a>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>buku_teks + buku_tulis<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.4\">Latihan 1.4<\/p>\n\n\n\n<ul><li>Buatlah sebuah variabel <code>buku_tulis<\/code> dan berikan nilai 6 kepada variabel tersebut.<\/li><li>Jumlahkan <code>buku_teks<\/code> dan <code>buku_tulis<\/code> dan tampilkan hasilnya.<\/li><li>Jadikan hasil penjumlahan tersebut sebagai variabel baru, yaitu <code>buku<\/code>.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Buatlah buku_tulis dan berikan nilai 6\nbuku_teks <- 3\n\n\n# Jumlahkan dua variabel tersebut\n\n\n# Buatlah variabel bernama buku\n\n\n<\/code>\n<code data-type=\"solution\">\n# Buatlah buku_tulis dan berikan nilai 6\nbuku_teks <- 3\nbuku_tulis <- 6\n\n# Jumlahkan dua variabel tersebut\nbuku_teks + buku_tulis\n\n# Buatlah variabel bernama buku\nbuku <- buku_teks + buku_tulis\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Sudahkah Anda menggunakan `buku <- buku_teks + buku_tulis` untuk membuat variabel `buku`?\"\nex() %>% check_object(\"buku_teks\") %>% check_equal(incorrect_msg = \"Berikan nilai 3 kepada `buku_teks`.\")\n\nex() %>% check_object(\"buku_tulis\") %>% check_equal(incorrect_msg = \"Berikan nilai 6 kepada `buku_tulis`.\")\n\nex() %>% check_output_expr(\"buku_teks + buku_tulis\",missing_msg = \"Tampilkan hasil penjumlahan `buku_teks` dan `buku_tulis`. Caranya telah dijelaskan sebelumnya.\")\n\nex() %>% check_object(\"buku\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\nsuccess_msg(\"Bagus! Keuntungan perhitungan yang menggunakan variabel adalah bahwa hasilnya dapat digunakan kembali. Jika Anda memberi nilai 10 kepada `buku teks` dan menjalankan lagi kodenya, `buku` secara otomatis juga akan berubah. Silakan lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Variabel <code>buku<\/code> merupakan hasil penjumlahan <code>buku_teks<\/code> dan <code>buku_tulis<\/code>. Operator penjumlahan adalah <code>+<\/code> dan operator untuk memberi nilai variabel adalah <code><-<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Kita telah dapat menjumlahkan <code>buku_teks<\/code> dan <code>buku_tulis<\/code>. Secara harfiah kita tentu tidak dapat menjumlahkan buku teks dan buku tulis. Akan tetapi, itulah yang baru saja kita lakukan!<\/p>\n\n\n\n<p>Penjumlahan tersebut dapat dilakukan karena kedua variabel tersebut sama-sama memuat bilangan. Operasi <code>+<\/code> dapat dilakukan untuk variabel-variabel numerik. Jika kita mengganti nilai salah satu variabel menjadi karakter dan kita jumlahkan kedua variabel tersebut, tentu hal ini tidak mungkin! Silakan konfirmasi ke <a href=\"#latihan-1.5\">Latihan 1.5<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.5\">Latihan 1.5<\/p>\n\n\n\n<ul><li>Silakan klik tombol Run dan lihat pesan kekeliruan yang ditampilkan. Pahami mengapa kekeliruan tersebut terjadi.<\/li><li>Revisilah kode tersebut sehingga R dapat memahami bahwa nilai dari <code>buku_tulis<\/code> adalah benar-benar 6 sehingga diperoleh hasil penjumlahannya 9. Klik Submit untuk mengirimkan jawabannya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Berikan nilai kepada variabel buku_teks\nbuku_teks <- 3\n\n# Revisilah nilai buku_tulis\nbuku_tulis <- \"enam\"\n\n# Buatlah variabel buku dan tampilkan\nbuku <- buku_teks + buku_tulis \nbuku\n\n<\/code>\n<code data-type=\"solution\">\n# Berikan nilai kepada variabel buku_teks\nbuku_teks <- 3\n\n# Revisilah nilai buku_tulis\nbuku_tulis <- 6\n\n# Buatlah variabel buku dan tampilkan\nbuku <- buku_teks + buku_tulis \nbuku\n\n<\/code>\n<code data-type=\"sct\">\nex() %>% check_error(incorrect_msg = \"Anda dapat melakukannya dengan mengubah variabel `buku_tulis` menjadi nilai numerik, bukannya string!\")\n\nex() %>% check_object(\"buku_teks\") %>% check_equal(incorrect_msg = \"Pastikan bahwa `buku_teks` masih bernilai `3`.\")\n\nex() %>% check_object(\"buku_tulis\") %>% check_equal(incorrect_msg = \"Cek kembali agar `buku_tulis` sama dengan `6`.\")\n\nex() %>% check_object(\"buku\") %>% check_equal(incorrect_msg = \"Nilai `buku` tidak benar. Nilainya seharusnya 9 yang diperoleh dari penjumlahan `buku_teks` dan `buku_tulis`.\")\n\nex() %>% check_object(\"buku\")%>% check_or(\n  check_code(.,\"buku\\\\s*<-\\\\s*buku_teks\\\\s*\\\\+\\\\s*buku_tulis\", missing_msg = \"Sudahkan Anda membuat `buku` sebagai penjumlahan `buku_teks` dan `buku_tulis`?\", append=F),\n  check_code(.,\"buku\\\\s*<-\\\\s*buku_tulis\\\\s*\\\\+\\\\s*buku_teks\", missing_msg = \"Sudahkan Anda membuat `buku` sebagai penjumlahan `buku_teks` dan `buku_tulis`?\", append=F)\n )\nex() %>% check_output_expr(\"buku\", missing_msg = \"Jangan menghapus baris kode yang menampilkan `buku`.\")\n\n\n\nsuccess_msg(\"Mantap, tetaplah bersemangat! Ayo lanjut ke latihan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Anda harus memberikan nilai numerik 6 kepada <code>buku_tulis<\/code>, bukannya karakter \"enam\". Perhatikan bahwa tanda petik dua mengindikasikan bahwa \"enam\" merupakan karakter<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"jenis-data\">Jenis-Jenis Data Dasar di R<\/h3>\n\n\n\n<p>Penjelasan sebelumnya telah mendemonstrasikan adanya dua jenis data di R, yaitu numerik dan karakter. Apakah ada jenis data yang lain? Berikut ini beberapa jenis data yang mendasar di R yang perlu diketahui di tahap awal belajar R.<\/p>\n\n\n\n<ul><li>Bilangan real seperti <code>7,6<\/code> dan <code>pi<\/code> disebut dengan <strong>numeric<\/strong>.<\/li><li>Bilangan bulat seperti <code>24<\/code> dan <code>8<\/code> disebut dengan <strong>integer<\/strong>. Jenis data ini merupakan bagian dari numerik.<\/li><li>Nilai-nilai boolean (<code>TRUE<\/code> atau <code>FALSE<\/code>) disebut dengan <strong>logical<\/strong>.<\/li><li>Teks disebut dengan <strong>character<\/strong>.<\/li><\/ul>\n\n\n\n<p>Tanda petik dua digunakan untuk menandakan bahwa <code>\"beberapa teks\"<\/code> adalah karakter. Untuk lebih memahami jenis-jenis data di R, ayo kerjakan <a href=\"#latihan-1.6\">Latihan 1.6<\/a><\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.6\">Latihan 1.6<\/p>\n\n\n\n<p>Ubahlah nilai dari:<\/p>\n\n\n\n<ul><li>variabel <code>numerik_ku<\/code> menjadi <code>64<\/code>,<\/li><li>variabel <code>karakter_ku<\/code> menjadi <code>\"cerdas dan humanis\"<\/code>, dan<\/li><li>variabel logis_ku menjadi <code>FALSE<\/code>.<\/li><\/ul>\n\n\n\n<p>Perlu diingat bahwa penggunaan tanda petik dua menandakan bahwa <code>\"cerdas dan humanis\"<\/code> merupakan karakter. Selain itu, perlu diketahui bahwa R sensitif terhadap kapitalisasi.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Ubahlah numerik_ku menjadi 64\nnumerik_ku <- 64.5\n\n# Ubahlah karakter_ku menjadi \"cerdas dan humanis\"\nkarakter_ku <- \"teks\"\n\n# Ubahlah logis_ku menjadi FALSE\nlogis_ku <- TRUE\n\n<\/code>\n<code data-type=\"solution\">\n# Ubahlah numerik_ku menjadi 64\nnumerik_ku <- 64\n\n# Ubahlah karakter_ku menjadi \"cerdas dan humanis\"\nkarakter_ku <- \"cerdas dan humanis\"\n\n# Ubahlah logis_ku menjadi FALSE\nlogis_ku <- FALSE\n\n<\/code>\n<code data-type=\"sct\">\nex() %>% check_object(\"numerik_ku\") %>% check_equal(incorrect_msg = \"Sudahkah Anda mendeklarasikan `numerik_ku` sehingga bernilai 64?\")\n\nex() %>% check_object(\"karakter_ku\") %>% check_equal(incorrect_msg = \"Sudahkah Anda mengubah `karakter_ku` menjadi `\\\"cerdas dan humanis\\\"`? Jangan lupa tanda petik duanya!\")\n\nex() %>% check_object(\"logis_ku\") %>% check_equal(incorrect_msg = \"Apakah variabel `logis_ku` sudah diubah menjadi `FALSE`? Semua huruf `FALSE` harus kapital!\")\n\nsuccess_msg(\"Kerja bagus! Sebagai tambahan, kita juga dapat memberikan nilai `F` kepada variabel `logis_ku`.\")\n<\/code>\n<div data-type=\"hint\">Ubahlah nilai dalam editor menjadi nilai yang diminta dalam perintah soal. Misalnya, <code>numerik_ku <- 64<\/code> memberikan nilai 64 kepada variabel <code>numerik_ku<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Penting bagi kita untuk mengetahui jenis data yang kita miliki sebelum mengolahnya lebih lanjut. Hal ini diperlukan, misalnya, untuk dapat mencegah kekeliruan kita sebelumnya yang melakukan operasi <code>3 + \"enam\"<\/code>. Kita dapat mengetahui jenis data dengan menggunakan fungsi <code>class()<\/code>. Lebih lengkapnya silakan kerjakan <a href=\"#latihan-1.7\">Latihan 1.7<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.7\">Latihan 1.7<\/p>\n\n\n\n<p>Lengkapilah kode yang ada di dalam editor berikut dan tampilkan variabel-variabel <code>karakter_ku<\/code> dan <code>logis_ku<\/code>!<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Deklarasikan variabel-varibel yang jenisnya berbeda\nnumerik_ku <- 64\nkarakter_ku <- \"cerdas dan humanis\"\nlogis_ku <- FALSE \n\n# Periksa kelas dari numerik_ku\nclass(numerik_ku)\n\n# Cek kelas dari karakter_ku\n\n\n# Periksalah kelas dari logis_ku\n\n\n<\/code>\n<code data-type=\"solution\">\n# Deklarasikan variabel-varibel yang jenisnya berbeda\nnumerik_ku <- 64\nkarakter_ku <- \"cerdas dan humanis\"\nlogis_ku <- FALSE \n\n# Periksa kelas dari numerik_ku\nclass(numerik_ku)\n\n# Cek kelas dari karakter_ku\nclass(karakter_ku)\n\n# Periksalah kelas dari logis_ku\nclass(logis_ku)\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengubah deklarasi variabel-variabelnya!\"\nex()  %>% check_object(\"numerik_ku\", undefined_msg = msg)  %>%  check_equal(incorrect_msg = msg)\n\nex()  %>% check_object(\"karakter_ku\", undefined_msg = msg)  %>%  check_equal(incorrect_msg = msg)\n\nex()  %>% check_object(\"logis_ku\", undefined_msg = msg)  %>%  check_equal(incorrect_msg = msg)\n\npatt <- \"Sudahkah Anda menggunakan `class(%1$s)` untuk menampilkan jenis data `%1$s`?\"\nex() %>% check_output_expr(\"class(numerik_ku)\",missing_msg = \"Jangan menghilangkah kode yang menampilkan jenis data `numerik_ku`.\")\n\nex() %>% check_output_expr(\"class(karakter_ku)\",missing_msg = sprintf(patt, \"karakter_ku\"))\n\nex() %>% check_output_expr(\"class(logis_ku)\",missing_msg = sprintf(patt, \"logis_ku\"))\nsuccess_msg(\"Selamat! Ini adalah latihan terakhir di bagian ini. Silakan lanjut ke halaman berikutnya untuk masuk ke dunia vektor!\")\n\n<\/code>\n<div data-type=\"hint\">Kode yang digunakan untuk mencetak jenis data <code>numerik_ku<\/code> sudah dicontohkan di dalam editor. Lakukan cara yang serupa untuk melihat jenis data <code>karakter_ku<\/code> dan <code>logis_ku<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"kuis-dasar-r\">Uji Pengetahuan Anda<\/h3>\n\n\n<script>\n                            if (window.qmn_quiz_data === undefined) {\n                                    window.qmn_quiz_data = new Object();\n                            }\n                    <\/script><script>window.qmn_quiz_data[\"1\"] = {\"quiz_id\":\"1\",\"quiz_name\":\"Dasar-Dasar R\",\"disable_answer\":0,\"ajax_show_correct\":0,\"progress_bar\":\"0\",\"contact_info_location\":0,\"qpages\":{\"1\":{\"id\":\"1\",\"quizID\":\"1\",\"pagekey\":\"AkdpAX2G\",\"hide_prevbtn\":\"0\"}},\"skip_validation_time_expire\":0,\"timer_limit_val\":\"0\",\"disable_scroll_next_previous_click\":0,\"disable_first_page\":\"0\",\"enable_result_after_timer_end\":0,\"enable_quick_result_mc\":0,\"end_quiz_if_wrong\":0,\"form_disable_autofill\":0,\"disable_mathjax\":0,\"enable_quick_correct_answer_info\":0,\"quick_result_correct_answer_text\":\"Correct! You have selected correct answer.\",\"quick_result_wrong_answer_text\":\"Wrong! You have selected wrong answer.\",\"quiz_processing_message\":\"\",\"not_allow_after_expired_time\":0,\"scheduled_time_end\":false,\"error_messages\":{\"email_error_text\":\"Not a valid e-mail address!\",\"number_error_text\":\"This field must be a number!\",\"incorrect_error_text\":\"The entered text is not correct!\",\"empty_error_text\":\"Please complete all required fields!\",\"url_error_text\":\"The entered URL is not valid!\",\"minlength_error_text\":\"Required atleast %minlength% characters.\",\"maxlength_error_text\":\"Maximum %maxlength% characters allowed.\"},\"first_page\":false}\n                    <\/script><div class='qsm-quiz-container qsm-quiz-container-1 qmn_quiz_container mlw_qmn_quiz  quiz_theme_default  '>\n\t\t\t\t\t<form name=\"quizForm1\" id=\"quizForm1\" action=\"\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219\" method=\"POST\" class=\"qsm-quiz-form qmn_quiz_form mlw_quiz_form\" novalidate enctype=\"multipart\/form-data\">\n\t\t\t\t<input type=\"hidden\" name=\"qsm_hidden_questions\" id=\"qsm_hidden_questions\" value=\"\">\n\t\t\t\t<div id=\"mlw_error_message\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t<span id=\"mlw_top_of_quiz\"><\/span>\n\t\t\t\t\t\t\t<section class=\"qsm-page \">\n\t\t\t\t\t\t\t\t<div class=\"quiz_section quiz_begin\">\n\t\t\t\t\t\t<div class='qsm-before-message mlw_qmn_message_before'>\n\t\t\t\t<p>Jawablah soal-soal dalam kuis Dasar-Dasar R dengan tepat!<\/p>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-1 \" data-qid=\"1\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Kode R yang dapat digunakan untuk menentukan sisa pembagian 13 oleh 5 adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question1-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question1\" id=\"question1_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question1_1\">\n\t\t\t\t\t13 % 5\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question1-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question1\" id=\"question1_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question1_2\">\n\t\t\t\t\t13 %% 5\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question1-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question1\" id=\"question1_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question1_3\">\n\t\t\t\t\t13\/5\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question1-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question1\" id=\"question1_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question1_4\">\n\t\t\t\t\t5 %% 13\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question1-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question1\" id=\"question1_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question1_5\">\n\t\t\t\t\t5 % 13\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question1\" id=\"question1_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-2 \" data-qid=\"2\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Isilah bagian yang kosong agar kode tersebut berfungsi untuk memberikan nilai 17 kepada variabel umur. <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p>umur <input autocomplete='off' maxlength='5' type='text' class='qmn_fill_blank ' name='question2[]' \/> 45<\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-3 \" data-qid=\"3\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Sebuah variabel `var_kita` bernilai TRUE. Jika kita menuliskan class(var_kita) dalam R, kita akan mendapatkan luaran ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question3-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question3\" id=\"question3_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question3_1\">\n\t\t\t\t\t\"integer\"\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question3-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question3\" id=\"question3_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question3_2\">\n\t\t\t\t\t\"numeric\"\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question3-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question3\" id=\"question3_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question3_3\">\n\t\t\t\t\t\"character\"\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question3-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question3\" id=\"question3_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question3_4\">\n\t\t\t\t\t\"complex\"\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question3-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question3\" id=\"question3_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question3_5\">\n\t\t\t\t\t\"logical\"\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question3\" id=\"question3_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/section>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_question_list\" value=\"1Q2Q3Q\" \/>\n\t\t\t\t\t\t<div id=\"mlw_error_message_bottom\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_all_questions_count\" id=\"qmn_all_questions_count\" value=\"3\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"total_questions\" id=\"total_questions\" value=\"3\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer\" id=\"timer\" value=\"0\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer_ms\" id=\"timer_ms\" value=\"0\"\/>\n\t\t\t\t\t<input type=\"hidden\" class=\"qmn_quiz_id\" name=\"qmn_quiz_id\" id=\"qmn_quiz_id\" value=\"1\" \/>\n\t\t\t\t\t<input type='hidden' name='complete_quiz' value='confirmation' \/>\n\t\t\t\t\t\t\t\t\t<\/form>\n\t\t<\/div>\n\t\t<div style=\"display: none;\" class=\"qsm-popup qsm-popup-slide\" id=\"modal-4\" aria-hidden=\"false\"><div class=\"qsm-popup__overlay\" tabindex=\"-1\" data-micromodal-close=\"\"><div class=\"qsm-popup__container qmn_quiz_container\" role=\"dialog\" aria-modal=\"true\"><div class=\"qsm-popup__content\"><img src=\"https:\/\/i0.wp.com\/people.usd.ac.id\/~ydkristanto\/wp-content\/plugins\/quiz-master-next\/assets\/clock.png?w=750&#038;ssl=1\" alt=\"clock.png\" data-recalc-dims=\"1\"\/><p class=\"qsm-time-up-text\"> Time's up<\/p><\/div><footer class=\"qsm-popup__footer\"><button class=\"qsm-popup-secondary-button qmn_btn\" data-micromodal-close=\"\" aria-label=\"Close this dialog window\" onclick=\"location.reload();\">Cancel<\/button><\/footer><\/div><\/div><\/div>\n\n\n<!--nextpage-->\n\n\n\n<h2 id=\"vektor\">Vektor<\/h2>\n\n\n\n<p class=\"has-drop-cap\">Halo, selamat datang di dunia vektor! Subbab ini akan mengajak Anda berjalan-jalan, secara harfiah, dan menganalisis datanya dengan menggunakan vektor di R. Oleh karena itu, Anda akan belajar membuat vektor-vektor di R, menamai vektor-vektor tersebut, memilih elemen-elemennya, dan membandingkan beberapa vektor yang berbeda. Ayo kita mulai perjalanan di dunia vektor dengan penuh semangat!<\/p>\n\n\n\n<h3 id=\"membuat-vektor\">Membuat Sebuah Vektor<\/h3>\n\n\n\n<p>Seperti yang telah disinggung di atas, di subbab ini kita akan menganalisis data langkah-langkah kaki yang Anda lakukan setiap harinya. Analisis tersebut akan banyak menggunakan vektor.<\/p>\n\n\n\n<p>Vektor merupakan himpunan berdimensi satu yang dapat menampung data numerik, karakter, atau logika. Dengan kata lain, vektor merupakan sebuah alat sederhana untuk menyimpan data. Misalnya, Anda dapat menyimpan banyaknya langkah yang telah Anda lakukan setiap harinya dalam satu minggu.<\/p>\n\n\n\n<p>Untuk membuat sebuah vektor di R, kita gunakan fungsi <code>c()<\/code>. Kita masukkan elemen-elemen vektornya ke dalam tanda kurung tersebut dan kita pisahkan tiap elemennya dengan koma. Misalnya adalah seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>vektor_numerik &lt;- c(1, 2, 3)\nvektor_karakter &lt;- c(\"a\", \"b\", \"c\")<\/code><\/pre>\n\n\n\n<p>Mudah, kan? Sekarang mari buat <code>vektor_boolean<\/code> dalam <a href=\"#latihan-1.8\">Latihan 1.8<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.8\">Latihan 1.8<\/p>\n\n\n\n<p>Lengkapilah kode berikut sehingga <code>vektor_boolean<\/code> memiliki tiga elemen, yang secara berturut-turut adalah <code>TRUE<\/code>, <code>FALSE<\/code>, dan <code>TRUE<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\nvektor_numerik <- c(3, 30, 81)\nvektor_karakter <- c(\"a\", \"b\", \"c\")\n\n# Lengkapilah kode berikut\nvektor_boolean <-\n\n<\/code>\n<code data-type=\"solution\">\nvektor_numerik <- c(3, 30, 81)\nvektor_karakter <- c(\"a\", \"b\", \"c\")\n\n# Lengkapilah kode berikut\nvektor_boolean <- c(TRUE, FALSE, TRUE)\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengubah kode yang mendefinisikan `vektor_numerik` dan `vektor_karakter`!\"\nex() %>% check_object(\"vektor_numerik\", undefined_msg = msg) %>% check_equal(, incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_karakter\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_boolean\") %>% check_equal(incorrect_msg = \"Pastikan Anda telah memberikan nilai-nilai yang benar kepada `vektor_boolean`. Gunakan `c(TRUE, FALSE, TRUE)`. Jangan memberikan tanda petik dua pada `TRUE` dan `FALSE`! Pastikan juga urutannya sama seperti yang diminta dalam soal.\")\n\n\nsuccess_msg(\"Mantap! Perhatikan bahwa pemberian spasi setelah tanda koma dalam fungsi `c()` membuat kodenya mudah dibaca. Mari kita lanjutkan ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Simpanlah <code>c(TRUE, FALSE, TRUE)<\/code> kepada <code>vektor_boolean<\/code> dengan menggunakan operator <code><-<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Anda ingin memiliki gaya hidup yang sehat sehingga menargetkan untuk berjalan 10.000 langkah setiap harinya. Untuk menganalisis banyak langkah yang telah Anda lakukan, Anda memutuskan untuk mencatatnya selama dua minggu. Yang Anda catat adalah selisih banyak langkah dengan target Anda, yaitu 10.000.<\/p>\n\n\n\n<p>Untuk minggu pertama:<\/p>\n\n\n\n<ul><li>pada hari Senin Anda lebih 1.205 langkah;<\/li><li>Selasa Anda lebih 823 langkah;<\/li><li>Rabu Anda kurang 340 langkah;<\/li><li>Kamis Anda kurang 541 langkah;<\/li><li>Jumat Anda kurang 259 langkah;<\/li><li>Sabtu Anda lebih 662 langkah; dan<\/li><li>Minggu Anda lebih 1.845 langkah.<\/li><\/ul>\n\n\n\n<p>Untuk minggu kedua:<\/p>\n\n\n\n<ul><li>Pada hari Senin Anda lebih 901 langkah;<\/li><li>Selasa Anda lebih 1.043 langkah;<\/li><li>Rabu Anda lebih 56 langkah;<\/li><li>Kamis Anda kurang 101 langkah;<\/li><li>Jumat Anda kurang 404 langkah;<\/li><li>Sabtu Anda lebih 772 langkah; dan<\/li><li>Minggu Anda lebih 2.410 langkah.<\/li><\/ul>\n\n\n\n<p>Agar data tersebut dapat digunakan di R, Anda memutuskan untuk menyimpannya ke dalam variabel <code>minggu_pertama<\/code> dan <code>minggu_kedua<\/code>. Lakukan hal ini di <a href=\"#latihan-1.9\">Latihan 1.9<\/a>!<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.9\">Latihan 1.9<\/p>\n\n\n\n<p>Masukkan data lebih\/kurangnya langkah Anda terhadap 10.000 di minggu kedua ke dalam variabel <code>minggu_kedua<\/code>: Anda lebih 901, kemudian lebih 1.043, lebih 56, kurang 101, kurang 404, lebih 772, dan lebih 2.410.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Capaian langkah di minggu pertama\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\n\n# Capaian langkah di minggu kedua\nminggu_kedua <- \n\n<\/code>\n<code data-type=\"solution\">\n# Capaian langkah di minggu pertama\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\n\n# Capaian langkah di minggu kedua\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\n\n<\/code>\n<code data-type=\"sct\">\nex() %>% check_object(\"minggu_pertama\") %>% check_equal(incorrect_msg = \"Pastikan elemen-elemen dalam `minggu_pertama` benar.\")\n\nex() %>% check_object(\"minggu_kedua\") %>% check_equal(incorrect_msg = \"Pastikan elemen-elemen `minggu_kedua` sudah tepat. Periksa juga urutannya!\")\n\nsuccess_msg(\"Luar biasa! Ingat bahwa Anda dapat melihat isi setiap vektornya dengan mentikkan namanya kemudian klik Run.\")\n<\/code>\n<div data-type=\"hint\">Di dalam editor sudah tersedia <code>minggu_kedua<\/code>. Silakan masukkan bilangan-bilangan seperti yang disebutkan dalam soal. Tanda negatif menunjukkan banyaknya langkah yang kurang dari targetnya.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"menamai-vektor\">Membuat Sebuah Vektor Bernama<\/h3>\n\n\n\n<p>Penting bagi kita untuk dapat melihat data dengan jelas. Penting juga bagi kita untuk dapat memahami setiap elemen dalam vektor dan menghubungkannya dengan konteks datanya.<\/p>\n\n\n\n<p>Dalam latihan sebelumnya, kita telah membuat vektor yang elemen-elemennya merujuk pada nama hari. Akan tetapi, vektor tersebut belum menunjukkan nama-nama harinya dengan jelas. Di sini kita akan memberikan nama kepada elemen-elemen dalam vektor tersebut.<\/p>\n\n\n\n<p>Kita dapat memberi nama kepada elemen-elemen vektor dengan menggunakan fungsi <code>names()<\/code>. Contohnya seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>contoh_vector &lt;- c(\"Agus Bagus\", \"Mahasiswa\")\nnames(contoh_vector) &lt;- c(\"Nama\", \"Pekerjaan\")<\/code><\/pre>\n\n\n\n<p>Kode tersebut membuat sebuah vektor <code>contoh_vektor<\/code> dan memberikan nama kepada setiap elemennya. Elemen pertamanya diberi nama <code>Nama<\/code> dan elemen keduanya diberi nama <code>Pekerjaan<\/code>. Ketika kode tersebut dicetak dalam console, kita mendapatkan luaran seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>        Nama    Pekerjaan \n\"Agus Bagus\"  \"Mahasiswa\"<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.10\">Latihan 1.10<\/p>\n\n\n\n<p>Kode dalam editor menamai elemen-elemen <code>minggu_pertama<\/code> dengan nama-nama hari dalam seminggu. Lakukan juga untuk variabel <code>minggu_kedua<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Capaian langkah minggu pertama setiap harinya\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\n\n# Capaian langkah minggu kedua setiap harinya\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\n\n# Pasangkan nama hari sebagai nama minggu_pertama\nnames(minggu_pertama) <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\n\n# Pasangkan nama hari sebagai nama minggu_kedua\n\n\n<\/code>\n<code data-type=\"solution\">\n# Capaian langkah minggu pertama setiap harinya\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\n\n# Capaian langkah minggu kedua setiap harinya\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\n\n# Pasangkan nama hari sebagai nama minggu_pertama\nnames(minggu_pertama) <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\n\n# Pasangkan nama hari sebagai nama minggu_kedua\nnames(minggu_kedua) <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\n\n<\/code>\n<code data-type=\"sct\">\nex() %>% check_object(\"minggu_pertama\") %>% check_equal(incorrect_msg = \"Jangan mengubah nilai dalam `minggu_pertama`; itu disediakan untuk Anda.\")\n\nex() %>% check_object(\"minggu_kedua\") %>% check_equal(incorrect_msg = \"Jangan mengubah nilai dalam `minggu_kedua`; itu disediakan untuk Anda.\")\n\nex() %>% check_object(\"minggu_pertama\") %>% check_equal(eq_condition = 'equal', incorrect_msg = \"Jangan mengganti nama elemen-elemen `minggu_pertama`; fokuslah kepada `minggu_kedua`!\")\n\nex() %>% check_object(\"minggu_kedua\") %>% check_equal(eq_condition = 'equal',incorrect_msg = \"Pastikan bahwa Anda memberikan nama `minggu_kedua` dengan benar. Gunakan vektor yang sama untuk menamai `minggu_pertama`.\")\n\n\nsuccess_msg(\"Kerja bagus! Lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Anda dapat menggunakan <code>names(minggu_kedua)<\/code> untuk menamai elemen-elemen vektor <code>minggu_kedua<\/code>. Namailah dengan vektor nama-nama hari.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Apakah Anda merasakan adanya kekurangefisienan kode di dalam <a href=\"#latihan-1.10\" data-type=\"internal\" data-id=\"#latihan-1.10\">Latihan 1.10<\/a>? Kita menuliskan vektor nama-nama hari sampai dua kali. Proses tersebut dapat kita buat lebih efisien dengan menggunakan variabel!<\/p>\n\n\n\n<p>Kita dapat membuat variabel yang berisi nama-nama hari dalam seminggu kemudian memasangkannya sebagai nama elemen-elemen <code>minggu_pertama<\/code> dan <code>minggu_kedua<\/code>. Dengan cara seperti ini, kita dapat menggunakan kembali variabel tersebut.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.11\">Latihan 1.11<\/p>\n\n\n\n<p>Sebuah variabel <code>vektor_hari<\/code> telah tersedia di dalam editor. Gunakan variabel ini untuk menamai elemen-elemen <code>minggu_pertama<\/code> dan <code>minggu_kedua<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Langkah minggu pertama setiap harinya\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\n\n# Langkah minggu kedua setiap harinya\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\n\n# Variabel nama-nama hari\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\n\n# Pasangkan nama-nama hari kepada minggu_pertama dan minggu_kedua\nnames(minggu_pertama) <- \nnames(minggu_kedua) <- \n\n<\/code>\n<code data-type=\"solution\">\n# Langkah minggu pertama setiap harinya\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\n\n# Langkah minggu kedua setiap harinya\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\n\n# Variabel nama-nama hari\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\n\n# Pasangkan nama-nama hari kepada minggu_pertama dan minggu_kedua\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengubah `minggu_pertama`, `minggu_kedua` atau `vektor_hari`.\"\n\nex() %>% check_object(\"minggu_pertama\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_hari\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_pertama\") %>% check_equal(incorrect_msg = \"Pastikan untuk memasangkan `vektor_hari` sebagai nama `minggu_pertama`.\", eq_condition = \"equal\",)\n\nex() %>% check_object(\"minggu_kedua\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = \"Pastikan untuk memasangkan `vektor_hari` sebagai nama `minggu_kedua`.\")\n\n\nsuccess_msg(\"Bagus! Pelajarannya, cobalah untuk menghindari duplikasi setiap waktu. Selanjutnya mari kita belajar bagaimana melakukan operasi artimetika terhadap vektor!\")\n<\/code>\n<div data-type=\"hint\">Anda dapat menggunakan <code>names(minggu_pertama) <- vektor_hari<\/code> untuk menamai <code>minggu_pertama<\/code>. Lakukan cara yang sama untuk <code>minggu_kedua<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"operasi-aritmetika-vektor\">Operasi Aritmetika pada Vektor<\/h3>\n\n\n\n<p>Sampai di sini, kita telah memiliki data capaian langkah di minggu pertama dan kedua yang disimpan ke dalam vektor-vektor yang setiap elemennya bernama. Data itu selanjutnya dapat kita analisis lebih lanjut untuk menjawab tiga pertanyaan berikut.<\/p>\n\n\n\n<ul><li>Berapakah total kekurangan\/kelebihan langkah Anda (dari 10.000) per harinya dalam dua minggu tersebut?<\/li><li>Secara keseluruhan, banyaknya langkah Anda apakah sudah memenuhi target 10.000 langkah per hari?<\/li><li>Bagaimana perbandingan performa di minggu pertama dan kedua?<\/li><\/ul>\n\n\n\n<p>Untuk menjawab pertanyaan-pertanyaan tersebut, kita perlu melakukan operasi artimetika terhadap vektor.<\/p>\n\n\n\n<p>Apa yang terjadi jika kita menjumlahkan dua vektor? Operasi tersebut akan menjumlahkan elemen vektor pertama dengan elemen yang bersesuaian di vektor kedua. Contohnya, tiga ekspresi berikut ekuivalen.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>c(1, 2, 3) + c(4, 5, 6)\nc(1 + 4, 2 + 5, 3 + 6)\nc(5, 7, 9)<\/code><\/pre>\n\n\n\n<p>Kita juga dapat melakukan perhitungan terhadap variabel-variabel yang merepresentasikan vektor.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>a &lt;- c(1, 2, 3) \nb &lt;- c(4, 5, 6)\nc &lt;- a + b<\/code><\/pre>\n\n\n\n<p>Mari berlatih penjumlahan vektor di dalam <a href=\"#latihan-1.12\">Latihan 1.12<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.12\">Latihan 1.12<\/p>\n\n\n\n<ul><li>Jumlahkan variabel <code>vektor_a<\/code> dan <code>vektor_b<\/code> dan jadikan hasilnya sebagai <code>vektor_total<\/code>.<\/li><li>Lihat hasilnya dengan mencetak <code>vektor_total<\/code>.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\nvektor_a <- c(1, 2, 3)\nvektor_b <- c(4, 5, 6)\n\n# Jumlahkan vektor_a dan vektor_b\nvektor_total <- \n  \n# Cetaklah vektor_total\n\n\n<\/code>\n<code data-type=\"solution\">\nvektor_a <- c(1, 2, 3)\nvektor_b <- c(4, 5, 6)\n\n# Jumlahkan vektor_a dan vektor_b\nvektor_total <- vektor_a + vektor_b\n  \n# Cetaklah vektor_total\nvektor_total\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengubah isi `vektor_a` maupun `vektor_b`!\"\nex() %>% check_object(\"vektor_a\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_b\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_total\") %>% check_equal(incorrect_msg = \"Pastikan bahwa `vektor_total` memuat hasil penjumlahan `vektor_a` dan `vektor_b`.\")\n\nex() %>% check_output_expr(\"vektor_total\", missing_msg = \"Jangan lupa untuk mencetak `vektor_total`! Cukup tikkan `vektor_total` pada baris baru.\")\n\nsuccess_msg(\"Hebat! Lanjutkan ke materi berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Gunakan <code>+<\/code> untuk menjumlahkan <code>vektor_a<\/code> dan <code>vektor_b<\/code>. Gunakan <code><-<\/code> untuk menjadikan hasil penjumlahan tersebut sebagai nilai <code>vektor_total<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Sekarang kita telah mengetahui bagaimana menjumlahkan dua vektor. Selanjutnya, kita akan menggunakan penjumlahan vektor tersebut untuk menjawab permasalahan pertama: berapakah total kekurangan\/kelebihan langkah Anda (dari 10.000) per harinya dalam dua minggu? Untuk menjawab ini, kita perlu menjumlahkan kekurangan\/kelebihan langkah setiap harinya di minggu pertama dengan minggu kedua.<\/p>\n\n\n\n<p>Di R, kita cukup menjumlahkan <code>minggu_pertama<\/code> dan <code>minggu_kedua<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.13\">Latihan 1.13<\/p>\n\n\n\n<p>Berilah nilai variabel <code>total_harian<\/code> sebagai total kekurangan\/kelebihan langkah per harinya dalam dua minggu.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Memberikan hasil total kekurangan\/kelebihan langkah per harinya kepada total_harian\ntotal_harian <- \n\n<\/code>\n<code data-type=\"solution\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Memberikan hasil total kekurangan\/kelebihan langkah per harinya kepada total_harian\ntotal_harian <- minggu_pertama + minggu_kedua\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah definisi dan penamaan `minggu_pertama` dan `minggu_kedua`.\"\nex() %>% check_object(\"vektor_hari\", undefined_msg = msg) %>% check_equal( incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_pertama\",  undefined_msg = msg) %>% check_equal(eq_condition = \"equal\", incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\", incorrect_msg = msg)\n\nex() %>% check_object(\"total_harian\") %>% check_equal(incorrect_msg = \"Jangan lupa untuk memberikan hasil penjumlahan `minggu_pertama` and `minggu_kedua` kepada `total_harian`.\")\n\n\nsuccess_msg(\"Bagus! Untuk melihat nilai <code>total_harian<\/code>, Anda dipersilakan untuk mencetaknya.\")\n<\/code>\n<div data-type=\"hint\">Serupa dengan latihan sebelumnya, berikan hasil penjumlahan kedua vektor kepada <code>total_harian<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Berdasarkan latihan sebelumnya, kita dapat mencermati bahwa ada hari yang banyak total langkahnya lebih dan ada hari yang kurang. Sekarang, kita ingin tahu apakah secara total target 10.000 langkah per hari sudah terpenuhi selama dua minggu tersebut.<\/p>\n\n\n\n<p>Keingintahuan tersebut dapat dijawab dengan menggunakan fungsi <code>sum()<\/code>. Fungsi ini menjumlahkan semua elemen dalam sebuah vektor. Misalnya, untuk menentukan jumlah total kelebihan\/kekurangan langkah di minggu pertama, kita dapat menggunakan kode berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>total_minggu_pertama &lt;- sum(minggu_pertama)<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.14\">Latihan 1.14<\/p>\n\n\n\n<ul><li>Tentukan jumlah total kelebihan\/kekurangan langkah di minggu kedua dan simpan hasilnya sebagai <code>total_minggu_kedua<\/code>.<\/li><li>Sekarang Anda memiliki jumlah total di minggu pertama dan kedua. Gunakan nilai tersebut untuk menghitung jumlah totalnya di kedua minggu tersebut dan simpan hasil tersebut sebagai <code>total_dua_minggu<\/code>.<\/li><li>Tampilkan nilai dari <code>total_dua_minggu<\/code>.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Total kelebihan\/kekurangan langkah di minggu pertama\ntotal_minggu_pertama <- sum(minggu_pertama)\n\n# Total kelebihan\/kekurangan langkah di minggu kedua\ntotal_minggu_kedua <- \n\n# Total keseluruhan di dua minggu\ntotal_dua_minggu <- \n\n# Cetak nilai total_dua_minggu\n\n\n<\/code>\n<code data-type=\"solution\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Total kelebihan\/kekurangan langkah di minggu pertama\ntotal_minggu_pertama <- sum(minggu_pertama)\n\n# Total kelebihan\/kekurangan langkah di minggu kedua\ntotal_minggu_kedua <- sum(minggu_kedua)\n\n# Total keseluruhan di dua minggu\ntotal_dua_minggu <- total_minggu_pertama + total_minggu_kedua\n\n# Cetak nilai total_dua_minggu\ntotal_dua_minggu\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah nilai dan penamaan `minggu_pertama` and `minggu_kedua`.\"\nex()  %>% check_object(\"vektor_hari\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\nex() %>% check_object(\"minggu_pertama\",  undefined_msg = msg, ) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\n\nex() %>% check_object(\"total_minggu_pertama\") %>% check_equal(incorrect_msg = \"Pastikan untuk memberikan nilai `total_minggu_pertama` sebagai jumlah dari `minggu_pertama`.\")\n\nex() %>% check_object(\"total_minggu_kedua\") %>% check_equal(incorrect_msg = \"Pastikan untuk memberikan nilai `total_minggu_kedua` sebagai jumlah dari `minggu_kedua`.\")\n\nex() %>% check_object(\"total_dua_minggu\") %>% check_equal(incorrect_msg = \"Pastikan untuk memberi nilai `total_dua_minggu` sebagai penjumlahan dua vektor total lainnya: `total_minggu_pertama` dan `total_minggu_kedua`.\")\n\nex() %>% check_output_expr(\"total_dua_minggu\", missing_msg = \"Jangan lupa untuk menuliskan `total_dua_minggu` pada baris baru untuk menampilkan nilainya.\")\n\nsuccess_msg(\"Hebat! Secara keseluruhan, Anda ternyata telah memenuhi target 10.000 langkah per hari.\")\n<\/code>\n<div data-type=\"hint\">Gunakan <code>sum()<\/code> untuk menentukan jumlah total <code>minggu_kedua<\/code>. Variabel <code>total_dua_minggu<\/code> merupakan penjumlahan dari jumlah total di minggu pertama dan kedua.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Selamat! Anda telah memenuhi target 10.000 langkah per harinya. Apakah Anda sudah puas dengan informasi tersebut? Sekarang mari kita analisis per minggunya. Apakah performa Anda dalam berjalan kaki meningkat? Dengan kata lain, apakah banyaknya langkah Anda di minggu kedua lebih besar (atau <code>&gt;<\/code>) daripada minggu pertama? Mari kita selidiki dalam <a href=\"#latihan-1.15\">Latihan 1.15<\/a>!<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.15\">Latihan 1.15<\/p>\n\n\n\n<ul><li>Hitunglah <code>total_minggu_pertama<\/code> dan <code>total_minggu_kedua<\/code> dengan menggunakan fungsi <code>sum()<\/code>.<\/li><li>Periksalah apakah total langkah di minggu kedua lebih dari minggu pertama. Cetaklah hasilnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Total kelebihan\/kekurangan langkah\ntotal_minggu_pertama <- \ntotal_minggu_kedua <- \n\n# Periksa apakah ada peningkatan\n\n\n<\/code>\n<code data-type=\"solution\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Total kelebihan\/kekurangan langkah\ntotal_minggu_pertama <- sum(minggu_pertama)\ntotal_minggu_kedua <- sum(minggu_kedua)\n\n# Periksa apakah ada peningkatan\ntotal_minggu_kedua > total_minggu_pertama\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah nilai dan penamaan `minggu_pertama` and `minggu_kedua`.\"\nex()  %>% check_object(\"vektor_hari\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\nex() %>% check_object(\"minggu_pertama\",  undefined_msg = msg, ) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\n\nex() %>% check_object(\"total_minggu_pertama\") %>% check_equal(incorrect_msg = \"Pastikan untuk memberikan nilai `total_minggu_pertama` sebagai jumlah dari `minggu_pertama`.\")\n\nex() %>% check_object(\"total_minggu_kedua\") %>% check_equal(incorrect_msg = \"Pastikan untuk memberikan nilai `total_minggu_kedua` sebagai jumlah dari `minggu_kedua`.\")\n\nex() %>% check_output_expr(\"total_minggu_kedua > total_minggu_pertama\",missing_msg = \"Apakah Anda sudah membandingkan dengan benar? Untuk memeriksa apakah `total_minggu_kedua` lebih besar dari `total_minggu_pertama`, Anda dapat menggunakan `total_minggu_kedua > total_minggu_pertama`.\")\n\nsuccess_msg(\"Bagus! Sekarang lanjutkan ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Untuk memeriksa apakah 10 lebih besar dari 4, Anda bisa menuliskan <code>10 > 4<\/code>. Kode itu akan menghasilkan sebuah nilai logika (<code>TRUE<\/code> atau <code>FALSE<\/code>).<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"memilih-elemen-vektor\">Memilih Elemen Vektor<\/h3>\n\n\n\n<p>Akan sangat berguna apabila kita dapat memilih satu atau lebih elemen vektor. Untuk melakukannya di R, kita menggunakan tanda kurung siku. Misalnya, jika kita ingin memilih elemen kelima dari vektor <code>minggu_pertama<\/code>, kita tuliskan <code>minggu_pertama[5]<\/code>.<\/p>\n\n\n\n<p>Bagaimana jika kita ingin memilih lebih dari satu elemen? Caranya serupa, tetapi di dalam tanda kurung sikunya kita isikan vektor yang berisi urutan elemen-elemennya. Jika kita ingin memilih elemen keempat, kelima, keenam, dan ketujuh dari vektor <code>minggu_pertama<\/code>, kita cukup tikkan <code>minggu_pertama[4:7]<\/code>. Tanda titik dua <code>:<\/code> tersebut merupakan perintah untuk mehasilkan bilangan asli mulai dari 4 sampai 7. Patut diperhatikan juga bahwa <code>4:7<\/code> berada langsung di dalam tanda kurung siku.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.16\">Latihan 1.16<\/p>\n\n\n\n<p>Pilihlah kelebihan\/kekurangan langkah di hari Senin, Selasa, Rabu, Kamis, dan Jumat dari <code>minggu_kedua<\/code> dan simpan hasilnya sebagai <code>hari_kerja_minggu_kedua<\/code>. Gunakan operator <code>:<\/code> untuk memudahkan Anda.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Definisikan sebuah variabel berdasarkan pilihannya\nhari_kerja_minggu_kedua <- \n\n<\/code>\n<code data-type=\"solution\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Definisikan sebuah variabel berdasarkan pilihannya\nhari_kerja_minggu_kedua <- minggu_kedua[1:5]\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah nilai dan penamaan `minggu_pertama` and `minggu_kedua`.\"\nex()  %>% check_object(\"vektor_hari\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\nex() %>% check_object(\"minggu_pertama\",  undefined_msg = msg, ) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\n\nex() %>% check_object(\"hari_kerja_minggu_kedua\") %>% check_equal(incorrect_msg = \"Sepertinya `hari_kerja_minggu_kedua` tidak memuat nilai-nilai yang tepat dari `minggu_kedua`. Anda dapat menggunakan vektor `1:5` di dalam tanda kurung siku.\")\n\nsuccess_msg(\"Anda berhasil! Operator titik dua sangatlah berguna dan sering digunakan dalam pemrograman R. Ingatlah operator itu baik-baik!\")\n<\/code>\n<div data-type=\"hint\">Pilihlah elemen-elemen <code>minggu_kedua<\/code> dengan menggunakan <code>1:5<\/code> yang diletakkan di dalam kurung siku. Buatlah hasilnya sebagai <code>hari_kerja_minggu_kedua<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Selain dengan menggunakan urutan elemen-elemennya, pemilihan juga dapat dilakukan dengan menggunakan nama elemen-elemennya. Misalnya, kode <code>minggu_kedua[\"Minggu\"]<\/code> digunakan untuk memilih elemen ketujuh dari vektor <code>minggu_kedua<\/code> karena <code>\"Minggu\"<\/code> merupakan nama elemen ketujuh vektor tersebut.<\/p>\n\n\n\n<p>Seperti yang telah kita lakukan sebelumnya, kita juga dapat menggunakan nama-nama elemen untuk memilih lebih dari satu elemen vektor. Misalnya adalah <code>minggu_kedua[c(\"Sabtu\", \"Minggu\")<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.17\">Latihan 1.17<\/p>\n\n\n\n<ul><li>Pilihlah tiga elemen pertama vektor <code>minggu_kedua<\/code> dengan menggunakan nama elemennya: <code>\"Senin\"<\/code>, <code>\"Selasa\"<\/code>, dan <code>\"Rabu\"<\/code>. Buatlah hasil pemilihan tersebut sebagai variabel baru, <code>awal_minggu_kedua<\/code>.<\/li><li>Hitunglah rerata nilai-nilai dalam <code>awal_minggu_kedua<\/code> dengan menggunakan fungsi <code>mean()<\/code>. Cetaklah hasilnya agar nilai reratanya dapat dilihat.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Pilihlah elemen-elemen yang bernama Senin, Selasa, dan Rabu\nawal_minggu_kedua <- \n\n\n# Hitung rerata dari elemen-elemen yang terpilih\n\n\n<\/code>\n<code data-type=\"solution\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Pilihlah elemen-elemen yang bernama Senin, Selasa, dan Rabu\nawal_minggu_kedua <- minggu_kedua[c(\"Senin\", \"Selasa\", \"Rabu\")]\n\n\n# Hitung rerata dari elemen-elemen yang terpilih\nmean(awal_minggu_kedua)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah nilai dan penamaan `minggu_pertama` and `minggu_kedua`.\"\nex()  %>% check_object(\"vektor_hari\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\nex() %>% check_object(\"minggu_pertama\",  undefined_msg = msg, ) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\n\nex() %>% check_object(\"awal_minggu_kedua\") %>% check_equal(incorrect_msg = \"Sepertinya `awal_minggu_kedua` tidak memuat tiga elemen pertama `minggu_kedua`. Anda dapat menggunakan `c(\\\"Senin\\\", \\\"Selasa\\\", \\\"Rabu\\\")` di dalam kurung siku untuk melakukannya.\")\n\nex() %>% check_output_expr(\"mean(awal_minggu_kedua)\", missing_msg = \"Sudahkah Anda menghitung rerata nilai-nilai dalam `awal_minggu_kedua` dan mencetaknya? Gunakan `mean(awal_minggu_kedua)`.\")\n\nsuccess_msg(\"Kerja hebat! Selain memilih elemen-elemen vektor dengan indeks dan namanya, kita juga dapat memilihnya dengan perbandingan. Pembahasan berikutnya akan menjelaskan bagaimana caranya!\")\n<\/code>\n<div data-type=\"hint\">Anda dapat menggunakan <code>c(\"Senin\", \"Selasa\", \"Rabu\")<\/code> yang ditempatkan di dalam kurung siku untuk memilih elemen-elemen vektornya. Anda dapat menggunakan <code>mean(awal_minggu_kedua)<\/code> untuk menghitung rerata nilai-nilai dalam <code>awal_minggu_kedua<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"pemilihan-perbandingan\">Pemilihan dengan Perbandingan<\/h3>\n\n\n\n<p>Dengan menggunakan operator-operator persamaan atau pertidaksamaan, kita juga dapat memilih nilai-nilai dalam sebuah vektor. Operator-operator tersebut adalah sebagai berikut.<\/p>\n\n\n\n<ul><li><code>&lt;<\/code> untuk kurang dari<\/li><li><code>&gt;<\/code> untuk lebih dari<\/li><li><code>&lt;=<\/code> untuk kurang dari atau sama dengan<\/li><li><code>&gt;=<\/code> untuk lebih dari atau sama dengan<\/li><li><code>==<\/code> untuk sama dengan<\/li><li><code>!=<\/code> untuk tidak sama dengan<\/li><\/ul>\n\n\n\n<p>Operator-operator tersebut dapat digunakan untuk membandingkan dua bilangan. Misalnya, <code>10 &lt; 4<\/code> akan menghasilkan <code>FALSE<\/code>. Menariknya, operator tersebut juga dapat digunakan untuk membandingkan sebuah vektor dengan bilangan. Misalnya adalah seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>c(1, 2, 3) &gt;= 2<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code output\"><code>&#91;1] FALSE  TRUE  TRUE<\/code><\/pre>\n\n\n\n<p>Perintah tersebut menguji setiap elemen dalam vektor apakah kondisi yang dinyatakan operator logikanya <code>TRUE<\/code> atau <code>FALSE<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.18\">Latihan 1.18<\/p>\n\n\n\n<ul><li>Pilihlah elemen-elemen vektor <code>minggu_kedua<\/code> yang positif dan jadikan hasilnya sebagai <code>minggu_kedua_terpilih<\/code>.<\/li><li>Cetaklah hasilnya sehingga Anda bisa melihat semua elemen-elemennya. Cetakan tersebut memberikan informasi apakah banyaknya langkah Anda melebihi 10.000 (<code>TRUE<\/code>) atau kurang dari 10.000 (<code>FALSE<\/code>).<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Hari apa saja langkah Anda melebihi 10.000?\nminggu_kedua_terpilih <- \n  \n# Tampilkan vektor minggu_kedua_terpilih\n\n\n<\/code>\n<code data-type=\"solution\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Hari apa saja langkah Anda melebihi 10.000?\nminggu_kedua_terpilih <- minggu_kedua > 0\n  \n# Tampilkan vektor minggu_kedua_terpilih\nminggu_kedua_terpilih\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah nilai dan penamaan `minggu_pertama` and `minggu_kedua`.\"\nex()  %>% check_object(\"vektor_hari\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\nex() %>% check_object(\"minggu_pertama\",  undefined_msg = msg, ) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua_terpilih\") %>% check_equal(incorrect_msg = \"Sepertinya `minggu_kedua_terpilih` tidak memuat elemen-elemen yang tepat.\")\n\nex() %>% check_output_expr(\"minggu_kedua_terpilih\", missing_msg = \"Jangan lupa untuk mencetak `minggu_kedua_terpilih` dengan menuliskan nama variabelnya pada baris baru.\")\n\nsuccess_msg(\"Jempol! Anda telah mampu menggunakan perbandingan untuk menguji setiap elemen dalam sebuah vektor. Pengujian seperti ini akan kita gunakan pada pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Untuk mengecek hari apa saja yang nilainya positif, R perlu mengecek setiap elemen <code>minggu_kedua<\/code> apakah lebih dari nol. Caranya adalah dengan memberikan perintah, seperti <code>contoh_vektor > 0<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Pengujian elemen-elemen vektor dengan menggunakan perbandingan membuka jalan kita selanjutnya. Kita akan mencari hari-hari di minggu kedua yang nilainya positif, yaitu ketika banyaknya langkah Anda melebihi 10.000. Untuk melakukannya, kita gunakan kode berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>minggu_kedua&#91;minggu_kedua_terpilih]<\/code><\/pre>\n\n\n\n<p>R tahu apa yang akan dilakukan ketika kita menaruh sebuah vektor logika di dalam kurung siku: R akan memilih elemen-elemen <code>minggu_kedua<\/code> yang yang bersesuaian dengan nilai <code>TRUE<\/code> dalam <code>minggu_kedua_terpilih<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.19\">Latihan 1.19<\/p>\n\n\n\n<p>Gunakan vektor <code>minggu_kedua_terpilih<\/code> di dalam tanda kurung siku untuk memilih elemen-elemen <code>minggu_kedua<\/code> yang positif. Jadikan hasilnya sebagai variabel <code>langkahLebih_minggu_kedua<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Apakah setiap harinya langkah Anda melebihi 10.000?\nminggu_kedua_terpilih <- minggu_kedua > 0\n  \n# Hari dalam minggu_kedua yang langkahnya lebih\nlangkahLebih_minggu_kedua <- \n\n<\/code>\n<code data-type=\"solution\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Apakah setiap harinya langkah Anda melebihi 10.000?\nminggu_kedua_terpilih <- minggu_kedua > 0\n  \n# Hari dalam minggu_kedua yang langkahnya lebih\nlangkahLebih_minggu_kedua <- minggu_kedua[minggu_kedua_terpilih]\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah nilai dan penamaan `minggu_pertama` and `minggu_kedua`.\"\nex()  %>% check_object(\"vektor_hari\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\nex() %>% check_object(\"minggu_pertama\",  undefined_msg = msg, ) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua_terpilih\") %>% check_equal(incorrect_msg = \"Jangan mengubah bagaimana `minggu_kedua_terpilih` dihitung.\")\n\nex() %>% check_object(\"langkahLebih_minggu_kedua\") %>% check_equal(incorrect_msg = \"Sepertinya `vektor_langkah_lebih` tidak memuat elemen-elemen yang akurat. Gunakan `minggu_kedua[minggu_kedua_terpilih]`.\")\n\nsuccess_msg(\"Luas biara! Eh, Luar biasa! Mari kita lanjut ke materi berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Gunakan <code>minggu_kedua[minggu_kedua_terpilih]<\/code> untuk memilih elemen-elemen yang diinginkan dari <code>minggu_kedua<\/code>. Jadikan hasilnya sebagai variabel <ccode>vektor_langkah_lebih<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Sebelumnya kita telah memilih hari-hari di minggu kedua yang banyak langkah Anda melebihi target (nilainya positif). Di <a href=\"#latihan-1.20\">Latihan 1.20<\/a>, Anda akan diminta untuk melakukan hal yang sama, tetapi untuk minggu pertama.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.20\">Latihan 1.20<\/p>\n\n\n\n<ul><li>Buatlah variabel <code>minggu_pertama_terpilih<\/code>. Variabel ini untuk menentukan apakah nilai-nilai dalam <code>minggu_pertama<\/code> positif.<\/li><li>Jadikan hasilnya untuk memilih elemen-elemen minggu_pertama yang positif. Simpan hasilnya sebagai variabel <code>langkahLebih_minggu_pertama<\/code>.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Apakah setiap harinya langkah Anda melebihi 10.000?\nminggu_pertama_terpilih <- \n  \n# Pilihlah nilai dari hari-hari dalam minggu_pertama yang lebih\nlangkahLebih_minggu_pertama <- \n\n<\/code>\n<code data-type=\"solution\">\n# Kekurangan\/kelebihan langkah di minggu pertama dan kedua\nminggu_pertama <- c(1205, 823, -340, -541, -259, 662, 1845)\nminggu_kedua <- c(901, 1043, 56, -101, -404, 772, 2410)\nvektor_hari <- c(\"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\", \"Minggu\")\nnames(minggu_pertama) <- vektor_hari\nnames(minggu_kedua) <- vektor_hari\n\n# Apakah setiap harinya langkah Anda melebihi 10.000?\nminggu_pertama_terpilih <- minggu_pertama > 0\n  \n# Pilihlah nilai dari hari-hari dalam minggu_pertama yang lebih\nlangkahLebih_minggu_pertama <- minggu_pertama[minggu_pertama_terpilih]\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah nilai dan penamaan `minggu_pertama` and `minggu_kedua`.\"\nex()  %>% check_object(\"vektor_hari\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\nex() %>% check_object(\"minggu_pertama\",  undefined_msg = msg, ) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_kedua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"minggu_pertama_terpilih\") %>% check_equal(incorrect_msg = \"Sepertinya `minggu_pertama_terpilih` tidak memuat elemen-elemen yang akurat. Gunakan `minggu_pertama > 0`.\")\n\nex() %>% check_object(\"langkahLebih_minggu_pertama\") %>% check_equal(incorrect_msg = \"Sepertinya `vektor_langkah_lebih` tidak memuat elemen-elemen yang tepat. Gunakan `minggu_pertama[minggu_pertama_terpilih]`.\")\n\nsuccess_msg(\"Mantap! Latihan ini merupakan akhir dari subbab ini. Subbab berikutnya akan membahas bentuk dimensi dua dari vektor, yaitu matriks.\")\n<\/code>\n<div data-type=\"hint\">Setelah Anda dapat menghitung <code>minggu_pertama_terpilih<\/code> dengan tepat, Anda dapat menggunakan <code>minggu_pertama[minggu_pertama_terpilih]<\/code> untuk memilih nilai-nilai yang positif dari <code>minggu_pertama<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"kuis-vektor\">Uji Pengetahuan Anda<\/h3>\n\n\n<script>\n                            if (window.qmn_quiz_data === undefined) {\n                                    window.qmn_quiz_data = new Object();\n                            }\n                    <\/script><script>window.qmn_quiz_data[\"2\"] = {\"quiz_id\":\"2\",\"quiz_name\":\"Vektor\",\"disable_answer\":0,\"ajax_show_correct\":0,\"progress_bar\":\"0\",\"contact_info_location\":0,\"qpages\":{\"1\":{\"id\":\"1\",\"quizID\":\"2\",\"pagekey\":\"HJaYXfxg\",\"hide_prevbtn\":\"0\"}},\"skip_validation_time_expire\":0,\"timer_limit_val\":\"0\",\"disable_scroll_next_previous_click\":0,\"disable_first_page\":\"0\",\"enable_result_after_timer_end\":0,\"enable_quick_result_mc\":0,\"end_quiz_if_wrong\":0,\"form_disable_autofill\":0,\"disable_mathjax\":0,\"enable_quick_correct_answer_info\":0,\"quick_result_correct_answer_text\":\"Correct! You have selected correct answer.\",\"quick_result_wrong_answer_text\":\"Wrong! You have selected wrong answer.\",\"quiz_processing_message\":\"\",\"not_allow_after_expired_time\":0,\"scheduled_time_end\":false,\"error_messages\":{\"email_error_text\":\"Not a valid e-mail address!\",\"number_error_text\":\"This field must be a number!\",\"incorrect_error_text\":\"The entered text is not correct!\",\"empty_error_text\":\"Please complete all required fields!\",\"url_error_text\":\"The entered URL is not valid!\",\"minlength_error_text\":\"Required atleast %minlength% characters.\",\"maxlength_error_text\":\"Maximum %maxlength% characters allowed.\"},\"first_page\":false}\n                    <\/script><div class='qsm-quiz-container qsm-quiz-container-2 qmn_quiz_container mlw_qmn_quiz  quiz_theme_default  '>\n\t\t\t\t\t<form name=\"quizForm2\" id=\"quizForm2\" action=\"\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219\" method=\"POST\" class=\"qsm-quiz-form qmn_quiz_form mlw_quiz_form\" novalidate enctype=\"multipart\/form-data\">\n\t\t\t\t<input type=\"hidden\" name=\"qsm_hidden_questions\" id=\"qsm_hidden_questions\" value=\"\">\n\t\t\t\t<div id=\"mlw_error_message\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t<span id=\"mlw_top_of_quiz\"><\/span>\n\t\t\t\t\t\t\t<section class=\"qsm-page \">\n\t\t\t\t\t\t\t\t<div class=\"quiz_section quiz_begin\">\n\t\t\t\t\t\t<div class='qsm-before-message mlw_qmn_message_before'>\n\t\t\t\t<p>Kerjakan soal-soal dalam kuis Vektor berikut dengan tepat!<\/p>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-4 \" data-qid=\"4\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Kode berikut digunakan untuk membuat sebuah vektor v. Lengkapilah kode tersebut! <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p>v = <input type='text' class='qmn_fill_blank ' name='question4[]' \/>(10, 20, 30, 40, 50)<\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-5 \" data-qid=\"5\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Vektor c(0, 3, 5) + c(7, 2, 5) ekuivalen dengan ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question5-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question5\" id=\"question5_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question5_1\">\n\t\t\t\t\tc(0, 6, 15)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question5-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question5\" id=\"question5_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question5_2\">\n\t\t\t\t\tc(10, 5, 7)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question5-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question5\" id=\"question5_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question5_3\">\n\t\t\t\t\tc(7, 5, 10)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question5-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question5\" id=\"question5_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question5_4\">\n\t\t\t\t\tc(5, 5, 12)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question5-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question5\" id=\"question5_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question5_5\">\n\t\t\t\t\tc(0, 2, 5)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question5\" id=\"question5_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-6 \" data-qid=\"6\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Elemen-elemen vektor x akan dinamai dengan vektor y. Kode yang digunakan adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question6-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question6\" id=\"question6_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question6_1\">\n\t\t\t\t\tnames(x) &lt;- y\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question6-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question6\" id=\"question6_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question6_2\">\n\t\t\t\t\tnames(y) &lt;- x\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question6-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question6\" id=\"question6_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question6_3\">\n\t\t\t\t\tnames(x) &lt;- names(y)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question6-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question6\" id=\"question6_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question6_4\">\n\t\t\t\t\tnames(y) &lt;- names(x)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question6-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question6\" id=\"question6_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question6_5\">\n\t\t\t\t\ty &lt;- x\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question6\" id=\"question6_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-7 \" data-qid=\"7\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Hasil penjumlahan semua elemen vektor contoh_vektor dapat ditentukan dengan ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question7-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question7\" id=\"question7_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question7_1\">\n\t\t\t\t\tnames(contoh_vektor)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question7-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question7\" id=\"question7_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question7_2\">\n\t\t\t\t\tcontoh_vektor + contoh_vektor\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question7-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question7\" id=\"question7_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question7_3\">\n\t\t\t\t\tmean(contoh_vektor)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question7-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question7\" id=\"question7_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question7_4\">\n\t\t\t\t\tc(contoh_vektor)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question7-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question7\" id=\"question7_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question7_5\">\n\t\t\t\t\tsum(contoh_vektor)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question7\" id=\"question7_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-8 \" data-qid=\"8\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Kode berikut digunakan untuk memilih elemen kedua sampai kelima dari vektor v. Lengkapilah bagian yang kosong! <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p>v[2<input autocomplete='off' maxlength='5' type='text' class='qmn_fill_blank ' name='question8[]' \/>5]<\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-10 \" data-qid=\"10\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Perhatikan deskripsi berikut. Kode untuk mendapatkan vektor_n adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p>Diberikan vektor_m &lt;- c(9, 11, 15, 10). Anda akan menentukan apakah elemen-elemen vektor_m kurang dari atau sama dengan 10. Hasilnya Anda jadikan sebagai vektor_n.<\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question10-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question10\" id=\"question10_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question10_1\">\n\t\t\t\t\tvektor_n &lt;- vektor_m &lt; 10\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question10-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question10\" id=\"question10_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question10_2\">\n\t\t\t\t\tvektor_m &lt;- vektor_n &lt; 10\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question10-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question10\" id=\"question10_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question10_3\">\n\t\t\t\t\tvektor_m &lt;- vektor_n &lt;= 10\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question10-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question10\" id=\"question10_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question10_4\">\n\t\t\t\t\tvektor_n &lt;- vektor_m &lt;= 10\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question10-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question10\" id=\"question10_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question10_5\">\n\t\t\t\t\tvektor_n = 10\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question10\" id=\"question10_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/section>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_question_list\" value=\"4Q5Q6Q7Q8Q10Q\" \/>\n\t\t\t\t\t\t<div id=\"mlw_error_message_bottom\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_all_questions_count\" id=\"qmn_all_questions_count\" value=\"6\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"total_questions\" id=\"total_questions\" value=\"6\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer\" id=\"timer\" value=\"0\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer_ms\" id=\"timer_ms\" value=\"0\"\/>\n\t\t\t\t\t<input type=\"hidden\" class=\"qmn_quiz_id\" name=\"qmn_quiz_id\" id=\"qmn_quiz_id\" value=\"2\" \/>\n\t\t\t\t\t<input type='hidden' name='complete_quiz' value='confirmation' \/>\n\t\t\t\t\t\t\t\t\t<\/form>\n\t\t<\/div>\n\t\t<div style=\"display: none;\" class=\"qsm-popup qsm-popup-slide\" id=\"modal-4\" aria-hidden=\"false\"><div class=\"qsm-popup__overlay\" tabindex=\"-1\" data-micromodal-close=\"\"><div class=\"qsm-popup__container qmn_quiz_container\" role=\"dialog\" aria-modal=\"true\"><div class=\"qsm-popup__content\"><img src=\"https:\/\/i0.wp.com\/people.usd.ac.id\/~ydkristanto\/wp-content\/plugins\/quiz-master-next\/assets\/clock.png?w=750&#038;ssl=1\" alt=\"clock.png\" data-recalc-dims=\"1\"\/><p class=\"qsm-time-up-text\"> Time's up<\/p><\/div><footer class=\"qsm-popup__footer\"><button class=\"qsm-popup-secondary-button qmn_btn\" data-micromodal-close=\"\" aria-label=\"Close this dialog window\" onclick=\"location.reload();\">Cancel<\/button><\/footer><\/div><\/div><\/div>\n\n\n<!--nextpage-->\n\n\n\n<h2 id=\"matriks\">Matriks<\/h2>\n\n\n\n<p class=\"has-drop-cap\">Di dalam subbab ini, Anda akan bekerja dengan matriks-matriks di R. Secara spesifik, Anda akan belajar bagaimana membuat matriks dan melakukan perhitungan-perhitungan sederhana terhadap matriks tersebut. Untuk melakukannya, Anda akan menganalisis pendapatan dari pemutaran sekuel film The Matrix!<\/p>\n\n\n\n<h3 id=\"apa-matriks\">Selayang Pandang Tentang Matriks<\/h3>\n\n\n\n<p>Di R, matriks adalah kumpulan elemen-elemen yang memiliki jenis data sama (numerik, karakter, atau logika) dan disusun ke dalam baris dan kolom. Karena matriks hanya memiliki baris dan kolom, matriks berdimensi dua.<\/p>\n\n\n\n<p>Kita dapat membuat matriks di R dengan fungsi <code>matrix()<\/code>. Contoh penggunaannya adalah seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>matrix(1:12, nrow = 4, byrow = TRUE)<\/code><\/pre>\n\n\n\n<p>Baris kode tersebut menghasilkan luaran seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>     &#91;,1] &#91;,2] &#91;,3]\n&#91;1,]    1    2    3\n&#91;2,]    4    5    6\n&#91;3,]    7    8    9\n&#91;4,]   10   11   12<\/code><\/pre>\n\n\n\n<p>Luaran tersebut menunjukkan apa makna argumen-argumen yang kita tuliskan di dalam fungsi <code>matrix()<\/code>.<\/p>\n\n\n\n<ul><li>Argumen pertamanya merupakan data yang, oleh R, akan disusun menjadi baris-baris dan kolom-kolom sebuah matriks. Di sini, kita menggunakan data <code>1:12<\/code> yang merupakan bentuk singkat dari <code>c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)<\/code>.<\/li><li>Argumen <code>nrow<\/code> menginformasikan R berapa baris yang seharusnya dibuat. Di contoh ini, <code>nrow = 4<\/code> mengindikasikan bahwa matriks yang dibuat memiliki empat baris.<\/li><li>Argumen ketiga, yaitu <code>byrow<\/code>, mengindikasikan bahwa pengisian matriksnya dilakukan menurut baris-barisnya. Elemen-elemen data kita tersebut secara terurut diisikan ke baris pertama, kedua, dan demikian seterusnya. Jika kita ingin pengisiannya menurut kolom, kita dapat menggantinya menjadi <code>byrow = FALSE<\/code>.<\/li><\/ul>\n\n\n\n<p>Sekarang, silakan kerjakan <a href=\"#latihan-1.21\">Latihan 1.21<\/a> berikut untuk berlatih membuat sebuah matriks.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.21\">Latihan 1.21<\/p>\n\n\n\n<p>Buatlah sebuah matriks yang memiliki tiga baris dan memuat bilangan bulat mulai dari 1 sampai 9, serta pengisiannya menurut baris.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Buat sebuah matriks 3 baris dan berisi bilangan 1 sampai 9\n\n\n<\/code>\n<code data-type=\"solution\">\n# Buat sebuah matriks 3 baris dan berisi bilangan 1 sampai 9\nmatrix(1:9, nrow = 3, byrow = TRUE)\n\n<\/code>\n<code data-type=\"sct\">\nex() %&gt;% check_function(\"matrix\") %&gt;% {\n\tcheck_arg(., 'data') %&gt;% check_equal(incorrect_msg = \"Apakah Anda sudah membuat matriksnya dengan benar? Cermati kembali perintah soalnya!\")\n\tcheck_arg(., 'byrow') %&gt;% check_equal(incorrect_msg = \"Apakah Anda sudah membuat matriksnya dengan benar? Cermati kembali perintah soalnya!\")\n\tcheck_arg(., 'nrow') %&gt;% check_equal(incorrect_msg = \"Apakah Anda sudah membuat matriksnya dengan benar? Cermati kembali perintah soalnya!\")\n\t}\n\nex() %&gt;% check_output_expr(\"matrix(1:9, nrow=3, byrow=TRUE)\",missing_msg = \"Sepertinya ada masalah dengan pendefinisian matriksnya. Silakan periksa kembali perintah soalnya!\")\n\nsuccess_msg(\"Awal yang hebat! Ayo semangat lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Fungsi yang digunakan untuk membuat sebuah matriks adalah <code>matrix()<\/code>. Argumen-argumen yang perlu diisi adalah <code>data<\/code>, <code>nrow<\/code>, dan <code>byrow<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"menganalisis-matriks\">Menganalisis Matriks<\/h3>\n\n\n\n<p>Sekarang saatnya Anda bekerja dengan data nyata! Di bagian ini, Anda akan diajak untuk menganalisis pendapatan sekuel film The Matrix dengan menggunakan matriks.<\/p>\n\n\n\n<p>Pada editor dalam <a href=\"#latihan-1.22\">Latihan 1.22<\/a>, Anda diberikan dua vektor. Masing-masing merepresentasikan pendapatan dua film pertama dari sekuel The Matrix (yaitu The Matrix dan The Matrix Reloaded). Elemen pertama dari tiap-tiap vektor tersebut menunjukkan pendapatan dari pemutaran di Amerika Serikat (AS) sedangkan elemen keduanya menunjukkan pendapatan dari pemutaran internasional (non-AS). Sumber datanya dari <a rel=\"noreferrer noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/The_Matrix_(franchise)#Box_office_performance\" target=\"_blank\">Wikipedia<\/a>.<\/p>\n\n\n\n<p>Di latihan tersebut, Anda perlu menyatukan semuanya ke dalam sebuah vektor dan menjadikannya sebagai sebuah matriks.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.22\">Latihan 1.22<\/p>\n\n\n\n<ul><li>Gunakan <code>c(the_matrix, the_matrix_reloaded)<\/code> untuk menggabung dua vektor menjadi sebuah vektor. Namai hasilnya menjadi <code>box_office<\/code>.<\/li><li>Buatlah sebuah matriks 3 baris sehingga tiap-tiap barisnya merepresentasikan sebuah film. Gunakan <code>matrix()<\/code> untuk melakukannya. Argumen pertamanya adalah vektor <code>box_office<\/code> yang memuat pendapatan semua filmnya. Berikutnya, aturlah <code>nrow = 2<\/code> dan <code>byrow = TRUE<\/code>. Namai hasilnya dengan <code>matriks_the_matix<\/code>.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Pendapatan sekuel The Matrix (dalam jutaan dolar AS!)\nthe_matrix <- c(172.077, 295.146)\nthe_matrix_reloaded <- c(281.576, 460.271)\n\n# Buatlah vektor box_office\nbox_office <- \n\n# Buatlah matriks_the_matrix\nmatriks_the_matrix <- \n\n<\/code>\n<code data-type=\"solution\">\n# Pendapatan sekuel The Matrix (dalam jutaan dolar AS!)\nthe_matrix <- c(172.077, 295.146)\nthe_matrix_reloaded <- c(281.576, 460.271)\n\n# Buatlah vektor box_office\nbox_office <- c(the_matrix, the_matrix_reloaded)\n\n# Buatlah matriks_the_matrix\nmatriks_the_matrix <- matrix(box_office, nrow = 2, byrow = TRUE)\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengganti apapun pada variabel film `the_matrix` dan `the_matrix_reloaded`!\"\n\nex() %>% check_object(\"the_matrix\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"the_matrix_reloaded\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"box_office\") %>% check_equal(incorrect_msg = \"Apakah Anda sudah dengan benar menggabungkan `the_matrix` dan `the_matrix_reloaded` menjadi vektor `box_office`?\")\n\nex() %>% check_function(\"matrix\") %>% {\n\tcheck_arg(., 'data') %>% check_equal(incorrect_msg = \"Pastikan memasukkan argumen-argumen yang tepat untuk `matrix()`: `box_office`, `nrow = 2`, `by_row = TRUE`.\")\n\tcheck_arg(., 'nrow') %>% check_equal(incorrect_msg = \"Pastikan memasukkan argumen-argumen yang tepat untuk `matrix()`: `box_office`, `nrow = 2`, `by_row = TRUE`.\")\n\tcheck_arg(., 'byrow') %>% check_equal(incorrect_msg = \"Pastikan memasukkan argumen-argumen yang tepat untuk `matrix()`: `box_office`, `nrow = 2`, `by_row = TRUE`.\")\n\t}\n\nex() %>% check_object(\"matriks_the_matrix\") %>% check_equal(incorrect_msg = \"Apakah Anda sudah menggunakan hasil dari `matrix()` untuk membuat `matriks_the_matrix`?\")\n\n\nsuccess_msg(\"Jempol! Ayo lanjutkan ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Pertama, <code>box_office <- c(the_matrix, the_matrix_reloaded)<\/code> akan menggabungkan semua nilai dalam vektor-vektor tersebut menjadi sebuah vektor dengan 4 elemen. Kedua, <code>matrix(box_office, nrow = ..., byrow = ...)<\/code> merupakan templat untuk perintah berikutnya.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"menamai-matriks\">Menamai Sebuah Matriks<\/h3>\n\n\n\n<p>Agar kita mudah mengingat apa saja yang terdapat dalam <code>matriks_the_matrix<\/code>, kita perlu memberikan nama baris-barisnya sebagai nama-nama film yang sesuai. Tak hanya memudahkan saja, penamaan tersebut juga bermanfaat ketika kita ingin memilih elemen-elemen matriks tersebut.<\/p>\n\n\n\n<p>Serupa dengan vektor, kita dapat menamai baris dan kolom sebuah matriks. Templat perintah yang digunakan adalah seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>rownames(matriks_ku) &lt;- vektor_nama_baris\ncolnames(matriks_ku) &lt;- vektor_nama_kolom<\/code><\/pre>\n\n\n\n<p>Di <a href=\"#latihan-1.23\">Latihan 1.23<\/a>, saya telah menyiapkan dua vektor untuk Anda: <code>judul<\/code> dan <code>wilayah<\/code>. Anda akan memerlukan kedua vektor tersebut untuk menamai baris-baris dan kolom-kolom <code>matriks_the_matrix<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.23\">Latihan 1.23<\/p>\n\n\n\n<ul><li>Gunakan <code>rownames()<\/code> untuk menamai baris-baris <code>matriks_the_matrix<\/code> dengan vektor judul.<\/li><li>Gunakan <code>colnames()<\/code> untuk memberikan nama kolom-kolom <code>matriks_the_matrix<\/code> dengan vektor wilayah.<\/li><li>Tampilkan <code>matriks_the_matrix<\/code> untuk melihat hasilnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Pendapatan sekuel The Matrix (dalam jutaan dolar AS!)\nthe_matrix <- c(172.077, 295.146)\nthe_matrix_reloaded <- c(281.576, 460.271)\n\n# Membuat matriks\nmatriks_the_matrix <- matrix(c(the_matrix, the_matrix_reloaded), nrow = 2, byrow = TRUE)\n\n# Vektor-vektor judul dan wilayah untuk penamaan\njudul <- c(\"The Matrix\", \"The Matrix Reloaded\")\nwilayah <- c(\"AS\", \"non-AS\")\n\n# Namai baris-barisnya dengan judul\n\n\n# Namai kolom-kolomya dengan wilayah\n\n\n# Tampilkan matriks akhirnya\n\n\n<\/code>\n<code data-type=\"solution\">\n# Pendapatan sekuel The Matrix (dalam jutaan dolar AS!)\nthe_matrix <- c(172.077, 295.146)\nthe_matrix_reloaded <- c(281.576, 460.271)\n\n# Membuat matriks\nmatriks_the_matrix <- matrix(c(the_matrix, the_matrix_reloaded), nrow = 2, byrow = TRUE)\n\n# Vektor-vektor judul dan wilayah untuk penamaan\njudul <- c(\"The Matrix\", \"The Matrix Reloaded\")\nwilayah <- c(\"AS\", \"non-AS\")\n\n# Namai baris-barisnya dengan judul\nrownames(matriks_the_matrix) <- judul\n\n# Namai kolom-kolomya dengan wilayah\ncolnames(matriks_the_matrix) <- wilayah\n\n# Tampilkan matriks akhirnya\nmatriks_the_matrix\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengganti apapun pada variabel film `the_matrix` dan `the_matrix_reloaded`!\"\n\nex() %>% check_object(\"the_matrix\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"the_matrix_reloaded\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nmsg <- \"Jangan mengubah isi `matriks_the_matrix`; fokuslah pada baris-baris dan kolom-kolomnya!\"\n\nex()  %>% check_object(\"matriks_the_matrix\") %>% check_equal(incorrect_msg = msg)\n\nmsg <- \"Jangan mengganti apapun tentang vektor-vektor `judul` dan `wilayah` yang sudah didefinisikan untuk Anda.\"\n\nex()  %>% check_object(\"judul\", undefined_msg = msg)  %>%  check_equal(incorrect_msg = msg)\nex() %>% check_object(\"wilayah\", undefined_msg = msg) %>% check_equal( incorrect_msg = msg)\n\nex() %>% check_object(\"matriks_the_matrix\") %>% check_equal(eq_condition = \"equal\",incorrect_msg = \"Apakah Anda sudah mengatur nama baris dan kolom `matriks_the_matrix` dengan benar? Gunakan `rownames(matriks_the_matrix) <- judul` untuk nama baris-barisnya; lakukan hal yang sama untuk kolom-kolomnya.\")\n\nex() %>% check_output_expr(\"matriks_the_matrix\", missing_msg = \"Jangan lupa menampilkan `matriks_the_matrix` setelah Anda menamai baris-baris dan kolom-kolomnya.\")\n\n\nsuccess_msg(\"Hebat! Silakan beranjak ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Anda dapat menggunakan <code>rownames(matriks_the_matrix) <- judul<\/code> untuk menamai baris-baris <code>matriks_the_matrix<\/code>. Lakukan hal yang sama untuk menamai kolom-kolomnya.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"pendapatan-film\">Menghitung Pendapatan Total Setiap Film<\/h3>\n\n\n\n<p>Dari hasil latihan sebelumnya, kita mendapatkan <code>matriks_the_matrix<\/code> seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>                         AS  non-AS\nThe Matrix          172.077 295.146\nThe Matrix Reloaded 281.576 460.271<\/code><\/pre>\n\n\n\n<p>Bagaimana kita mengetahui pendapatan total setiap filmnya? Caranya adalah dengan menjumlahkan pendapatan dari pemutaran di AS dan non-AS untuk setiap filmnya. Dengan kata lain, kita perlu menjumlahkan semua nilai di setiap barisnya.<\/p>\n\n\n\n<p>Di R, fungsi <code>rowSums()<\/code> dapat digunakan untuk menentukan jumlah total setiap baris dari sebuah matriks. Fungsi ini menghasilkan sebuah vektor.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>rowSums(matriks_ku)<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.24\">Latihan 1.24<\/p>\n\n\n\n<p>Hitunglah pendapatan total untuk kedua film dan jadikan hasilnya sebagai vektor <code>pendapatan_total_film<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Membuat matriks_the_matrix\nbox_office <- c(172.077, 295.146, 281.576, 460.271)\njudul <- c(\"The Matrix\", \"The Matrix Reloaded\")\nwilayah <- c(\"AS\", \"non-AS\")\nmatriks_the_matrix <- matrix(box_office, nrow = 2, byrow = TRUE, dimnames = list(judul, wilayah))\n\n# Menghitung pendapatan total\npendapatan_total_film <- \n\n<\/code>\n<code data-type=\"solution\">\n# Membuat matriks_the_matrix\nbox_office <- c(172.077, 295.146, 281.576, 460.271)\njudul <- c(\"The Matrix\", \"The Matrix Reloaded\")\nwilayah <- c(\"AS\", \"non-AS\")\nmatriks_the_matrix <- matrix(box_office, nrow = 2, byrow = TRUE, dimnames = list(judul, wilayah))\n\n# Menghitung pendapatan total\npendapatan_total_film <- rowSums(matriks_the_matrix)\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengubah apapun dalam variabel-variabel `box_office` dan `matriks_the_matrix`!\"\n\nex() %>% check_object(\"box_office\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"matriks_the_matrix\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"pendapatan_total_film\") %>% check_equal(incorrect_msg = \"Gunakan `rowSums()` terhadap `matriks_the_matrix` dan jadikan hasilnya sebagai `pendapatan_total_film`.\")\n\nsuccess_msg(\"Bagus! Silakan lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Perintah <code>rowSums(matriks_the_matrix)<\/code> menjumlahkan semua nilai dalam setiap baris, sehingga dapat digunakan untuk menghitung pendapatan total kedua film.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"menyisipkan-kolom\">Menyisipkan Kolom<\/h3>\n\n\n\n<p>Di latihan sebelumnya, Anda telah membuat sebuah vektor pendapatan total untuk setiap film. Meskipun demikian, vektor tersebut belum menjadi bagian dari <code>matriks_the_matrix<\/code>.<\/p>\n\n\n\n<p>Kita dapat menggunakan fungsi <code>cbind()<\/code> untuk menggabungkan sebuah matriks dengan vektor atau matriks lain, menurut kolomnya. Contohnya adalah seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>matriks_besar &lt;- cbind(matriks1, matriks2,\n                       vektor1 ...)<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.25\">Latihan 1.25<\/p>\n\n\n\n<p>Sisipkan <code>pendapatan_total_film<\/code> ke <code>matriks_the_matrix<\/code> sebagai kolom baru. Buatlah hasilnya sebagai <code>the_matrix_total<\/code>. Gunakan fungsi <code>cbind()<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Membuat matriks_the_matrix\nbox_office <- c(172.077, 295.146, 281.576, 460.271)\njudul <- c(\"The Matrix\", \"The Matrix Reloaded\")\nwilayah <- c(\"AS\", \"non-AS\")\nmatriks_the_matrix <- matrix(box_office, nrow = 2, byrow = TRUE, dimnames = list(judul, wilayah))\n\n# Menghitung pendapatan total\npendapatan_total_film <- rowSums(matriks_the_matrix)\n\n# Sisipkan kolom ke matriks_the_matrix\nthe_matrix_total <- \n\n<\/code>\n<code data-type=\"solution\">\n# Membuat matriks_the_matrix\nbox_office <- c(172.077, 295.146, 281.576, 460.271)\njudul <- c(\"The Matrix\", \"The Matrix Reloaded\")\nwilayah <- c(\"AS\", \"non-AS\")\nmatriks_the_matrix <- matrix(box_office, nrow = 2, byrow = TRUE, dimnames = list(judul, wilayah))\n\n# Menghitung pendapatan total\npendapatan_total_film <- rowSums(matriks_the_matrix)\n\n# Sisipkan kolom ke matriks_the_matrix\nthe_matrix_total <- cbind(matriks_the_matrix, pendapatan_total_film)\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengubah apapun terhadap `box_office` dan `matriks_the_marix`!\"\nex() %>% check_object(\"box_office\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"matriks_the_matrix\", undefined_msg = msg) %>% check_equal(, incorrect_msg = msg)\n\nex() %>% check_object(\"pendapatan_total_film\") %>% check_equal(incorrect_msg = \"Jadikan hasil `rowSums(matriks_the_matrix)` sebagai `pendapatan_total_film`.\")\n\nmsg <- \"Apakah Anda sudah dengan benar menggunakan `cbind()` untuk menambahkan `pendapatan_total_film` kepada `matriks_the_matrix`? Anda harus menginputkan `matriks_the_matrix` dan `pendapatan_total_film` secara terurut ke dalam `cbind()`. Matriks yang dihasilkan, `the_matrix_total`, seharusnya berisi dua baris dan tiga kolom.\"\nex() %>% check_object(\"the_matriks_total\") %>% check_equal(incorrect_msg = msg)\n\nsuccess_msg(\"Mantap! Setelah menambahkan kolom ke matriks, kita selanjutnya akan belajar bagaimana menambahkan baris. Ayo lanjut ke bagian berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Anda harus menginputkan dua variabel berikut ke <code>cbind()<\/code>: <code>matriks_the_matrix<\/code> dan <code>pendapatan_total_film<\/code>, secara terurut. Jadikan hasilnya sebagai <code>the_matrix_total<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"menyisipkan-baris\">Menyisipkan Baris<\/h3>\n\n\n\n<p>Sejauh ini, kita menggunakan dua judul film dari sekuel The Matrix. Padahal ketika tutorial ini ditulis, sekuel tersebut terdiri dari empat film. Dua film yang belum kita gunakan adalah The Matrix Revolutions dan The Matrix Resurrections. Oleh karena itu, kita akan menambahkan pendapatan yang dihasilkan oleh kedua film tersebut.<\/p>\n\n\n\n<p>Untuk melakukannya, kita perlu menambahkan baris ke dalam matriks yang telah kita buat sebelumnya, <code>matriks_the_matrix,<\/code> dengan pendapatan dua film berikutnya.<\/p>\n\n\n\n<p>Di R, fungsi <code>rbind()<\/code> bisa digunakan untuk menambahkan baris ke sebuah matriks. Contohnya adalah seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>rbind(matriks1, matriks2)<\/code><\/pre>\n\n\n\n<p>Editor dalam Latihan 1.26 telah memuat dua matriks, <code>matriks_the_matrix<\/code> dan <code>matriks_the_matrix2<\/code>, yang telah didefinisikan sebelumnya dan disediakan untuk Anda. Dengan demikian, Anda langsung dapat menggunakan kedua matriks tersebut. Berikut ini informasi mengenai kedua matriks tersebut.<\/p>\n\n\n\n<ul><li><code>matriks_the_matrix<\/code> adalah matriks yang telah kita buat dan gunakan sebelumnya.<\/li><li><code>matriks_the_matrix2<\/code> berisi pendapatan yang dihasilkan dari dua film The Matrix berikutnya.<\/li><\/ul>\n\n\n\n<p>Anda dapat mengeksplorasi kedua matriks tersebut di dalam console agar dapat melihat elemen-elemennya dengan jelas.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.26\">Latihan 1.26<\/p>\n\n\n\n<p>Gunakan <code>rbind()<\/code> untuk menggabungkan <code>matriks_the_matrix<\/code> dan <code>matriks_the_matrix2<\/code> menurut barisnya, dengan urutan seperti itu. Jadikan hasilnya sebagai <code>the_matrix_semua<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Membuat matriks_the_matrix\nbox_office <- c(172.077, 295.146, 281.576, 460.271)\njudul <- c(\"The Matrix\", \"The Matrix Reloaded\")\nwilayah <- c(\"AS\", \"non-AS\")\nmatriks_the_matrix <- matrix(box_office, nrow = 2, byrow = TRUE, dimnames = list(judul, wilayah))\n\n# Membuat matriks_the_matrix2\nbox_office2 <- c(139.314, 288.03, 37.687, 119.611)\njudul2 <- c(\"The Matrix Revolutions\", \"The Matrix Resurrections\")\nmatriks_the_matrix2 <- matrix(box_office2, nrow = 2, byrow = TRUE, dimnames = list(judul2, wilayah))\n\n# remove all except all_wars_matrix\nrm(box_office)\nrm(judul)\nrm(wilayah)\nrm(box_office2)\nrm(judul2)\n<\/code>\n<code data-type=\"sample-code\">\n# matriks_the_matrix dan matriks_the_matrix2 telah tersedia\nmatriks_the_matrix\nmatriks_the_matrix2\n\n# Gabung kedua matriks tersebut menurut barisnya\nthe_matrix_semua <- \n\n<\/code>\n<code data-type=\"solution\">\n# matriks_the_matrix dan matriks_the_matrix2 telah tersedia\nmatriks_the_matrix\nmatriks_the_matrix2\n\n# Gabung kedua matriks tersebut menurut barisnya\nthe_matrix_semua <- rbind(matriks_the_matrix, matriks_the_matrix2)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menimpa (membuat kembali) variabel-variabel yang telah disediakan untuk Anda (`matriks_the_matrix` dan `matriks_the_matrix2`).\"\nex() %>% check_object(\"matriks_the_matrix\",  undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"matriks_the_matrix2\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nex() %>% check_object(\"the_matrix_semua\") %>% check_equal(incorrect_msg = \"Apakah Anda menggunakan `rbind()` dengan benar untuk membuat `the_matrix_semua`? Fungsi `rbind()` secara terurut perlu dua argumen ini, `matriks_the_matrix` dan `matriks_the_matrix2`.\")\n\nsuccess_msg(\"Luar biasa! Berikutnya kita akan belajar tentang fungsi `colSums()`. Ayo lanjutkan!\")\n<\/code>\n<div data-type=\"hint\">Gabungkan kedua matriks menurut barisnya seperti ini: <code>rbind(matriks1, matriks2)<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Menghitung Pendapatan Total<\/h3>\n\n\n\n<p>Di <a href=\"#pendapatan-film\">bagian sebelumnya<\/a>, Anda telah dapat menjumlahkan semua nilai yang terdapat di tiap-tiap baris dengan menggunakan <code>rowSums()<\/code>. Apakah kita dapat menjumlahkan semua nilai dalam kolom? Bisa!<\/p>\n\n\n\n<p>Kita dapat menjumlahkan semua nilai dalam kolom-kolom sebuah matriks dengan fungsi <code>colSums()<\/code>. Fungsi ini akan kita gunakan untuk menghitung pendapatan total sekuel The Matrix dari AS dan non-AS.<\/p>\n\n\n\n<p>Editor dalam Latihan 1.27 telah menyediakan matriks <code>the_matrix_semua<\/code> untuk Anda. Silakan tikkan nama matriks ini untuk mengeksplorasinya.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.27\">Latihan 1.27<\/p>\n\n\n\n<ul><li>Hitunglah pendapatan total untuk wilayah AS dan non-AS, kemudian jadikan hasilnya sebagai <code>pendapatan_total_wilayah<\/code>. Anda dapat menggunakan fungsi <code>colSums()<\/code>.<\/li><li>Tampilkan <code>pendapatan_total_wilayah<\/code> untuk mencermati hasilnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Membuat the_matriks_semua\nbox_office_semua <- c(172.077, 295.146, 281.576, 460.271, 139.314, 288.03, 37.687, 119.611)\njudul_semua <- c(\"The Matrix\", \"The Matrix Reloaded\", \"The Matrix Revolutions\", \"The Matrix Resurrections\")\nwilayah <- c(\"AS\", \"non-AS\")\nthe_matrix_semua <- matrix(box_office_semua, nrow = 4, byrow = TRUE, dimnames = list(judul_semua, wilayah))\n\n# Hapus objek\nrm(box_office_semua)\nrm(judul_semua)\nrm(wilayah)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Matriks the_matrix_semua telah tersedia untuk Anda\nthe_matrix_semua\n\n# Pendapatan total untuk AS dan non-AS\npendapatan_total_wilayah <- \n  \n# Tampilkan pendapatan_total_wilayah\n\n\n<\/code>\n<code data-type=\"solution\">\n# Matriks the_matrix_semua telah tersedia untuk Anda\nthe_matrix_semua\n\n# Pendapatan total untuk AS dan non-AS\npendapatan_total_wilayah <- colSums(the_matrix_semua)\n  \n# Tampilkan pendapatan_total_wilayah\npendapatan_total_wilayah\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengganti isi dari `the_matrix_semua`! Itu telah disediakan untuk Anda.\"\nex() %>% check_object(\"the_matrix_semua\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\", incorrect_msg = msg)\n\nex() %>% check_function(\"colSums\") %>% check_arg('x') %>% check_equal(incorrect_msg = \"Apakah Anda menggunakan fungsi `colSums()` terhadap `the_matrix_semua`?\")\n\nex() %>% check_object(\"pendapatan_total_wilayah\") %>% check_equal(incorrect_msg = \"Apakah Anda dengan benar menjadikan hasil `colSums(the_matrix_semua)` sebagai `pendapatan_total_wilayah`?\")\n\nex() %>% check_output_expr(\"pendapatan_total_wilayah\", missing_msg = \"Jangan lupa untuk menampilkan `pendapatan_total_wilayah`!\")\n\nsuccess_msg(\"Bellissimo! Lanjut ke pembahasan berikutnya untuk belajar tentang pemilihan elemen-elemen matriks.\")\n<\/code>\n<div data-type=\"hint\">Gunakan <code>colSums()<\/code> dengan argumen <code>the_matrix_semua<\/code> untuk menghitung total pendapatan setiap wilayahnya.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Pemilihan Elemen-Elemen Matriks<\/h3>\n\n\n\n<p>Seperti halnya vektor, kita juga dapat memilih elemen-elemen sebuah matriks dengan menggunakan tanda kurung siku <code>[ ]<\/code>. Bedanya dengan vektor, matriks berdimensi dua sehingga kita perlu memberikan identitas baris dan kolom di dalam tanda kurung untuk memilih elemen-elemennya. Identitas baris dan kolom tersebut perlu ditulis secara terurut dan dipisahkan dengan tanda koma. Contohnya seperti ini.<\/p>\n\n\n\n<ul><li><code>matriks_ku[1, 2]<\/code> memilih elemen pada baris pertama dan kolom kedua.<\/li><li><code>matriks_ku[1:3, 4:7]<\/code> menghasilkan sebuah matriks yang datanya merupakan data dari baris 1, 2, 3 dan kolom 4, 5, 6, 7 dalam <code>matriks_ku<\/code>.<\/li><\/ul>\n\n\n\n<p>Jika Anda ingin memilih semua elemen dalam baris atau kolom dari suatu matriks, Anda tidak perlu menuliskan bilangan sebelum atau setelah tanda koma. Misalnya seperti ini.<\/p>\n\n\n\n<ul><li><code>matriks_ku[1, ]<\/code> memilih semua elemen dalam baris pertama.<\/li><li><code>matriks_ku[ , 4:6]<\/code> memilih semua elemen dalam kolom keempat, kelima, dan keenam.<\/li><\/ul>\n\n\n\n<p>Nah, sekarang kita kembali ke data pendapatan sekuel film The Matrix, <code>the_matrix_semua<\/code>. Matriks tersebut telah disiapkan dalam editor pada Latihan 1.28.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.28\">Latihan 1.28<\/p>\n\n\n\n<ul><li>Pilihlah pendapatan dari wilayah non-AS untuk semua film (semua elemen kolom kedua dari <code>the_matrix_semua<\/code>), jadikan hasilnya sebagai <code>non_as_semua<\/code>.<\/li><li>Gunakan fungsi <code>mean()<\/code> untuk menghitung rerata pendapatan dari wilayah non-AS untuk semua film. Tampilkan hasilnya.<\/li><li>Sekarang, pilihlah pendapatan dari wilayah non-AS hanya untuk dua film pertama dari <code>the_matrix_semua<\/code>. Simpan hasilnya sebagai <code>non_as_beberapa<\/code>.<\/li><li>Gunakan <code>mean()<\/code> untuk menentukan rerata nilai-nilai dalam <code>non_as_beberapa<\/code>.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Membuat the_matriks_semua\nbox_office_semua <- c(172.077, 295.146, 281.576, 460.271, 139.314, 288.03, 37.687, 119.611)\njudul_semua <- c(\"The Matrix\", \"The Matrix Reloaded\", \"The Matrix Revolutions\", \"The Matrix Resurrections\")\nwilayah <- c(\"AS\", \"non-AS\")\nthe_matrix_semua <- matrix(box_office_semua, nrow = 4, byrow = TRUE, dimnames = list(judul_semua, wilayah))\n\n# Hapus objek\nrm(box_office_semua)\nrm(judul_semua)\nrm(wilayah)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Matriks the_matrix_semua telah tersedia untuk Anda\nthe_matrix_semua\n\n# Pilih pendapatan non-AS untuk semua film\nnon_as_semua <- \n  \n# Rerata pendapatan non-AS\n\n  \n# Pilih pendapatan non-AS untuk dua film pertama\nnon_as_beberapa <- \n  \n# Rerata pendapatan non-AS untuk dua film pertama\n\n\n<\/code>\n<code data-type=\"solution\">\n# Matriks the_matrix_semua telah tersedia untuk Anda\nthe_matrix_semua\n\n# Pilih pendapatan non-AS untuk semua film\nnon_as_semua <- the_matrix_semua[, 2]\n  \n# Rerata pendapatan non-AS\nmean(non_as_semua)\n  \n# Pilih pendapatan non-AS untuk dua film pertama\nnon_as_beberapa <- the_matrix_semua[1:2, 2]\n  \n# Rerata pendapatan non-AS untuk dua film pertama\nmean(non_as_beberapa)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengganti isi dari `the_matrix_semua`. Matriks ini telah disediakan untuk Anda.\"\n\nex() %>% check_object(\"the_matrix_semua\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"non_as_semua\") %>% check_equal(incorrect_msg = \"Apakah Anda sudah memberikan semua nilai kolom kedua `the_matrix_semua` kepada `non_as_semua`? Anda dapat menggunakan `[, 2]` untuk melakukannya!\")\n\nex() %>% check_output_expr(\"mean(non_as_semua)\", missing_msg = \"Apakah Anda sudah menghitung rerata `non_as_semua` dengan menggunakan `mean(non_as_semua)`? Tampilkan hasilnya.\")\n\nex() %>% check_object(\"non_as_beberapa\") %>% check_equal(incorrect_msg = \"Apakah Anda sudah memberikan nilai-nilai baris pertama dan kedua dan kolom kedua `the_matrix_semua` kepada `non_as_beberapa`? Anda dapat menggunakan `[1:2, 2]` untuk melakukannya!\")\n\nex() %>% check_output_expr(\"mean(non_as_beberapa)\", missing_msg = \"Apakah Anda sudah menghitung rerata `non_as_beberapa` dengan menggunakan `mean(non_as_beberapa)`? Tampilkan hasilnya.\")\n\nsuccess_msg(\"Bagus! Lanjut ke pembelajaran berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Anda dapat memilih semua nilai dari baris kedua <code>matriks_ku<\/code> dengan <code>matriks_ku[, 2]<\/code><\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Operasi Aritmetika pada Matriks<\/h3>\n\n\n\n<p>Kita dapat melakukan operasi-operasi aritmetika, seperti <code>+<\/code>, <code>-<\/code>, <code>*<\/code>, dan <code>\/<\/code>, terhadap matriks. Misalnya, kita dapat mengalikan 2 dan semua elemen <code>matriks_ku<\/code> dengan perintah <code>2 * matriks_ku<\/code>.<\/p>\n\n\n\n<p>Kembali ke sekuel The Matrix. Dengan <code>the_matrix_semua<\/code> kita dapat mengetahui pendapatan dari semua film dalam sekuel tersebut. Sekarang kita akan memperkirakan berapa banyak orang yang menontoh film-film tersebut. Dengan menganggap harga setiap tiketnya 5 dolar AS, banyak penontonnya (dalam jutaan) dapat ditentukan dengan membagi <code>the_matrix_semua<\/code> dengan 5.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.29\">Latihan 1.29<\/p>\n\n\n\n<ul><li>Carilah banyaknya penonton (dalam jutaan) dengan membagi <code>the_matrix_semua<\/code> dengan 5. Jadikan hasilnya sebagai <code>penonton<\/code>.<\/li><li>Tampilkan <code>penonton<\/code> agar dapat diamati nilai-nilainya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Membuat the_matriks_semua\nbox_office_semua <- c(172.077, 295.146, 281.576, 460.271, 139.314, 288.03, 37.687, 119.611)\njudul_semua <- c(\"The Matrix\", \"The Matrix Reloaded\", \"The Matrix Revolutions\", \"The Matrix Resurrections\")\nwilayah <- c(\"AS\", \"non-AS\")\nthe_matrix_semua <- matrix(box_office_semua, nrow = 4, byrow = TRUE, dimnames = list(judul_semua, wilayah))\n\n# Hapus objek\nrm(box_office_semua)\nrm(judul_semua)\nrm(wilayah)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Matriks the_matrix_semua telah tersedia untuk Anda\nthe_matrix_semua\n\n# Perkirakan banyaknya penonton (dalam jutaan)\npenonton <- \n  \n# Tampilkan matriks penonton\n\n\n<\/code>\n<code data-type=\"solution\">\n# Matriks the_matrix_semua telah tersedia untuk Anda\nthe_matrix_semua\n\n# Perkirakan banyaknya penonton (dalam jutaan)\npenonton <- the_matrix_semua \/ 5\n  \n# Tampilkan matriks penonton\npenonton\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengganti isi dari `the_matrix_semua`. Matriks ini telah disediakan untuk Anda.\"\n\nex() %>% check_object(\"the_matrix_semua\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"penonton\") %>% check_equal(incorrect_msg = \"Sepertinya matriks `penonton` masih kurang tepat. Bagilah `the_matrix_semua` dengan 5 dan simpan hasilnya sebagai matriks `penonton`.\")\n\nex() %>% check_output_expr(\"penonton\", missing_msg = \"Jangan lupa untuk menampilkan `penonton` agar Anda bisa mencermatinya.\")\n\nsuccess_msg(\"Hebat! Apa yang menarik perhatian Anda? Begitu banyak orang internasional, sekitar 92 juta, yang menonton The Matrix Reloaded! Silakan lanjut ke bagian berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Pembagian matriks dengan sebuah bilangan dapat dilakukan dengan operator <code>\/<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Di <a href=\"#latihan-1.29\">Latihan 1.29<\/a>, kita mengasumsikan bahwa harga tiket setiap filmnya sama. Karena film-film tersebut dirilis pada waktu yang berbeda-beda, tentu harga tiketnya bisa berbeda-beda pula. Harga tiket dapat naik seiring berjalannya waktu.<\/p>\n\n\n\n<p>Sekarang kita buat sebuah matriks <code>harga_tiket<\/code> yang elemen-elemennya ditunjukkan seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>                          AS non-AS\nThe Matrix               4.0    4.0\nThe Matrix Reloaded      4.5    4.5\nThe Matrix Revolutions   5.4    5.4\nThe Matrix Resurrections 6.0    6.0<\/code><\/pre>\n\n\n\n<p>Banyaknya penonton (dalam jutaan) dapat ditentukan dengan membagi <code>the_matriks_semua<\/code> dengan <code>harga_tiket<\/code>. Pembagian ini menghasilkan sebuah matriks yang elemen-elemennya merupakan hasil pembagian setiap elemen matriks pertama dengan elemen yang bersesuaian dari matriks kedua.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.30\">Latihan 1.30<\/p>\n\n\n\n<ul><li>Perkirakan banyaknya penonton AS dan non-AS untuk semua film dengan membagi <code>the_matrix_semua<\/code> dengan <code>harga_tiket<\/code>. Buatlah hasilnya menjadi matriks <code>penonton_baru<\/code>.<\/li><li>Dari matriks <code>penonton_baru<\/code>, pilihlah semua elemen kolom kedua, yang merupakan banyak penonton internasional (non-AS). Simpan hasilnya menjadi <code>penonton_baru_int<\/code>.<\/li><li>Hitunglah rerata banyaknya penonton internasional dan tampilkan hasilnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Membuat the_matriks_semua dan harga_tiket\nbox_office_semua <- c(172.077, 295.146, 281.576, 460.271, 139.314, 288.03, 37.687, 119.611)\njudul_semua <- c(\"The Matrix\", \"The Matrix Reloaded\", \"The Matrix Revolutions\", \"The Matrix Resurrections\")\nwilayah <- c(\"AS\", \"non-AS\")\nthe_matrix_semua <- matrix(box_office_semua, nrow = 4, byrow = TRUE,\n                           dimnames = list(judul_semua, wilayah))\nharga_tiket <- matrix(c(4.0, 4.0, 4.5, 4.5, 5.4, 5.4, 6.0, 6.0),\n                      nrow = 4, byrow = TRUE,\n                      dimnames = list(judul_semua, wilayah))\n\n# Hapus objek\nrm(box_office_semua)\nrm(judul_semua)\nrm(wilayah)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Matriks the_matrix_semua dan harga_tiket telah tersedia untuk Anda\nthe_matrix_semua\nharga_tiket\n\n# Perkirakan banyaknya penonton (dalam jutaan)\npenonton_baru <- \n  \n# Penonton internasional (dalam jutaan)\npenonton_baru_int <- \n\n# Rerata banyak penonton internasional (dalam jutaan)\n\n\n<\/code>\n<code data-type=\"solution\">\n# Matriks the_matrix_semua dan harga_tiket telah tersedia untuk Anda\nthe_matrix_semua\nharga_tiket\n\n# Perkirakan banyaknya penonton (dalam jutaan)\npenonton_baru <- the_matrix_semua \/ harga_tiket\n  \n# Penonton internasional (dalam jutaan)\npenonton_baru_int <- penonton_baru[, 2]\n\n# Rerata banyak penonton internasional (dalam jutaan)\nmean(penonton_baru_int)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengganti isi dari `the_matrix_semua`. Matriks ini telah disediakan untuk Anda.\"\n\nex() %>% check_object(\"the_matrix_semua\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"harga_tiket\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"penonton_baru\") %>% check_equal(incorrect_msg = \"Apakah Anda sudah membuat matriks `penonton_baru` secara akurat? Anda seharusnya membagi `the_matrix_semua` dengan `harga_tiket` untuk mendapatkannya.\")\n\nex() %>% check_object(\"penonton_baru_int\") %>% check_equal(incorrect_msg = \"Untuk membuat `penonton_baru_int`, Anda seharusnya memilih kolom kedua `penonton_baru`. Anda dapat menggunakan `[,2]` untuk melakukannya!\")\n\nex() %>% check_output_expr(\"mean(penonton_baru_int)\", missing_msg = \"Setelah Anda mendapatkan `penonton_baru_int`, Anda dapat menggunakan `mean()` Untuk menghitung rerata banyaknya penonton internasional. Pastikan untuk menampilkan hasilnya.\")\n\nsuccess_msg(\"Luar biasa! Latihan ini adalah latihan terakhir di subbab matriks. Di pemberhentian berikutnya, kita akan belajar faktor!\")\n<\/code>\n<div data-type=\"hint\">- Untuk mendapatkan banyaknya penonton internasional, gunakan <code>penonton_baru[, 2]<\/code>. - Rerata banyaknya penonton internasional dapat dihitung dengan fungsi <code>mean()<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Anda telah mengetahui apa yang dilakukan operator pembagian <code>\/<\/code> terhadap dua matriks dalam <a href=\"#latihan-1.30\" data-type=\"internal\" data-id=\"#latihan-1.30\">Latihan 1.30<\/a>. Bagaimana dengan operator perkalian <code>*<\/code>?<\/p>\n\n\n\n<p>Ketika kita menghitung <code>matriks1 * matriks2<\/code>, kita akan mendapatkan sebuah matriks yang elemen-elemennya merupakan hasil kali setiap elemen <code>matriks1<\/code> dengan elemen yang bersuaian dari <code>matriks2<\/code>.<\/p>\n\n\n\n<p>Bagi Anda yang sudah familier dengan perkalian matriks, tentuk hal tersebut bukan merupakan perkalian matriks yang standar. Untuk perkalian yang standar, R menggunakan operator <code>%*%<\/code>.<\/p>\n\n\n\n<p>Untuk lebih jelasnya, kita dapat menuliskan kode berikut untuk dijalankan R agar kita bisa membedakan operator <code>*<\/code> dan <code>%*%<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>matriks1 &lt;- matrix(1:4, nrow = 2, byrow = TRUE)\nmatriks2 &lt;- matrix(5:8, nrow = 2, byrow = TRUE)\nmatriks1 * matriks2\nmatriks1 %*% matriks2<\/code><\/pre>\n\n\n\n<p>Menurut Anda, bagaimana hasilnya? Silakan cermati hasil kedua operasi tersebut di bawah ini.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>&gt; matriks1 &lt;- matrix(1:4, nrow = 2, byrow = TRUE)\n&gt; matriks1\n     &#91;,1] &#91;,2]\n&#91;1,]    1    2\n&#91;2,]    3    4\n&gt; matriks2 &lt;- matrix(5:8, nrow = 2, byrow = TRUE)\n&gt; matriks2\n     &#91;,1] &#91;,2]\n&#91;1,]    5    6\n&#91;2,]    7    8\n&gt; matriks1 * matriks2\n     &#91;,1] &#91;,2]\n&#91;1,]    5   12\n&#91;2,]   21   32\n&gt; matriks1 %*% matriks2\n     &#91;,1] &#91;,2]\n&#91;1,]   19   22\n&#91;2,]   43   50<\/code><\/pre>\n\n\n\n<h3>Uji Pengetahuan Anda<\/h3>\n\n\n<script>\n                            if (window.qmn_quiz_data === undefined) {\n                                    window.qmn_quiz_data = new Object();\n                            }\n                    <\/script><script>window.qmn_quiz_data[\"3\"] = {\"quiz_id\":\"3\",\"quiz_name\":\"Matriks\",\"disable_answer\":\"0\",\"ajax_show_correct\":\"0\",\"progress_bar\":\"0\",\"contact_info_location\":\"0\",\"qpages\":{\"1\":{\"id\":\"1\",\"quizID\":\"3\",\"pagekey\":\"oYysa0sE\",\"hide_prevbtn\":\"0\"}},\"skip_validation_time_expire\":\"0\",\"timer_limit_val\":0,\"disable_scroll_next_previous_click\":\"0\",\"disable_first_page\":\"0\",\"enable_result_after_timer_end\":\"0\",\"enable_quick_result_mc\":\"0\",\"end_quiz_if_wrong\":0,\"form_disable_autofill\":\"0\",\"disable_mathjax\":\"0\",\"enable_quick_correct_answer_info\":\"0\",\"quick_result_correct_answer_text\":\"Correct! You have selected correct answer.\",\"quick_result_wrong_answer_text\":\"Wrong! You have selected wrong answer.\",\"quiz_processing_message\":\"\",\"not_allow_after_expired_time\":\"\",\"scheduled_time_end\":false,\"error_messages\":{\"email_error_text\":\"Not a valid e-mail address!\",\"number_error_text\":\"This field must be a number!\",\"incorrect_error_text\":\"The entered text is not correct!\",\"empty_error_text\":\"Please complete all required fields!\",\"url_error_text\":\"The entered URL is not valid!\",\"minlength_error_text\":\"Required atleast %minlength% characters.\",\"maxlength_error_text\":\"Maximum %maxlength% characters allowed.\"},\"first_page\":false}\n                    <\/script><div class='qsm-quiz-container qsm-quiz-container-3 qmn_quiz_container mlw_qmn_quiz  quiz_theme_default  '>\n\t\t\t\t\t<form name=\"quizForm3\" id=\"quizForm3\" action=\"\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219\" method=\"POST\" class=\"qsm-quiz-form qmn_quiz_form mlw_quiz_form\" novalidate enctype=\"multipart\/form-data\">\n\t\t\t\t<input type=\"hidden\" name=\"qsm_hidden_questions\" id=\"qsm_hidden_questions\" value=\"\">\n\t\t\t\t<div id=\"mlw_error_message\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t<span id=\"mlw_top_of_quiz\"><\/span>\n\t\t\t\t\t\t\t<section class=\"qsm-page \">\n\t\t\t\t\t\t\t\t<div class=\"quiz_section quiz_begin\">\n\t\t\t\t\t\t<div class='qsm-before-message mlw_qmn_message_before'>\n\t\t\t\t<p>Jawablah soal-soal dalam kuis Matriks berikut dengan tepat!<\/p>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-11 \" data-qid=\"11\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Kode ini digunakan untuk membuat matriks 4 kolom. Isilah bagian yang kosong! <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p>matrix(21:40, nrow = <input autocomplete='off' maxlength='2' type='text' class='qmn_fill_blank ' name='question11[]' \/>, byrow = TRUE)<\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-12 \" data-qid=\"12\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Vektor v akan dijadikan nama untuk kolom-kolom matriks m. Lengkapilah bagian yang kosong! <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p><input type='text' class='qmn_fill_blank ' name='question12[]' \/>(<input type='text' class='qmn_fill_blank ' name='question12[]' \/>) &lt;- <input type='text' class='qmn_fill_blank ' name='question12[]' \/><\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-13 \" data-qid=\"13\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Vektor v akan disisipkan sebagai kolom yang paling kiri di matriks m. Lengkapi kode berikut! <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p>cbind(<input autocomplete='off' type='text' class='qmn_fill_blank ' name='question13[]' \/>, <input autocomplete='off' type='text' class='qmn_fill_blank ' name='question13[]' \/>)<\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-14 \" data-qid=\"14\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Perintah yang digunakan untuk menjumlahkan semua elemen dalam setiap baris sebuah matriks adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question14-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question14\" id=\"question14_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question14_1\">\n\t\t\t\t\tcbind()\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question14-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question14\" id=\"question14_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question14_2\">\n\t\t\t\t\trbind()\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question14-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question14\" id=\"question14_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question14_3\">\n\t\t\t\t\tmean()\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question14-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question14\" id=\"question14_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question14_4\">\n\t\t\t\t\tcolSums()\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question14-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question14\" id=\"question14_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question14_5\">\n\t\t\t\t\trowSums()\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question14\" id=\"question14_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-15 \" data-qid=\"15\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Kode untuk memilih kolom ketiga matriks m adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question15-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question15\" id=\"question15_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question15_1\">\n\t\t\t\t\tm[3, ]\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question15-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question15\" id=\"question15_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question15_2\">\n\t\t\t\t\tm[, 3]\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question15-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question15\" id=\"question15_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question15_3\">\n\t\t\t\t\t[3, ]m\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question15-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question15\" id=\"question15_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question15_4\">\n\t\t\t\t\t[, 3]m\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question15-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question15\" id=\"question15_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question15_5\">\n\t\t\t\t\tcol(m, 3)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question15\" id=\"question15_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/section>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_question_list\" value=\"11Q12Q13Q14Q15Q\" \/>\n\t\t\t\t\t\t<div id=\"mlw_error_message_bottom\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_all_questions_count\" id=\"qmn_all_questions_count\" value=\"5\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"total_questions\" id=\"total_questions\" value=\"5\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer\" id=\"timer\" value=\"0\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer_ms\" id=\"timer_ms\" value=\"0\"\/>\n\t\t\t\t\t<input type=\"hidden\" class=\"qmn_quiz_id\" name=\"qmn_quiz_id\" id=\"qmn_quiz_id\" value=\"3\" \/>\n\t\t\t\t\t<input type='hidden' name='complete_quiz' value='confirmation' \/>\n\t\t\t\t\t\t\t\t\t<\/form>\n\t\t<\/div>\n\t\t<div style=\"display: none;\" class=\"qsm-popup qsm-popup-slide\" id=\"modal-4\" aria-hidden=\"false\"><div class=\"qsm-popup__overlay\" tabindex=\"-1\" data-micromodal-close=\"\"><div class=\"qsm-popup__container qmn_quiz_container\" role=\"dialog\" aria-modal=\"true\"><div class=\"qsm-popup__content\"><img src=\"https:\/\/i0.wp.com\/people.usd.ac.id\/~ydkristanto\/wp-content\/plugins\/quiz-master-next\/assets\/clock.png?w=750&#038;ssl=1\" alt=\"clock.png\" data-recalc-dims=\"1\"\/><p class=\"qsm-time-up-text\"> Time's up<\/p><\/div><footer class=\"qsm-popup__footer\"><button class=\"qsm-popup-secondary-button qmn_btn\" data-micromodal-close=\"\" aria-label=\"Close this dialog window\" onclick=\"location.reload();\">Cancel<\/button><\/footer><\/div><\/div><\/div>\n\n\n<!--nextpage-->\n\n\n\n<h2>Faktor<\/h2>\n\n\n\n<p class=\"has-drop-cap\">Seringkali data itu hanya memuat sejumlah kategori yang terbatas. Misalnya, posisi negara-negara di dunia ini dapat dikategorikan ke dalam tujuh benua: Asia, Afrika, Amerika Utara, Amerika Selatan, Antarktika, Eropa, dan Australia. Di R, data kategori seperti ini merupakan faktor. Faktor merupakan struktur data yang penting untuk menganalisis data. Oleh karena itu, di subbab ini Anda akan dipandu untuk belajar dan berlatih tentang faktor.<\/p>\n\n\n\n<h3>Selayang Pandang Tentang Faktor<\/h3>\n\n\n\n<p>Faktor merupakan sebuah jenis data statistik yang digunakan untuk menyimpan variabel-variabel kategori. Selain variabel kategori, kita mengenal juga variabel kontinu. Perbedaan antara keduanya adalah bahwa variabel kategori hanya dapat termuat ke dalam kategori-kategori yang terbatas. Sebaliknya, variabel kontinu dapat berkorespondensi dengan nilai-nilai yang banyaknya tak hingga.<\/p>\n\n\n\n<p>Karena adanya perbedaan dua variabel tersebut, penting bagi R untuk mengetahui jenis variabel yang diolahnya. Demikian halnya kita juga perlu memperlakukan dua jenis variabel tersebut dengan cara yang berbeda.<\/p>\n\n\n\n<p>Salah satu contoh jenis variabel kategori yang sering digunakan adalah jenis kelamin. Di banyak kasus, kita dapat mengkategorikan jenis kelamin ke dalam dua kategori: \"Laki-laki\" dan \"Perempuan\".<\/p>\n\n\n\n<p>Untuk mengilustrasikan bagaimana membuat faktor di R, pertama kita buat sebuah vektor yang elemen-elemennya dapat diklasifikasikan ke dalam sejumlah kategori yang terbatas. Misalnya, <code>vektor_jk<\/code> berikut ini berisi jenis kelamin dari lima orang yang berbeda.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>vektor_jk &lt;- c(\"Perempuan\", \"Perempuan\",\n               \"Laki-laki\", \"Perempuan\",\n               \"Laki-laki\")<\/code><\/pre>\n\n\n\n<p>Jelas bahwa <code>vektor_jk<\/code> memuat dua level faktor, yaitu <code>\"Laki-laki\"<\/code> dan <code>\"Perempuan\"<\/code>. Untuk menjadikan tersebut sebagai sebuah faktor, kita dapat menggunakan fungsi <code>factor()<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>vektor_jk_faktor &lt;- factor(vektor_jk)<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.31\">Latihan 1.31<\/p>\n\n\n\n<ul><li>Ubahlah vektor karakter <code>vektor_jk<\/code> menjadi sebuah faktor dengan fungsi <code>factor()<\/code> dan namai hasilnya sebagai <code>vektor_jk_faktor<\/code>.<\/li><li>Tampilkan <code>vektor_jk_faktor<\/code> dan perhatikan bahwa R mencetak level-level faktor tersebut di bawah nilai-nilai yang sebenarnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Vektor jenis kelamin\nvektor_jk <- c(\"Perempuan\", \"Perempuan\", \"Laki-laki\", \"Perempuan\", \"Laki-laki\")\n\n# Konversi vektor_jk menjadi sebuah faktor\nvektor_jk_faktor <- \n\n# Tampilkan vektor_jk_faktor\n\n\n<\/code>\n<code data-type=\"solution\">\n# Vektor jenis kelamin\nvektor_jk <- c(\"Perempuan\", \"Perempuan\", \"Laki-laki\", \"Perempuan\", \"Laki-laki\")\n\n# Konversi vektor_jk menjadi sebuah faktor\nvektor_jk_faktor <- factor(vektor_jk)\n\n# Tampilkan vektor_jk_faktor\nvektor_jk_faktor\n\n<\/code>\n<code data-type=\"sct\">\nex()  %>%  check_object(\"vektor_jk_faktor\")  %>% check_equal(incorrect_msg = \"Apakah Anda sudah menjadikan `vektor_jk` sebagai sebuah faktor yang bernama `vektor_jk_faktor`?\")\nex()  %>%  check_output_expr(\"vektor_jk_faktor\", missing_msg = \"Jangan lupa untuk menampilkan `vektor_jk_faktor`!\")\n\nsuccess_msg(\"Mantap! Silakan lanjut ke bahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Gunakan fungsi <code>factor()<\/code> pada <code>vektor_jk<\/code>. Lihat lagi pembahasan sebelumnya. Jawabannya sudah dibahas di situ.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Terdapat dua jenis variabel kategori: <strong>variabel nominal<\/strong> dan <strong>variabel ordinal<\/strong>.<\/p>\n\n\n\n<p id=\"nominal\">Variabel nominal adalah variabel kategori yang tidak memiliki urutan. Dengan kata lain, kita tidak dapat membandingkan dan mengatakan bahwa satu kategori lebih tinggi dari kategori lainnya. Misalnya kita memiliki variabel kategori <code>vektor_warna<\/code> yang kategori-kategorinya <code>\"Merah\"<\/code>, <code>\"Kuning\"<\/code>, <code>\"Hijau\"<\/code>, dan <code>\"Biru\"<\/code>. Dengan kategori seperti itu, kita tidak mungkin mengatakan bahwa satu warna lebih tinggi dari warna lainnya.<\/p>\n\n\n\n<p>Sebaliknya, variabel ordinal memiliki urutan. Misalnya adalah variabel ordinal <code>vektor_kesukaran<\/code> yang memiliki kategori <code>\"Mudah\"<\/code>, <code>\"Menengah\"<\/code>, dan <code>\"Susah\"<\/code>. Dari contoh ini, jelas bahwa <code>\"Menengah\"<\/code> lebih tinggi daripada <code>\"Mudah\"<\/code>, dan <code>\"Susah\"<\/code> merupakan kategori yang paling tinggi.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.32\">Latihan 1.32<\/p>\n\n\n\n<p>Klik Submit untuk mengirimkan jawaban yang telah tersedia dan lihat bagaimana R menampilkan variabel-variabel nominal dan ordinal. Jika Anda belum memahami apa yang ditampilkan, jangan bermuram durja. Kita diskusikan <a href=\"#faktor-terurut\">di bagian selanjutnya<\/a>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Warna\nvektor_warna <- c(\"Merah\", \"Kuning\", \"Hijau\", \"Biru\")\nvektor_warna_faktor <- factor(vektor_warna)\nvektor_warna_faktor\n\n# Kesukaran\nvektor_kesukaran <- c(\"Mudah\", \"Menengah\", \"Mudah\",\"Menengah\", \"Susah\")\nvektor_kesukaran_faktor <- factor(vektor_kesukaran, order = TRUE, levels = c(\"Mudah\", \"Menengah\", \"Susah\"))\nvektor_kesukaran_faktor\n\n<\/code>\n<code data-type=\"solution\">\n# Warna\nvektor_warna <- c(\"Merah\", \"Kuning\", \"Hijau\", \"Biru\")\nvektor_warna_faktor <- factor(vektor_warna)\nvektor_warna_faktor\n\n# Kesukaran\nvektor_kesukaran <- c(\"Mudah\", \"Menengah\", \"Mudah\",\"Menengah\", \"Susah\")\nvektor_kesukaran_faktor <- factor(vektor_kesukaran, order = TRUE, levels = c(\"Mudah\", \"Menengah\", \"Susah\"))\nvektor_kesukaran_faktor\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengubah kode apapun dalam skrip. Cukup submit jawabannya dan cermati hasilnya!\"\n\nex() %>% check_object(\"vektor_warna\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_kesukaran\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_warna_faktor\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_output_expr(\"vektor_warna_faktor\", missing_msg = msg)\n\nex() %>% check_object(\"vektor_kesukaran_faktor\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_output_expr(\"vektor_kesukaran_faktor\", missing_msg = msg)\n\nsuccess_msg(\"Sudahkah Anda mengamati level faktornya? Luar biasa! Lanjut ke bahasan berikutnya untuk mempelajari lebih jauh tentang level faktor.\")\n<\/code>\n<div data-type=\"hint\">Kliklah tombol Sumbit pada console untuk mengirimkan jawaban yang sudah tersedia. Cermati bagaimana R mengindikasikan urutan pada level faktor untuk variabel ordinal.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Level-Level Faktor<\/h3>\n\n\n\n<p>Misalkan Anda baru saja selesai melakukan survei dan sekarang menghadap data survei tersebut. Anda memperhatikan bahwa variabel jenis kelamin dalam data survei terebut memuat dua kategori, yaitu <code>\"L\"<\/code> dan <code>\"P\"<\/code>. Agar data tersebut terbaca dengan mudah oleh orang lain, Anda ingin mengubahnya menjadi <code>\"Laki-laki\"<\/code> dan <code>\"Perempuan\"<\/code>. Bagaimana cara melakukannya?<\/p>\n\n\n\n<p>Keinginan Anda tersebut dapat dilakukan dengan memanfaatkan fungsi <code>levels()<\/code>. Sebagai contoh, jenis kelamin dari responden survei Anda adalah seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>vektor_survei &lt;- c(\"P\", \"P\", \"L\", \"P\", \"L\")<\/code><\/pre>\n\n\n\n<p>Pertama, kita perlu mengkonversi vektor tersebut menjadi sebuah faktor, <code>vektor_survei_faktor<\/code>. Setelah itu, kita gunakan <code>c(\"Laki-laki\", \"Perempuan\")<\/code> untuk dipetakan ke <code>levels(vektor_survei_vektor)<\/code>.<\/p>\n\n\n\n<p>Penting diperhatikan bahwa pemetaan tersebut harus terurut secara akurat. Jika Anda mentikkan <code>levels(vektor_survei_faktor)<\/code>, Anda akan mendapatkan luaran seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>&#91;1] \"L\" \"P\"<\/code><\/pre>\n\n\n\n<p>Jika Anda tidak mengatur level-level faktor tersebut, R secara otomatis akan memetakannya menurut alfabet. Agar secara akurat fungsi <code>levels()<\/code> tersebut memetakan <code>\"Laki-laki\"<\/code> ke <code>\"L\"<\/code> dan <code>\"Perempuan\"<\/code> ke <code>\"P\"<\/code>, kita perlu menggunakan <code>c(\"Laki-laki\", \"Perempuan\")<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.33\">Latihan 1.33<\/p>\n\n\n\n<ul><li>Cermati kode yang digunakan untuk membuat <code>vektor_survei<\/code> dan <code>vektor_survei_faktor<\/code>. Vektor faktor tersebut dipakai dalam perintah berikutnya.<\/li><li>Ubahlah level-level faktor <code>vektor_survei_faktor<\/code> menjadi <code>c(\"Laki-laki\", \"Perempuan\")<\/code> dan tampilkan hasilnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kode untuk membuat vektor_survei_faktor\nvektor_survei <- c(\"P\", \"P\", \"L\", \"P\", \"L\")\nvektor_survei_faktor <- factor(vektor_survei)\n\n# Aturlah level-level vektor_survei_faktor\nlevels(vektor_survei_faktor) <- \n\nvektor_survei_faktor\n\n<\/code>\n<code data-type=\"solution\">\n# Kode untuk membuat vektor_survei_faktor\nvektor_survei <- c(\"P\", \"P\", \"L\", \"P\", \"L\")\nvektor_survei_faktor <- factor(vektor_survei)\n\n# Aturlah level-level vektor_survei_faktor\nlevels(vektor_survei_faktor) <- c(\"Laki-laki\", \"Perempuan\")\n\nvektor_survei_faktor\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah pendefinisian `vektor_survei`!\"\nex() %>% check_object(\"vektor_survei\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\nmsg = \"Jangan mengubah atau menghapus kode untuk membuat vektor faktornya.\"\nex()  %>% check_function(\"factor\", not_called_msg = msg) %>% check_arg('x')  %>% check_equal(incorrect_msg = msg)\n\n# MC-note: ideally would want to test assign operator `<-`, and have it highlight whole line.\n\n# MC-note: or negate this test_student_typed, to highlight where they type this incorrect phrase\n# test_student_typed('c(\"Male\", \"Female\")')\n\nex()  %>% check_object(\"vektor_survei_faktor\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = paste(\"Apakah Anda telah memetakan level-level faktor yang benar kepada `vektor_survei_faktor`? Gunakan `levels(vektor_survei_faktor) <- c(\\\"Laki-laki\\\", \\\"Perempuan\\\")`. Ingat bahwa R sensitif terhadap kapitalisasi!\"))\n\nsuccess_msg(\"Jempol! Lanjut ke materi berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Perhatikan urutan level-level faktor yang Anda petakan.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Meringkas Sebuah Faktor<\/h3>\n\n\n\n<p>Anda telah mengganti level-level faktor dari variabel jenis kelamin dalam data survei Anda. Sekarang, Anda ingin meringkas variabel jenis kelamin tersebut.<\/p>\n\n\n\n<p>Di R, kita dapat menggunakan fungsi <code>summary()<\/code> untuk melihat ringkasan sebuah variabel.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>summary(var_ku)<\/code><\/pre>\n\n\n\n<p>Dengan fungsi itu, kita dapat mengetahui banyaknya responden yang menjawab <code>\"Laki-laki\"<\/code>, dan berapa banyak yang menjawab <code>\"Perempuan\"<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.34\">Latihan 1.34<\/p>\n\n\n\n<p>Gunakan <code>summary()<\/code> pada <code>vektor_survei<\/code> dan <code>vektor_survei_faktor<\/code>, kemudian interpretasikan hasilnya. Menurut Anda, apakah kedua hasil tersebut sama bermanfaatnya?<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kode untuk membuat vektor_survei_faktor\nvektor_survei <- c(\"P\", \"P\", \"L\", \"P\", \"L\")\nvektor_survei_faktor <- factor(vektor_survei)\nlevels(vektor_survei_faktor) <- c(\"Laki-laki\", \"Perempuan\")\nvektor_survei_faktor\n\n# Membuat ringkasan untuk vektor_survei\n\n\n# Membuat ringkasan untuk vektor_survei_faktor\n\n\n<\/code>\n<code data-type=\"solution\">\n# Kode untuk membuat vektor_survei_faktor\nvektor_survei <- c(\"P\", \"P\", \"L\", \"P\", \"L\")\nvektor_survei_faktor <- factor(vektor_survei)\nlevels(vektor_survei_faktor) <- c(\"Laki-laki\", \"Perempuan\")\nvektor_survei_faktor\n\n# Membuat ringkasan untuk vektor_survei\nsummary(vektor_survei)\n\n# Membuat ringkasan untuk vektor_survei_faktor\nsummary(vektor_survei_faktor)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah apapun pada baris yang mendefinisikan `vektor_survei` dan `vektor_survei_faktor`.\"\n\nex() %>% check_object(\"vektor_survei\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_survei_faktor\",  undefined_msg = msg) %>% check_equal(eq_condition = \"equal\",incorrect_msg = msg)\n\nmsg <- \"Apakah secara akurat Anda menggunakan `summary()` untuk meringkas `vektor_survei` dan `vektor_survei_faktor`?\"\n\nex() %>% check_output_expr(\"summary(vektor_survei)\", missing_msg = sprintf(msg, \"vektor_survei\"))\n\nex() %>% check_output_expr(\"summary(vektor_survei_faktor)\", missing_msg = sprintf(msg, \"vektor_survei_faktor\"))\n\nsuccess_msg(\"Bagus! Cermati luarannya. Karena kita telah mengatur `\\\"Laki-laki\\\"` dan `\\\"Perempuan\\\"` sebagai level-level faktor dari `vektor_survei_faktor`, R dapat menunjukkan banyaknya tiap-tiap kategori tersebut.\")\n<\/code>\n<div data-type=\"hint\">Cukup gunakan fungsi <code>summary()<\/code> untuk <code>vektor_survei<\/code> dan <code>vektor_survei_faktor<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><a href=\"#nominal\">Pada bagian sebelumnya<\/a> telah disinggung bahwa kita tidak mungkin membandingkan level-level variabel nominal. Tapi mungkin Anda tetap penasaran bagaimana jika kita membandingkan level-level tersebut. Silakan jawab rasa penasaran Anda di <a href=\"#latihan-1.35\">Latihan 1.35<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.35\">Latihan 1.35<\/p>\n\n\n\n<p>Bacalah kode di dalam editor dan klik Submit untuk mengirimkan jawabannya. Kode tersebut digunakan untuk menguji apakah <code>laki<\/code> lebih besar dari (<code>&gt;<\/code>) <code>perempuan<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Membuat vektor_survei_faktor dengan level-level yang mudah dibaca\nvektor_survei <- c(\"P\", \"P\", \"L\", \"P\", \"L\")\nvektor_survei_faktor <- factor(vektor_survei)\nlevels(vektor_survei_faktor) <- c(\"Laki-laki\", \"Perempuan\")\n\n# Laki-laki\nlaki <- vektor_survei_faktor[1]\n\n# Perempuan\nperempuan <- vektor_survei_faktor[2]\n\n# Apakah laki-laki 'lebih besar' daripada perempuan\nlaki > perempuan\n\n<\/code>\n<code data-type=\"solution\">\n# Membuat vektor_survei_faktor dengan level-level yang mudah dibaca\nvektor_survei <- c(\"P\", \"P\", \"L\", \"P\", \"L\")\nvektor_survei_faktor <- factor(vektor_survei)\nlevels(vektor_survei_faktor) <- c(\"Laki-laki\", \"Perempuan\")\n\n# Laki-laki\nlaki <- vektor_survei_faktor[1]\n\n# Perempuan\nperempuan <- vektor_survei_faktor[2]\n\n# Apakah laki-laki 'lebih besar' daripada perempuan\nlaki > perempuan\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah apapun terhadap kodenya. Cuku kirimkan jawabannya dan lihat hasilnya.\"\n\nex() %>% check_object(\"vektor_survei\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_survei_faktor\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\", incorrect_msg = msg)\n\nex() %>% check_object(\"laki\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"perempuan\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_output_expr(\"laki > perempuan\", missing_msg = msg)\n\n\nsuccess_msg(\"Menarik! R akan mendapatkan `NA` ketika kita membandingkan level-level variabel nominal, karena hal ini tidak mungkin dilakukan. Selanjutnya Anda akan belajar faktor-faktor yang terurut, sehingga perbandingan semacam itu dimungkinkan.\")\n<\/code>\n<div data-type=\"hint\">Cukup jalankan kodenya dan lihat apa yang tertampil di hasil.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 id=\"faktor-terurut\">Faktor-Faktor Terurut<\/h3>\n\n\n\n<p><a href=\"#latihan-1.35\">Latihan 1.35<\/a> telah menunjukkan bahwa tidak mungkin kita membandingkan level-level faktor yang tak terurut (nominal). Akan tetapi ketika kita memiliki level-level faktor yang terurut (ordinal), tentu kita dapat membandingkannya. Kita perlu memastikan bahwa karakteristik keterurutan tersebut diterima oleh R.<\/p>\n\n\n\n<p>Misalkan Anda bekerja kelompok secara daring bersama dengan lima teman Anda. Sebagai ketua kelompok, Anda mencatat seberapa cepat mereka menanggapi diskusi yang dilakukan dalam forum. Anda kemudian mengkategorikan kecepatannya ke dalam tiga kategori: <code>\"lambat\"<\/code>, <code>\"sedang\"<\/code>, dan <code>\"cepat\"<\/code>. Anda mencatat kecepatan setiap teman-teman Anda dan menyimpannya sebagai <code>vektor_kecepatan<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.36\">Latihan 1.36<\/p>\n\n\n\n<p>Jadikan <code>vektor_kecepatan<\/code> sebagai sebuah vektor yang memiliki lima elemen, masing-masing merepresentasikan kecepatan teman-teman Anda dalam membalas diskusi di forum. Tiap-tiap elemen tersebut isinya <code>\"lambat\"<\/code>, <code>\"sedang\"<\/code>, atau <code>\"cepat\"<\/code>. Gunakan informasi berikut.<\/p>\n\n\n\n<ul><li>Teman 1 lambat.<\/li><li>Teman 2 sedang.<\/li><li>Teman 3 lambat.<\/li><li>Teman 4 sedang.<\/li><li>Teman 5 cepat.<\/li><\/ul>\n\n\n\n<p>Di latihan ini, Anda belum perlu mengatur <code>vektor_kecepatan<\/code> sebagai sebuah faktor.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Membuat vektor_kecepatan\nvektor_kecepatan <- \n\n<\/code>\n<code data-type=\"solution\">\n# Membuat vektor_kecepatan\nvektor_kecepatan <- c(\"lambat\", \"sedang\", \"lambat\", \"sedang\", \"cepat\")\n\n<\/code>\n<code data-type=\"sct\">\nex() %>% check_object(\"vektor_kecepatan\") %>% check_equal(incorrect_msg = \"Hei, `vektor_kecepatan` seharusnya sebuah vektor dengan lima elemen, masing-masing menunjukkan kecepatan teman Anda. Jangan menggunakan huruf kapital karena R sensitif!\")\n\nsuccess_msg(\"Kerja bagus! Silakan lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Jadikan <code>vektor_kecepatan<\/code> sebagai sebuah vektor yang isinya <code>\"lambat\"<\/code>, <code>\"sedang\"<\/code>, atau <code>\"cepat\"<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Di <a href=\"#latihan-1.36\">Latihan 1.36<\/a>, <code>vektor_kecepatan<\/code> yang telah Anda buat masih berupa vektor. Vektor tersebut dapat kita buat sebagai sebuah faktor ordinal karena level-levelnya dapat diurutkan. Bawaannya, fungsi <code>factor()<\/code> akan mengubah <code>vektor_kecepatan<\/code> menjadi faktor tak terurut. Untuk menjadikannya faktor terurut, kita perlu menambahkan dua argumen tambahan: <code>ordered<\/code> dan <code>levels<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>factor(contoh_vektor,\n       ordered = TRUE,\n       levels = c(\"lev1\", \"lev2\" ...))<\/code><\/pre>\n\n\n\n<p>Dengan mengatur <code>ordered<\/code> bernilai <code>TRUE<\/code> dalam fungsi <code>factor()<\/code>, Anda mengindikasikan bahwa faktor tersebut terurut. Dengan argumen <code>levels<\/code> Anda menunjukkan urutan level-level yang tepat.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.37\">Latihan 1.37<\/p>\n\n\n\n<p>Dari <code>vektor_kecepatan<\/code>, buatlah sebuah vektor faktor yang terurut: <code>vektor_kecepatan_faktor<\/code>. Aturlah <code>ordered<\/code> menjadi <code>TRUE<\/code> dan <code>levels<\/code> sebagai <code>c(\"lambat\", \"sedang\", \"cepat\")<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Membuat vektor_kecepatan\nvektor_kecepatan <- c(\"lambat\", \"sedang\", \"lambat\", \"sedang\", \"cepat\")\n\n# Ubah vektor_kecepatan menjadi sebuah faktor yang terurut\nvektor_kecepatan_faktor <- \n\n# Tampilkan vektor_kecepatan_faktor\nvektor_kecepatan_faktor\nsummary(vektor_kecepatan_faktor)\n\n<\/code>\n<code data-type=\"solution\">\n# Membuat vektor_kecepatan\nvektor_kecepatan <- c(\"lambat\", \"sedang\", \"lambat\", \"sedang\", \"cepat\")\n\n# Ubah vektor_kecepatan menjadi sebuah faktor yang terurut\nvektor_kecepatan_faktor <- factor(vektor_kecepatan, ordered = TRUE, levels = c(\"lambat\", \"sedang\", \"cepat\"))\n\n# Tampilkan vektor_kecepatan_faktor\nvektor_kecepatan_faktor\nsummary(vektor_kecepatan_faktor)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengubah kode yang mendefinisikan variabel `vektor_kecepatan`.\"\n\nex() %>% check_object(\"vektor_kecepatan\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_function(\"factor\") %>% {\n\tcheck_arg(., 'x') %>% check_equal(incorrect_msg=\"Argumen pertama yang dimasukkan ke dalam `factor()` seharusnya `vektor_kecepatan`.\")\n\tcheck_arg(., 'ordered') %>% check_equal(incorrect_msg=\"Pastikan untuk menjadikan `ordered = TRUE` di dalam perintah `factor()`.\")\n\tcheck_arg(., 'levels') %>% check_equal(incorrect_msg=\"Pastikan untuk menjadikan `levels = c(\\\"slow\\\", \\\"medium\\\", \\\"fast\\\")` di dalam fungsi `factor()`.\")\n\t}\n\nex() %>% check_object(\"vektor_kecepatan_faktor\") %>% check_equal(eq_condition = \"equal\", incorrect_msg=\"Masih adalah yang salah dalam `vektor_kecepatan_faktor`. Pastikan hanya menuliskan `vektor_kecepatan`, `ordered = TRUE` and `levels = c(\\\"lambat\\\", \\\"sedang\\\", \\\"cepat\\\")` ke dalam fungsi `factor()`.\")\n\nsuccess_msg(\"Mantap! Perhatikan console-nya. Sekarang console tersebut menunjukkan bahwa level-levelnya terurut, yang ditandai dengan simbol `<`. Silakan lanjut.\")\n<\/code>\n<div data-type=\"hint\">Gunakan fungsi <code>factor()<\/code> untuk menjadikan <code>vektor_kecepatan<\/code> sebagai sebuah faktor. Aturlah <code>ordered = TRUE<\/code> karena level-levelnya terurut. Aturlah <code>levels = c(\"lambat\", \"sedang\", \"cepat\")<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Membandingkan Faktor-Faktor Terurut<\/h3>\n\n\n\n<p>Di akhir dinamika kerja kelompok, Anda dan teman-teman Anda melakukan refleksi terhadap diskusi di dalam forum. Sebagai ketua kelompok, Anda diberi kesempatan untuk memberikan evaluasi terhadap proses diskusi tersebut.<\/p>\n\n\n\n<p>Sayangnya, Anda lupa terhadap kecepatan menanggapi diskusi yang dilakukan teman ketiga dan kelima Anda. Padahal Anda ingin mengetahui apakah teman ketiga Anda lebih cepat membalas diskusi daripada teman kelima Anda. Untungnya, R bisa membantu Anda! Silakan cek di <a href=\"#latihan-1.38\">Latihan 1.38<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.38\">Latihan 1.38<\/p>\n\n\n\n<ul><li>Gunakan <code>[3]<\/code> untuk memilih elemen ketiga dari <code>vektor_kecepatan_faktor<\/code> dan jadikan hasilnya sebagai <code>tmn3<\/code>. Elemen ini merepresentasikan kecepatan teman ketiga Anda.<\/li><li>Lakukan cara yang serupa untuk melihat kecepatan teman kelima Anda. Jadikan hasilnya sebagai <code>tmn5<\/code>.<\/li><li>Periksalah apakah <code>tmn3<\/code> lebih besar dari <code>tmn5<\/code> dan tampilkan hasilnya. Untuk melakukannya, Anda dapat membandingkan kedua nilai tersebut dengan tanda <code>&gt;<\/code>.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Membuat vektor_kecepatan_faktor\nvektor_kecepatan <- c(\"lambat\", \"sedang\", \"lambat\", \"sedang\", \"cepat\")\nvektor_kecepatan_faktor <- factor(vektor_kecepatan, ordered = TRUE, levels = c(\"lambat\", \"sedang\", \"cepat\"))\n\n# Nilai faktor untuk teman ketiga\ntmn3 <- \n\n# Nilai faktor untuk teman kelima\ntmn5 <- \n\n# Apakah teman ketiga lebih cepat dari teman kelima Anda?\n\n<\/code>\n<code data-type=\"solution\">\n# Membuat vektor_kecepatan_faktor\nvektor_kecepatan <- c(\"lambat\", \"sedang\", \"lambat\", \"sedang\", \"cepat\")\nvektor_kecepatan_faktor <- factor(vektor_kecepatan, ordered = TRUE, levels = c(\"lambat\", \"sedang\", \"cepat\"))\n\n# Nilai faktor untuk teman ketiga\ntmn3 <- vektor_kecepatan_faktor[3]\n\n# Nilai faktor untuk teman kelima\ntmn5 <- vektor_kecepatan_faktor[5]\n\n# Apakah teman ketiga lebih cepat dari teman kelima Anda?\ntmn3 > tmn5\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengganti apapun terhadap perintah yang mendefinisikan `vektor_kecepatan` and `vektor_kecepatan_faktor`!\"\nex() %>% check_object(\"vektor_kecepatan\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_kecepatan_faktor\", undefined_msg = msg) %>% check_equal(eq_condition = \"equal\", incorrect_msg = msg)\n\n\nmsg <- \"Apakah Anda sudah tepat memilih nilai faktor untuk teman %s? Anda dapat menggunakan `vektor_kecepatan_faktor[%s]`.\"\nex() %>% check_object(\"tmn3\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = sprintf(msg,\"ketiga\", \"3\"))\n\nex() %>% check_object(\"tmn5\") %>% check_equal(eq_condition = \"equal\",incorrect_msg = sprintf(msg, \"kelima\", \"5\"))\n\nex() %>% check_output_expr(\"tmn5 > tmn5\", missing_msg = \"Apakah Anda sudah membandingkan `tmn3` dan `tmn5` dengan tepat? Anda dapat menggunakan `>`. Tampilkan hasilnya.\")\n\nsuccess_msg(\"Bellissimo! Latihan 1.38 merupakan latihan terakhir di subbab ini! Dengan pemahaman mengenai vektor, matriks, dan faktor, Anda siap untuk mempelajari data frame. Data frame ini merupakan struktur data yang sangat penting di R!\")\n<\/code>\n<div data-type=\"hint\">- Untuk memilih nilai faktor teman ketiga Anda, gunakan <code>vektor_kecepatan_faktor[3]<\/code>. - Untuk membandingkan dua kecepatan teman Anda, gunakan tanda <code>><\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Uji Pengetahuan Anda<\/h3>\n\n\n<script>\n                            if (window.qmn_quiz_data === undefined) {\n                                    window.qmn_quiz_data = new Object();\n                            }\n                    <\/script><script>window.qmn_quiz_data[\"4\"] = {\"quiz_id\":\"4\",\"quiz_name\":\"Faktor\",\"disable_answer\":0,\"ajax_show_correct\":0,\"progress_bar\":\"0\",\"contact_info_location\":0,\"qpages\":{\"2\":{\"id\":\"2\",\"quizID\":\"4\",\"pagekey\":\"Y8e0Tymw\",\"hide_prevbtn\":\"0\"}},\"skip_validation_time_expire\":0,\"timer_limit_val\":\"0\",\"disable_scroll_next_previous_click\":0,\"disable_first_page\":\"0\",\"enable_result_after_timer_end\":0,\"enable_quick_result_mc\":0,\"end_quiz_if_wrong\":0,\"form_disable_autofill\":0,\"disable_mathjax\":0,\"enable_quick_correct_answer_info\":0,\"quick_result_correct_answer_text\":\"Correct! You have selected correct answer.\",\"quick_result_wrong_answer_text\":\"Wrong! You have selected wrong answer.\",\"quiz_processing_message\":\"\",\"not_allow_after_expired_time\":0,\"scheduled_time_end\":false,\"error_messages\":{\"email_error_text\":\"Not a valid e-mail address!\",\"number_error_text\":\"This field must be a number!\",\"incorrect_error_text\":\"The entered text is not correct!\",\"empty_error_text\":\"Please complete all required fields!\",\"url_error_text\":\"The entered URL is not valid!\",\"minlength_error_text\":\"Required atleast %minlength% characters.\",\"maxlength_error_text\":\"Maximum %maxlength% characters allowed.\"},\"first_page\":false}\n                    <\/script><div class='qsm-quiz-container qsm-quiz-container-4 qmn_quiz_container mlw_qmn_quiz  quiz_theme_default  '>\n\t\t\t\t\t<form name=\"quizForm4\" id=\"quizForm4\" action=\"\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219\" method=\"POST\" class=\"qsm-quiz-form qmn_quiz_form mlw_quiz_form\" novalidate enctype=\"multipart\/form-data\">\n\t\t\t\t<input type=\"hidden\" name=\"qsm_hidden_questions\" id=\"qsm_hidden_questions\" value=\"\">\n\t\t\t\t<div id=\"mlw_error_message\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t<span id=\"mlw_top_of_quiz\"><\/span>\n\t\t\t\t\t\t\t<section class=\"qsm-page \">\n\t\t\t\t\t\t\t\t<div class=\"quiz_section quiz_begin\">\n\t\t\t\t\t\t<div class='qsm-before-message mlw_qmn_message_before'>\n\t\t\t\t<p>Kerjakan soal-soal tentang Faktor berikut dengan tepat!<\/p>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-1 question-section-id-16 \" data-qid=\"16\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Benar atau salah: Di R, faktor digunakan untuk menyimpan data kontinu. <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class=\"qmn_radio_answers qmn_radio_horizontal_answers \">\n\t\t\t\t\t\t\t<span class=\"mlw_horizontal_choice  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"radio\" class=\"qmn_quiz_radio qmn-multiple-choice-input\" name=\"question16\" id=\"question16_1\" value=\"0\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question16_1\">\n\t\t\t\t\t\t\tBenar\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"mlw_horizontal_choice  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"radio\" class=\"qmn_quiz_radio qmn-multiple-choice-input\" name=\"question16\" id=\"question16_2\" value=\"1\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question16_2\">\n\t\t\t\t\t\t\tSalah\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question16\" id=\"question16_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-17 \" data-qid=\"17\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Perintah berikut menjadikan contoh_vektor sebagai faktor. Isilah bagian yang kosong. <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p><input autocomplete='off' type='text' class='qmn_fill_blank ' name='question17[]' \/>(contoh_vektor)<\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-18 \" data-qid=\"18\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Kode berikut mengganti level-level faktor a dengan elemen yang bersesuaian dari vektor b. Isilah bagian yang kosong. <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p><input type='text' class='qmn_fill_blank ' name='question18[]' \/>(<input type='text' class='qmn_fill_blank ' name='question18[]' \/>) &lt;- <input type='text' class='qmn_fill_blank ' name='question18[]' \/><\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-1 question-section-id-19 \" data-qid=\"19\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Benar atau salah. Level-level faktor dari variabel nominal tidak bisa dibandingkan satu sama lain. <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class=\"qmn_radio_answers qmn_radio_horizontal_answers \">\n\t\t\t\t\t\t\t<span class=\"mlw_horizontal_choice  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"radio\" class=\"qmn_quiz_radio qmn-multiple-choice-input\" name=\"question19\" id=\"question19_1\" value=\"0\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question19_1\">\n\t\t\t\t\t\t\tBenar\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"mlw_horizontal_choice  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"radio\" class=\"qmn_quiz_radio qmn-multiple-choice-input\" name=\"question19\" id=\"question19_2\" value=\"1\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question19_2\">\n\t\t\t\t\t\t\tSalah\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question19\" id=\"question19_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-20 \" data-qid=\"20\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Argumen dalam fungsi factor() yang mengindikasikan apakah akan dibuat faktor terurut adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question20-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question20\" id=\"question20_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question20_1\">\n\t\t\t\t\tlevels\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question20-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question20\" id=\"question20_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question20_2\">\n\t\t\t\t\tdata\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question20-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question20\" id=\"question20_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question20_3\">\n\t\t\t\t\tfactor\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question20-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question20\" id=\"question20_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question20_4\">\n\t\t\t\t\tordinal\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question20-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question20\" id=\"question20_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question20_5\">\n\t\t\t\t\tordered\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question20\" id=\"question20_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/section>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_question_list\" value=\"16Q17Q18Q19Q20Q\" \/>\n\t\t\t\t\t\t<div id=\"mlw_error_message_bottom\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_all_questions_count\" id=\"qmn_all_questions_count\" value=\"5\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"total_questions\" id=\"total_questions\" value=\"5\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer\" id=\"timer\" value=\"0\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer_ms\" id=\"timer_ms\" value=\"0\"\/>\n\t\t\t\t\t<input type=\"hidden\" class=\"qmn_quiz_id\" name=\"qmn_quiz_id\" id=\"qmn_quiz_id\" value=\"4\" \/>\n\t\t\t\t\t<input type='hidden' name='complete_quiz' value='confirmation' \/>\n\t\t\t\t\t\t\t\t\t<\/form>\n\t\t<\/div>\n\t\t<div style=\"display: none;\" class=\"qsm-popup qsm-popup-slide\" id=\"modal-4\" aria-hidden=\"false\"><div class=\"qsm-popup__overlay\" tabindex=\"-1\" data-micromodal-close=\"\"><div class=\"qsm-popup__container qmn_quiz_container\" role=\"dialog\" aria-modal=\"true\"><div class=\"qsm-popup__content\"><img src=\"https:\/\/i0.wp.com\/people.usd.ac.id\/~ydkristanto\/wp-content\/plugins\/quiz-master-next\/assets\/clock.png?w=750&#038;ssl=1\" alt=\"clock.png\" data-recalc-dims=\"1\"\/><p class=\"qsm-time-up-text\"> Time's up<\/p><\/div><footer class=\"qsm-popup__footer\"><button class=\"qsm-popup-secondary-button qmn_btn\" data-micromodal-close=\"\" aria-label=\"Close this dialog window\" onclick=\"location.reload();\">Cancel<\/button><\/footer><\/div><\/div><\/div>\n\n\n<!--nextpage-->\n\n\n\n<h2>Data Frame<\/h2>\n\n\n\n<p class=\"has-drop-cap\">Data yang akan perlu Anda eksplorasi dan analisis melalui R pada umumnya berupa data frame. Oleh karena itu, Anda akan dipandu untuk mempelajari dan berlatih tentang data frame. Di akhir subbab ini, Anda akan mampu membuat sebuah data frame, memilih bagian-bagian penting dari sebuah data frame, dan mengurutkan sebuah data frame berdasarkan variabel-variabelnya.<\/p>\n\n\n\n<h3>Kilas Balik Vektor dan Matriks<\/h3>\n\n\n\n<p>Sampai di sini, kita telah mempelajari vektor dan matriks. Semua elemen kedua struktur data ini harus memiliki tipe data yang sama. Jika kita memaksa untuk memasukkan elemen-elemen yang jenisnya berbeda ke vektor atau matriks, R juga akan memaksa dengan mengubah jenis data dari elemen-elemen tersebut.<\/p>\n\n\n\n<p>Misalnya kita membuat matriks <code>contoh_matriks<\/code> seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>v1 &lt;- c(\"A\", \"B\", \"C\")\nv2 &lt;- c(TRUE, TRUE, FALSE)\nv3 &lt;- c(25, 17, 45)\nv4 &lt;- c(1.66, 1.50, 1.65)\ncontoh_matriks &lt;- matrix(c(v1, v2, v3, v4),\n                         nrow = 3,\n                         byrow = FALSE)\ncontoh_matriks<\/code><\/pre>\n\n\n\n<p>Ketika kode tersebut dijalankan di R, kita akan memperoleh luaran seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>     &#91;,1] &#91;,2]    &#91;,3] &#91;,4]  \n&#91;1,] \"A\"  \"TRUE\"  \"25\" \"1.66\"\n&#91;2,] \"B\"  \"TRUE\"  \"17\" \"1.5\" \n&#91;3,] \"C\"  \"FALSE\" \"45\" \"1.65\"<\/code><\/pre>\n\n\n\n<p>Apa yang bisa Anda amati? Jenis data semua elemen dalam matriks tersebut dijadikan seragam, yaitu character!<\/p>\n\n\n\n<p>Padahal ketika kita melakukan survei pasar, misalnya, kita memberikan pertanyaan-pertanyaan seperti ini.<\/p>\n\n\n\n<ul><li>Apakah Anda telah menikah? Atau pertanyaan dengan jawaban ya\/tidak lainnya (<code>logical<\/code>)<\/li><li>Berapa umur Anda? (<code>numeric<\/code>)<\/li><li>Apa pendapat Anda tentang produk ini? Atau pertanyaan terbuka lainnya (<code>character<\/code>)<\/li><li>...<\/li><\/ul>\n\n\n\n<p>Hasil dari survei seperti itu, yaitu tanggapan dari responden, merupakan sebuah set data yang berisi berbagai macam jenis data. Untungnya, data frame dapat menangani data yang seperti itu.<\/p>\n\n\n\n<h3>Selayang Pandang Tentang Data Frame<\/h3>\n\n\n\n<p>Data frame adalah data yang ditampilkan dalam format tabel. Data frame dapat memuat jenis-jenis data yang berbeda di dalamnya. Misalnya, kolom pertama berjenis <code>logical<\/code>, kolom kedua <code>numeric<\/code>, dan kolom ketiga <code>character<\/code>.<\/p>\n\n\n\n<p>Sebuah data frame memiliki kolom-kolom dan baris-baris. Setiap kolomnya merupakan variabel dan baris-barisnya merupakan observasi atau pengamatan. Konsep data seperti ini telah banyak digunakan oleh perangkat lunak statistik lainnya, seperti SAS dan SPSS.<\/p>\n\n\n\n<p>Di <a href=\"#latihan-1.39\">Latihan 1.39<\/a>, Anda akan diajak untuk melihat contoh sebuah data frame bawaan R, <code>mtcars<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.39\">Latihan 1.39<\/p>\n\n\n\n<p>Klik submit untuk mengirimkan jawabannya. Data frame <code>mtcars<\/code> akan ditampilkan setelah Anda mengirimkan jawaban tersebut.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Tampilkan data frame bawaan R\nmtcars\n\n<\/code>\n<code data-type=\"solution\">\n# Tampilkan data frame bawaan R\nmtcars\n\n<\/code>\n<code data-type=\"sct\">\nex() %&gt;% check_output_expr(\"mtcars\", missing_msg = \"Jangan mengganti apapun di editor. Pastikan luarannya `mtcars`.\")\n\nsuccess_msg(\"Mantap! Lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Cukup kirimkan jawabannya dengan klik tombol Submit dan cermati luarannya.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Memahami Set Data<\/h3>\n\n\n\n<p>Apa yang Anda amati dari luaran di Latihan <a href=\"#latihan-1.39\">Latihan 1.39<\/a>? Banyak sekali mobil dengan segala fiturnya!<\/p>\n\n\n\n<p>Ketika menganalisis data, seringkali kita akan berjumpa dengan set data dan data frame yang begitu besar. Kita akan kewalahan jika langsung mencermati semua nilai di dalamnya. Padahal, langkah awal kita untuk menganalis data adalah memahami dan mengakrabkan diri dengan data tersebut. Untuk itu, kita tidak perlu melihat semua nilainya, tetapi kita awali dulu dengan melihat bagian kecil dari set data tersebut.<\/p>\n\n\n\n<p>Kita dapat menggunakan fungsi <code>head()<\/code> untuk melihat beberapa baris awal sebuah set data. Selain itu, kita juga dapat memanfaatkan fungsi <code>tail()<\/code> untuk melihat beberapa baris akhirnya.<\/p>\n\n\n\n<p>Kedua fungsi tersebut sama-sama akan menampilkan kepala kolom, yang berisi nama-nama variabel di dalam set data tersebut.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.40\">Latihan 1.40<\/p>\n\n\n\n<p>Gunakan <code>head()<\/code> pada set data <code>mtcars<\/code> untuk mencermati kepala kolom dan beberapa baris awalnya.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Kenakan fungsi head() kepada mtcars\n\n\n<\/code>\n<code data-type=\"solution\">\n# Kenakan fungsi head() kepada mtcars\nhead(mtcars)\n\n<\/code>\n<code data-type=\"sct\">\nex() %&gt;% check_function(\"head\") %&gt;% check_arg('x') %&gt;% check_equal(incorrect_msg = \"Apakah Anda dengan benar menginputkan `mtcars` ke fungsi `head()`?\")\n\nex() %&gt;% check_output_expr(\"head(mtcars)\", missing_msg = \"Cukup tampilkan hasil dari perintah `head()`, tidak perlu menjadikannya sebagai sebuah variabel baru.\")\n\nsuccess_msg(\"Luar biasa! Apa yang bisa Anda amati dari luarannya? Misalnya, variabel `hp` menunjukkan tenaga setiap mobilnya. Dari tampilan enam observasi pertama itu, kita dapat melihat bahwa Datsun memiliki tenaga yang paling rendah. Silakan lanjut.\")\n<\/code>\n<div data-type=\"hint\">Perintah <code>head(mtcars)<\/code> akan menunjukkan beberapa observasi pertama dari set data <code>mtcars<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Memahami Struktur Set Data<\/h3>\n\n\n\n<p>Cara lain yang sering digunakan untuk melihat gambaran umum sebuah data adalah dengan memanfaatkan fungsi <code>str()<\/code>. Fungsi ini akan menampilkan struktur data tersebut. Untuk sebuah data frame, fungsi ini akan menampilkan hal-hal berikut.<\/p>\n\n\n\n<ul><li>Total banyaknya observasi (misalnya 32 jenis mobil)<\/li><li>Total banyaknya variabel (misalnya 11 fitur mobil)<\/li><li>Daftar lengkap nama-nama variabelnya (misalnya <code>mpg<\/code>, <code>cyl<\/code>, ...)<\/li><li>Jenis data tiap-tiap variablenya (misalnya <code>num<\/code>)<\/li><li>Observasi-observasi pertamanya<\/li><\/ul>\n\n\n\n<p>Fungsi <code>str()<\/code> tersebut sangat bermanfaat untuk diterapkan di awal-awal perjumpaan dengan sebuah set data. Fungsi ini memberikan gambar besarnya terlebih dahulu sebelum kita melakukan analisis lebih lanjut.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.41\">Latihan 1.41<\/p>\n\n\n\n<p>Selidikilah struktur <code>matcars<\/code>. Pastikan Anda mendapatkan banyak observasi, variabel, dan jenis data yang sama dengan yang telah disebutkan sebelumnya.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Selidikilah struktur mtcars\n\n\n<\/code>\n<code data-type=\"solution\">\n# Selidikilah struktur mtcars\nstr(mtcars)\n\n<\/code>\n<code data-type=\"sct\">\nex() %&gt;% check_output_expr(\"str(mtcars)\", missing_msg = \"Sudahkah Anda menggunakan fungsi `str()` terhadap `mtcars`?\")\n\nsuccess_msg(\"Kerja bagus! Anda dapat menemukan banyak informasi dengan menerapkan `str()` terhadap sebuah set data. Silakan lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Terapkan fungsi <code>str()<\/code> terhadap <code>mtcars<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Membuat Sebuah Data Frame<\/h3>\n\n\n\n<p>Di bagian sebelumnya Anda telah dapat memanggil set data bawaan R dan menyelidiki strukturnya. Di bagian ini, Anda akan membuat sendiri data framenya.<\/p>\n\n\n\n<p>Kita akan membuat data frame yang mendeskripsikan beberapa karakteristik delapan planet di tata surya kita. Karakteristik tersebut adalah sebagai berikut.<\/p>\n\n\n\n<ul><li>Jenis planetnya (planet kebumian atau raksasa gas)<\/li><li>Diameternya relatif terhadap diameter bumi<\/li><li>Periode rotasinya relatif terhadap periode rotas bumi<\/li><li>Apakah planet tersebut memiliki cincin atau tidak (TRUE atau FALSE)<\/li><\/ul>\n\n\n\n<p>Berdasarkan keempat karakteristik tersebut, kita akan membuat vektor <code>jenis<\/code>, <code>diameter<\/code>, <code>rotasi<\/code>, dan <code>cincin<\/code>. Vektor-vektor ini telah disediakan di dalam editor di Latihan 1.42. Elemen pertama dari setiap vektor tersebut bersesuaian dengan observasi pertama.<\/p>\n\n\n\n<p>Kita membuat sebuah data frame dengan menggunakan fungsi <code>data.frame()<\/code>. Sebagai argumen-argumen fungsi tersebut, kita inputkan vektor-vektor yang telah kita buat sebelumnnya. Vektor-vektor tersebut akan menjadi kolom-kolom data frame yang dihasilkan. Karena setiap kolom harus sama panjang, setiap vektor yang kita inputkan panjangnya juga harus sama.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.42\">Latihan 1.42<\/p>\n\n\n\n<p>Gunakan fungsi <code>data.frame()<\/code> untuk membuat sebuah data frame. Secara terurut, inputkan vektor <code>nama<\/code>, <code>jenis<\/code>, <code>diameter<\/code>, <code>rotasi<\/code>, dan <code>cincin<\/code> sebagai argumen-argumen fungsi tersebut. Jadikan data frame yang dihasilkan sebagai <code>df_planet<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame\ndf_planet <-\n\n<\/code>\n<code data-type=\"solution\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame\ndf_planet <- data.frame(nama, jenis, diameter, rotasi, cincin)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan mengganti apapun tentang definisi vektor-vektor yang disediakan. Cukup gunakan `data.frame()` untuk membuat `df_planet`.\"\nex() %>% check_object(\"nama\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"jenis\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"diameter\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"rotasi\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"cincin\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"df_planet\") %>% check_equal(incorrect_msg = \"Sudahkah Anda menggunakan `data.frame()` untuk membuat `df_planet`. Di dalam `data.frame()`, pastikan untuk menginputkan vektor-vektor ini dalam urutan yang tepat: `nama`, `jenis`, `diameter`, `rotasi` dan `cincin`.\")\n\nsuccess_msg(\"Kerja bagus! Selanjutnya Anda akan mencermati data frame yang baru saja Anda buat di pembahasan berikutnya. Silakan lanjut.\")\n<\/code>\n<div data-type=\"hint\">Gunakan <code>data.frame(nama, jenis, diameter, ...)<\/code>. Silakan dilanjutkan kodenya.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Data frame <code>df_planet<\/code> yang baru saja Anda buat memuat delapan observasi dan lima variabel. Data frame itu sudah tersedia di dalam editor dan langsung bisa digunakan.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.43\">Latihan 1.43<\/p>\n\n\n\n<p>Gunakan <code>str()<\/code> untuk menyelidiki struktur <code>df_planet<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame\ndf_planet <- data.frame(nama, jenis, diameter, rotasi, cincin)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Melihat struktur df_planet\n\n\n<\/code>\n<code data-type=\"solution\">\n# Melihat struktur df_planet\nstr(df_planet)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau menindih data frame `df_planet` yang telah tersedia di editor!\"\nex() %>% check_object(\"df_planet\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_output_expr(\"str(df_planet)\", missing_msg = \"Sudahkah Anda dengan tepat menampilkan struktur `df_planet`? Gunakan `str()` untuk melakukannya!\")\n\nsuccess_msg(\"Jempol! Sekarang Anda telah memiliki pemahaman terhadap set data `df_planet`. Selanjutnya Anda akan belajar bagaimana memilih elemen dari set data tersebut. Mari lanjut ke pembahasan berikutnya!\")\n<\/code>\n<div data-type=\"hint\">Gunakan <code>str(df_planet)<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Memilih Elemen-Elemen Data Frame<\/h3>\n\n\n\n<p>Serupa dengan vektor dan matriks, kita dapat memilih elemen-elemen data frame dengan menggunakan tanda kurung siku <code>[ ]<\/code>. Dengan menggunakan koma di dalamnya, kita dapat mengindikasikan baris dan kolom mana yang akan kita pilih. Misalnya:<\/p>\n\n\n\n<ul><li><code>df_ku[1, 2]<\/code> memilih elemen pada baris pertama dan kolom kedua dalam <code>df_ku<\/code>;<\/li><li><code>df_ku[1:3, 2:5]<\/code> memilih elemen-elemen dalam baris 1, 2, 3 dan kolom 2, 3, 4, 5 dalam <code>df_ku<\/code>.<\/li><\/ul>\n\n\n\n<p>Mungkin suatu waktu kita ingin memilih semua elemen dalam baris tertentu. Untuk melakukannya, misalnya, kita dapat menggunakan <code>df_ku[1, ]<\/code>. Perintah ini akan memilih semua elemen dalam baris pertama dari data frame <code>df_ku<\/code>.<\/p>\n\n\n\n<p>Sekarang mari kita terapkan teknik-teknik tersebut pada data frame <code>df_planet<\/code>!<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.44\">Latihan 1.44<\/p>\n\n\n\n<ul><li>Dari <code>df_planet<\/code>, pilihlah diameter dari Merkurius: nilai yang terletak pada baris pertama dan kolom ketiga. Tampilkan nilainya.<\/li><li>Dari <code>df_planet<\/code>, pilihlah semua data planet Mars (semua elemen pada baris keempat). Tampilkan nilai-nilainya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame\ndf_planet <- data.frame(nama, jenis, diameter, rotasi, cincin)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Tampilkan diameter dari Merkurius (baris 1, kolom 3)\n\n\n# Tampilkan data Mars (keseluruhan elemen baris keempat)\n\n\n<\/code>\n<code data-type=\"solution\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Tampilkan diameter dari Merkurius (baris 1, kolom 3)\ndf_planet[1, 3]\n\n# Tampilkan data Mars (keseluruhan elemen baris keempat)\ndf_planet[4, ]\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau menindih data frame `df_planet`!\"\nex() %>% check_object(\"df_planet\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_output_expr(\"df_planet[1,3]\", missing_msg = \"Sudahkah Anda memilih dan menampilkan diameter Merkurius dengan benar? Anda dapat menggunakan `[1,3]`.\")\n\nex() %>% check_output_expr(\"df_planet[4, ]\", missing_msg = \"Sudahkan Anda memilih dan menampilkan semua data Mars dengan tepat? Anda dapat menggunakan `[4,]`.\")\n\nsuccess_msg(\"Mantap! Selain dengan menggunakan indeksnya, Anda dapat memilih kolom-kolom sebuah data frame dengan namanya. Ingin tahu caranya? Ayo lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Untuk melihat diameter Venus, Anda perlu menjalankan <code>df_planet[2, 3]<\/code>. Bagaimana dengan diameter Merkurius kalau demikian?<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Selain dengan menggunakan indeksnya, kita dapat memilih kolom-kolom sebuah data frame dengan memakai nama-namanya.<\/p>\n\n\n\n<p>Misalkan Anda ingin memilih tiga elemen pertama dalam kolom <code>tipe<\/code>. Dengan indeks, yang dapat Anda lakukan adalah seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>df_planet&#91;1:3, 2]<\/code><\/pre>\n\n\n\n<p>Kekurangan cara seperti itu adalah bahwa kita perlu mengetahui atau mencari tahu urutan kolom <code>tipe<\/code>. Kita akan kewalahan jika set datanya besar. Untuk mengatasinya, kita dapat menggunakan nama kolomnya.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>df_planet&#91;1:3, \"tipe\"]<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.45\">Latihan 1.45<\/p>\n\n\n\n<p>Pilihlah dan tampilkan lima elemen pertama dalam kolom <code>\"diameter\"<\/code> dari <code>df_planet<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame\ndf_planet <- data.frame(nama, jenis, diameter, rotasi, cincin)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Pilih dan tampilkan lima elemen pertama dalam kolom diameter\n\n\n<\/code>\n<code data-type=\"solution\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Pilih dan tampilkan lima elemen pertama dalam kolom diameter\ndf_planet[1:5, \"diameter\"]\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau menindih data frame `df_planet`!\"\nex() %>% check_object(\"df_planet\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_output_expr(\"df_planet[1:5, \\\"diameter\\\"]\", missing_msg = \"Sudahkah Anda memilih dan menampilkan lima elemen pertama kolom diameter dengan benar? Anda dapat menggunakan `[1:5, \\\"diameter\\\"]`.\")\n\nsuccess_msg(\"Cakep! Silakan lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Anda dapat memilih lima baris pertama dengan <code>df_planet[1:5, ...]<\/code>. Apakah Anda dapat mengisi ... jika Anda hanya ingin memilih nilai-nilai dari kolom <code>\"diameter\"<\/code>?<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Planet-Planet Bercincin<\/h3>\n\n\n\n<p>Seringkali kita ingin memilih semua nilai dari sebuah kolom, yaitu variabel tertentu dalam sebuah data frame. Jika kita ingin memilih variabel <code>diameter<\/code>, misalnya, dua cara ini dapat kita gunakan.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>df_planet&#91;,3]\ndf_planet&#91;,\"diameter\"]<\/code><\/pre>\n\n\n\n<p>Akan tetapi, ada cara yang lebih singkat. Jika kolom-kolomnya memiliki nama, kita dapat gunakan <code>$<\/code> seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>df_planet$diameter<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.46\">Latihan 1.46<\/p>\n\n\n\n<ul><li>Pilihlah kolom <code>cincin<\/code> dengan menggunakan <code>$<\/code> dan simpan hasilnya sebagai sebuah variabel baru, <code>vektor_cincin<\/code>.<\/li><li>Tampilkan <code>vektor_cincin<\/code> untuk mengecek apakah Anda sudah benar.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame\ndf_planet <- data.frame(nama, jenis, diameter, rotasi, cincin)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Pilih variabel cincin dari df_planet\nvektor_cincin <- \n\n# Tampilkan vektor_cincin\n\n\n<\/code>\n<code data-type=\"solution\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Pilih variabel cincin dari df_planet\nvektor_cincin <- df_planet$cincin\n\n# Tampilkan vektor_cincin\nvektor_cincin\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau menindih data frame `df_planet`!\"\nex() %>% check_object(\"df_planet\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_cincin\") %>% check_equal(incorrect_msg = \"Apakah Anda telah memilih variabel `cincin` dari `df_planet`? Gunakan `$cincin`. Simpan hasilnya sebagai `vektor_cincin`.\")\n\nex() %>% check_output_expr(\"vektor_cincin\", missing_msg = \"Jangan lupa untuk menampilkan `vektor_cincin` setelah Anda membuatnya!\")\n\nsuccess_msg(\"Luar biasa! Silakan lanjut ke bagian berikutnya untuk mempelajari cara lainnya dalam memilih bagian tertentu dari sebuah data frame!\")\n<\/code>\n<div data-type=\"hint\"><code>df_planet$diameter<\/code> akan memilih variabel <code>diameter<\/code> dari <code>df_planet<\/code>. Bagaimana untuk variabel <code>cincin<\/code>?<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Apakah Anda ingat planet-planet apa saja yang memiliki cincin? Jika tidak, R dapat membantu Anda.<\/p>\n\n\n\n<p>Jika kita tikkan <code>vektor_cincin<\/code> dalam console, kita mendapatkan luaran seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;1] FALSE FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE<\/code><\/pre>\n\n\n\n<p>Ini artinya bahwa empat observasi (atau dalam hal ini planet) pertamanya tidak memiliki cincin (<code>FALSE<\/code>), tetapi yang lainnya memilikinya (<code>TRUE<\/code>). Akan tetapi, kita belum memiliki gambaran umum dari planet-planet yang bercincin tersebut, misalnya namanya, diameternya, dan sebagainya.<\/p>\n\n\n\n<p>Mari kita coba gunakan <code>vektor_cincin<\/code> untuk memilih data dari planet-planet yang bercincin!<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.47\">Latihan 1.47<\/p>\n\n\n\n<p>Kode di dalam editor fungsinya untuk memilih kolom <code>\"nama\"<\/code> dari semua planet yang bercincin. Modifikasilah kode tersebut sehingga tidak hanya kolom <code>\"nama\"<\/code> saja yang ditampilkan, melainkan semua kolom dari planet-planet yang bercincin.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame dan vektor\ndf_planet <- data.frame(nama, jenis, diameter, rotasi, cincin)\nvektor_cincin <- df_planet$cincin\n\n<\/code>\n<code data-type=\"sample-code\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Modifikasilah kode berikut agar memilih semua kolom planet-planet bercincin\ndf_planet[vektor_cincin, \"nama\"]\n\n<\/code>\n<code data-type=\"solution\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Modifikasilah kode berikut agar memilih semua kolom planet-planet bercincin\ndf_planet[vektor_cincin,]\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan menghapus atau menindih `df_planet` atau `vektor_cincin`!\"\nex() %>% check_object(\"df_planet\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"vektor_cincin\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_output_expr('df_planet[vektor_cincin, ]', missing_msg = \"Sudahkah Anda memodifikasi kodenya agar memilih semua kolom planet-planet yang bercincin? Gunakan `df_planet[vektor_cincin, ]`. Pastikan untuk menyertakan koma.\")\n\nsuccess_msg(\"Bagus! Tapi ini adalah cara yang agak panjang. Bagian berikutnya akan menunjukkan cara yang lebih singkat.\")\n<\/code>\n<div data-type=\"hint\">Ingat bahwa untuk memilih semua kolom, Anda perlu mengosongkan bagian kolom dalam <code>[ ]<\/code>. Artinya, Anda perlu mentikkan <code>[vektor_cincin, ]<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Planet-Planet Bercincin, Tapi Lebih Singkat<\/h3>\n\n\n\n<p>Jadi apa yang telah kita lakukan pada latihan sebelumnya? Kita telah memilih bagian dari sebuah set data (<code>df_planet<\/code>) berdasarkan kondisi-kondisi tertentu (bercincin atau tidak), dan kita telah memanggil semua data yang relevan.<\/p>\n\n\n\n<p>Sekarang kita akan berkenalan dengan fungsi <code>subset()<\/code>. Fungsi ini dapat melakukan hal yang sama dengan yang kita lakukan sebelumnya, tetapi dengan lebih singkat.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>subset(df_ku, subset = beberapa_kondisi)<\/code><\/pre>\n\n\n\n<p>Argumen pertama fungsi <code>subset()<\/code> menunjukkan data frame yang akan kita ekstrak bagiannya. Dengan menambahkan argumen kedua, kita menginformasikan ke R untuk memilih bagian-bagian yang sesuai dengan kondisi yang kita berikan.<\/p>\n\n\n\n<p>Kode di bawah ini akan memberikan hasil yang sama persis dengan yang kita lakukan di Latihan 1.47, tapi kali ini kita tidak memerlukan <code>vektor_cincin<\/code>!<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>subset(df_planet, subset = cincin)<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code output\"><code>      nama       jenis diameter rotasi cincin\n5  Jupiter Raksasa gas   11.209   0.41   TRUE\n6 Saturnus Raksasa gas    9.449   0.43   TRUE\n7   Uranus Raksasa gas    4.007  -0.72   TRUE\n8 Neptunus Raksasa gas    3.883   0.67   TRUE<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.48\">Latihan 1.48<\/p>\n\n\n\n<p>Gunakan fungsi <code>subset()<\/code> untuk memilih planet-planet yang diameternya kurang dari diameter bumi. Karena ukuran diameter dalam data frame tersebut merupakan diameter relatif terhadap diameter bumi, kondisi yang perlu digunakan adalah <code>diameter &lt; 1<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame dan vektor\ndf_planet <- data.frame(nama, jenis, diameter, rotasi, cincin)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Pilihlah yang diameternya < 1\n\n\n<\/code>\n<code data-type=\"solution\">\n# Data frame df_planet dari latihan sebelumnya telah tersedia\n\n# Pilihlah yang diameternya < 1\nsubset(df_planet, subset = diameter < 1)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau menindih data frame `df_planet` yang sudah disediakan untuk Anda!\"\nex() %>% check_object(\"df_planet\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex()  %>% check_correct({\n  ex() %>% check_output_expr(\"subset(df_planet, subset = diameter < 1)\", missing_msg = \"Sudahkah Anda menginputkan `subset = ...` sebagai argumen dalam fungsi `subset()`? Kondisi yang digunakan di sini adalah `diameter < 1`. Tampilkan hasilnya.\") \n\n}, {\n  ex() %>% check_function(\"subset\") %>% check_arg('x') %>% check_equal(incorrect_msg = \"Argumen pertama yang perlu diinputkan ke dalam `subset()` seharusnya adalah `df_planet`.\")\n\n})\nsuccess_msg(\"Kerja hebat! Tidak hanya singkat, fungsi `subset()` mungkin juga lebih mudah dipahami orang lain ketika membaca kode Anda. Silakan lanjut.\")\n<\/code>\n<div data-type=\"hint\">Perintah <code>subset(df_planet, subset = ...)<\/code> hampir menyelesaikannya. Dapatkah Anda mengisi bagian yang kosong?<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Sortir<\/h3>\n\n\n\n<p>Kita dapat menyortir data kita berdasarkan variabel tertentu dalam sebuah set data. Kita dapat melakukannya di R dengan menggunakan fungsi <code>order()<\/code>.<\/p>\n\n\n\n<p>Fungsi tersebut akan memberikan posisi-posisi terperingkat untuk setiap elemen dalam sebuah variabel. Misalnya adalah seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>a &lt;- c(1000, 10, 100)\norder(a)<\/code><\/pre>\n\n\n\n<p>Penggunaan <code>order()<\/code> terhadap vektor <code>a<\/code> tersebut mengurutkan setiap elemennya sehingga luarannya adalah seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>&#91;1] 2 3 1<\/code><\/pre>\n\n\n\n<p>Bilangan 10 yang merupakan elemen ke-2 merupakan elemen terkecil, sehingga 2 ditampilkan sebagai urutan pertama dalam luarannya. Bilangan 100 merupakan bilangan terkecil yang kedua, sehingga posisinya, yaitu 3, dituliskan setelahnya. Terakhir, adalah 1000 yang posisinya dituliskan di bagian terakhir.<\/p>\n\n\n\n<p>Ini artinya kita dapat menggunakan hasil <code>order(a)<\/code> untuk merubah susunan vektor <code>a<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>a&#91;order(a)]<\/code><\/pre>\n\n\n\n<p>Dengan kode itu, kita akan mendapatkan hasil seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code output\"><code>&#91;1]   10  100 1000<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.49\">Latihan 1.49<\/p>\n\n\n\n<p>Bereksperimenlah dengan fungsi order() di dalam editor. Jika sudah, kirimkan jawaban Anda dengan mengklik tombol Submit dan amatilah hasilnya.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n<\/code>\n<code data-type=\"sample-code\">\n# Bermain-mainlah dengan fungsi order()\n\n\n<\/code>\n<code data-type=\"solution\">\n# Bermain-mainlah dengan fungsi order()\n\n\n<\/code>\n<code data-type=\"sct\">\nsuccess_msg(\"Jempol! Sekarang mari kita gunakan fungsi `order()` untuk menyortir data frame Anda!\")\n<\/code>\n<div data-type=\"hint\">Silakan bermain-mainlah dengan fungsi <code>order()<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Menyortir Data Frame<\/h3>\n\n\n\n<p>Sekarang Anda telah paham tentang fungsi <code>order()<\/code>. Mari kita gunakan fungsi itu untuk menyortir data frame kita sehingga datanya terurut dari planet terkecil ke terbesar. Kita sortir datanya berdasarkan kolom <code>diameter<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.50\">Latihan 1.50<\/p>\n\n\n\n<ul><li>Terapkah fungsi <code>order()<\/code> terhadap <code>df_planet$diameter<\/code> (kolom diameter dalam <code>df_planet<\/code>). Jadikan hasilnya sebagai vektor <code>posisi<\/code>.<\/li><li>Ubahlah susunan <code>df_planet<\/code> dengan menggunakan vektor <code>posisi<\/code> sebagai indeks-indeks barisnya di dalam tanda kurung siku. Tampilkan hasilnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# Pendefinisian vektor-vektor\nnama <- c(\"Merkurius\", \"Venus\", \"Bumi\", \"Mars\", \"Jupiter\", \"Saturnus\", \"Uranus\", \"Neptunus\")\njenis <- c(\"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Planet kebumian\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\", \"Raksasa gas\")\ndiameter <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883)\nrotasi <- c(58.64, -243.02, 1, 1.03, 0.41, 0.43, -0.72, 0.67)\ncincin <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)\n\n# Membuat sebuah data frame dan vektor\ndf_planet <- data.frame(nama, jenis, diameter, rotasi, cincin)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Data frame df_planet telah disediakan untuk Anda\n\n# Gunakan order() untuk membuat vektor posisi\nposisi <- \n\n# Gunakan vektor posisi untuk mengubah susunan df_planet\n\n\n<\/code>\n<code data-type=\"solution\">\n# Data frame df_planet telah disediakan untuk Anda\n\n# Gunakan order() untuk membuat vektor posisi\nposisi <-  order(df_planet$diameter)\n\n# Gunakan vektor posisi untuk mengubah susunan df_planet\ndf_planet[posisi, ]\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau mengubah data frame `df_planet` yang telah disediakan untuk Anda!\"\nex() %>% check_object(\"df_planet\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"posisi\") %>% check_equal(incorrect_msg = \"Sudahkah Anda menghitung variabel `posisi` dengan benar? Gunakan `order(df_diameter$diameter)`.\")\n\nex() %>% check_output_expr(\"df_planet[posisi,]\",missing_msg = \"Gunakan `df_planet[posisi, ]` untuk menyortir `df_planet`. Koma di dalam tanda kurung siku tersebut krusial!\")\n\nsuccess_msg(\"Luar biasa! Latihan ini merupakan latiahan terakhir di subbab data frame. Ingat bahwa data frame sangat penting di R, Anda akan membutuhkannya setiap saat. Struktur data lain yang sering digunakan adalah daftar atau list. Topik tersebut akan dibahas pada bagian berikutnya. Semangat!\")\n<\/code>\n<div data-type=\"hint\">- Gunakan <code>order(df_planet$diameter)<\/code> untuk membuat vektor <code>posisi<\/code>. - Sekarang Anda dapat menggunakan vektor <code>posisi<\/code> di dalam tanda kurung siku: <code>df_planet[...]<\/code>. Dapatkah Anda mengisi titik-titiknya?<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Uji Pengetahuan Anda<\/h3>\n\n\n<script>\n                            if (window.qmn_quiz_data === undefined) {\n                                    window.qmn_quiz_data = new Object();\n                            }\n                    <\/script><script>window.qmn_quiz_data[\"6\"] = {\"quiz_id\":\"6\",\"quiz_name\":\"Data Frame\",\"disable_answer\":0,\"ajax_show_correct\":0,\"progress_bar\":\"0\",\"contact_info_location\":0,\"qpages\":{\"1\":{\"id\":\"1\",\"quizID\":\"6\",\"pagekey\":\"10JmLdZO\",\"hide_prevbtn\":\"0\"}},\"skip_validation_time_expire\":0,\"timer_limit_val\":\"0\",\"disable_scroll_next_previous_click\":0,\"disable_first_page\":\"0\",\"enable_result_after_timer_end\":0,\"enable_quick_result_mc\":0,\"end_quiz_if_wrong\":0,\"form_disable_autofill\":0,\"disable_mathjax\":0,\"enable_quick_correct_answer_info\":0,\"quick_result_correct_answer_text\":\"Correct! You have selected correct answer.\",\"quick_result_wrong_answer_text\":\"Wrong! You have selected wrong answer.\",\"quiz_processing_message\":\"\",\"not_allow_after_expired_time\":0,\"scheduled_time_end\":false,\"error_messages\":{\"email_error_text\":\"Not a valid e-mail address!\",\"number_error_text\":\"This field must be a number!\",\"incorrect_error_text\":\"The entered text is not correct!\",\"empty_error_text\":\"Please complete all required fields!\",\"url_error_text\":\"The entered URL is not valid!\",\"minlength_error_text\":\"Required atleast %minlength% characters.\",\"maxlength_error_text\":\"Maximum %maxlength% characters allowed.\"},\"first_page\":false}\n                    <\/script><div class='qsm-quiz-container qsm-quiz-container-6 qmn_quiz_container mlw_qmn_quiz  quiz_theme_default  '>\n\t\t\t\t\t<form name=\"quizForm6\" id=\"quizForm6\" action=\"\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219\" method=\"POST\" class=\"qsm-quiz-form qmn_quiz_form mlw_quiz_form\" novalidate enctype=\"multipart\/form-data\">\n\t\t\t\t<input type=\"hidden\" name=\"qsm_hidden_questions\" id=\"qsm_hidden_questions\" value=\"\">\n\t\t\t\t<div id=\"mlw_error_message\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t<span id=\"mlw_top_of_quiz\"><\/span>\n\t\t\t\t\t\t\t<section class=\"qsm-page \">\n\t\t\t\t\t\t\t\t<div class=\"quiz_section quiz_begin\">\n\t\t\t\t\t\t<div class='qsm-before-message mlw_qmn_message_before'>\n\t\t\t\t<p>Kerjakan soal-soal tentang Data Frame berikut dengan tepat!<\/p>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-22 \" data-qid=\"22\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Perintah berikut menunjukkan beberapa baris pertama data frame df_ku. Lengkapi bagian yang kosong! <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p><input autocomplete='off' type='text' class='qmn_fill_blank ' name='question22[]' \/>(df_ku)<\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-3 question-section-id-23 \" data-qid=\"23\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Tuliskan baris perintah untuk melihat struktur data frame yang bernama df. <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<input autocomplete=&#039;off&#039;  type=\"text\" class=\"mlw_answer_open_text \" name=\"question23\"  \/>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-1 question-section-id-24 \" data-qid=\"24\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Benar atau salah. Fungsi data.frame() tidak mementingkan urutan argumen-argumen yang menjadi inputnya. <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class=\"qmn_radio_answers qmn_radio_horizontal_answers \">\n\t\t\t\t\t\t\t<span class=\"mlw_horizontal_choice  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"radio\" class=\"qmn_quiz_radio qmn-multiple-choice-input\" name=\"question24\" id=\"question24_1\" value=\"0\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question24_1\">\n\t\t\t\t\t\t\tBenar\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"mlw_horizontal_choice  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"radio\" class=\"qmn_quiz_radio qmn-multiple-choice-input\" name=\"question24\" id=\"question24_2\" value=\"1\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question24_2\">\n\t\t\t\t\t\t\tSalah\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question24\" id=\"question24_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-4 question-section-id-25 \" data-qid=\"25\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Anda akan memilih variabel &quot;usia&quot; dalam data frame &quot;demografi&quot;. Kode yang dapat digunakan adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p><\/p>\n\t<\/div>\n\t\t<div class=\"qmn_check_answers \">\n\t\t\t\t\t\t\t<div class=\"qsm_check_answer  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"checkbox\" class=\"qsm-multiple-response-input\"  name=\"question25[]\" id=\"question25_1\" value=\"0\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question25_1\">\n\t\t\t\t\t\t\tdemografi[\"usia\"]\t\t\t\t\t\t<\/label>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"qsm_check_answer  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"checkbox\" class=\"qsm-multiple-response-input\"  name=\"question25[]\" id=\"question25_2\" value=\"1\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question25_2\">\n\t\t\t\t\t\t\tdemografi[\"usia\",]\t\t\t\t\t\t<\/label>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"qsm_check_answer  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"checkbox\" class=\"qsm-multiple-response-input\"  name=\"question25[]\" id=\"question25_3\" value=\"2\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question25_3\">\n\t\t\t\t\t\t\tdemografi[,\"usia\"]\t\t\t\t\t\t<\/label>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"qsm_check_answer  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"checkbox\" class=\"qsm-multiple-response-input\"  name=\"question25[]\" id=\"question25_4\" value=\"3\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question25_4\">\n\t\t\t\t\t\t\tdemografi$\"usia\"\t\t\t\t\t\t<\/label>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"qsm_check_answer  mrq_checkbox_class\">\n\t\t\t\t\t\t<input type=\"checkbox\" class=\"qsm-multiple-response-input\"  name=\"question25[]\" id=\"question25_5\" value=\"4\" \/>\n\t\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question25_5\">\n\t\t\t\t\t\t\tdemografi$usia\t\t\t\t\t\t<\/label>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-26 \" data-qid=\"26\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Perhatikan deskripsi soal berikut. Perintah yang dapat digunakan adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p>Anda memiliki sebuah data frame bernama \"asean\" yang isinya adalah negara-negara ASEAN beserta dengan atribut-atributnya. Salah satu variabelnya adalah \"populasi\", yang menunjukkan jumlah penduduk (dalam juta). Anda ingin mendapatkan negara-negara yang populasinya maksimal 50 juta.<\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question26-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question26\" id=\"question26_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question26_1\">\n\t\t\t\t\tsubset(asean, populasi)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question26-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question26\" id=\"question26_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question26_2\">\n\t\t\t\t\tsubset(asean, populasi &lt;= 50)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question26-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question26\" id=\"question26_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question26_3\">\n\t\t\t\t\tsubset(asean, subset = populasi &lt;= 50)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question26-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question26\" id=\"question26_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question26_4\">\n\t\t\t\t\tsubset(asean, subset = populasi &lt; 50)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question26-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question26\" id=\"question26_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question26_5\">\n\t\t\t\t\tsubset(asean, subset = populasi &gt;= 50)\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question26\" id=\"question26_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-27 \" data-qid=\"27\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Perintah order(c(12, 5, 8, 13)) akan menghasilkan luaran ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p>[1]\u00a0 <input autocomplete='off' type='text' class='qmn_fill_blank ' name='question27[]' \/>\u00a0 <input autocomplete='off' type='text' class='qmn_fill_blank ' name='question27[]' \/>\u00a0 <input autocomplete='off' type='text' class='qmn_fill_blank ' name='question27[]' \/>\u00a0 <input autocomplete='off' type='text' class='qmn_fill_blank ' name='question27[]' \/><\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/section>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_question_list\" value=\"22Q23Q24Q25Q26Q27Q\" \/>\n\t\t\t\t\t\t<div id=\"mlw_error_message_bottom\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_all_questions_count\" id=\"qmn_all_questions_count\" value=\"6\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"total_questions\" id=\"total_questions\" value=\"6\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer\" id=\"timer\" value=\"0\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer_ms\" id=\"timer_ms\" value=\"0\"\/>\n\t\t\t\t\t<input type=\"hidden\" class=\"qmn_quiz_id\" name=\"qmn_quiz_id\" id=\"qmn_quiz_id\" value=\"6\" \/>\n\t\t\t\t\t<input type='hidden' name='complete_quiz' value='confirmation' \/>\n\t\t\t\t\t\t\t\t\t<\/form>\n\t\t<\/div>\n\t\t<div style=\"display: none;\" class=\"qsm-popup qsm-popup-slide\" id=\"modal-4\" aria-hidden=\"false\"><div class=\"qsm-popup__overlay\" tabindex=\"-1\" data-micromodal-close=\"\"><div class=\"qsm-popup__container qmn_quiz_container\" role=\"dialog\" aria-modal=\"true\"><div class=\"qsm-popup__content\"><img src=\"https:\/\/i0.wp.com\/people.usd.ac.id\/~ydkristanto\/wp-content\/plugins\/quiz-master-next\/assets\/clock.png?w=750&#038;ssl=1\" alt=\"clock.png\" data-recalc-dims=\"1\"\/><p class=\"qsm-time-up-text\"> Time's up<\/p><\/div><footer class=\"qsm-popup__footer\"><button class=\"qsm-popup-secondary-button qmn_btn\" data-micromodal-close=\"\" aria-label=\"Close this dialog window\" onclick=\"location.reload();\">Cancel<\/button><\/footer><\/div><\/div><\/div>\n\n\n<!--nextpage-->\n\n\n\n<h2>Daftar<\/h2>\n\n\n\n<p class=\"has-drop-cap\">Tidak seperti vektor, sebuah daftar atau list dapat berisi komponen-komponen yang jenis datanya berbeda-beda. Di subbab ini, Anda akan belajar bagaimana membuat dan menamai daftar, serta memilih bagian tertentu dari sebuah daftar.<\/p>\n\n\n\n<h3>Selayang Pandang Tentang Daftar<\/h3>\n\n\n\n<p>Selamat! Sampai di sini, Anda telah familier dengan tiga struktur data berikut.<\/p>\n\n\n\n<ul><li><strong>Vektor<\/strong>: dapat berisi nilai-nilai numerik, karakter, atau logika. Elemen-elemen dalam sebuah vektor semuanya memiliki jenis data yang sama.<\/li><li><strong>Matriks<\/strong>: dapat memuat nilai-nilai numerik, karakter, atau logika. Elemen-elemen sebuah matriks semuanya berjenis data yang sama.<\/li><li><strong>Data frame<\/strong>: dapat memuat nilai-nilai numerik, karakter, atau logika. Dalam sebuah kolom semua elemennya berjenis data sama, tetapi kolom yang berbeda dapat berisi data yang jenisnya berbeda.<\/li><\/ul>\n\n\n\n<p>Lumayan untuk yang baru mengenal R, bukan? Sekarang kita akan mempelajari struktur data berikutnya, yaitu daftar.<\/p>\n\n\n\n<p>Sebuah <strong>daftar<\/strong> di R memungkinkan kita untuk menghimpun berbagai macam objek ke dalam satu nama (yaitu nama daftar tersebut) secara terurut. Objek tersebut dapat berupa matriks, vektor, data frame, bahkan daftar lain, dan lain sebagainya. Bahkan objek-objek tersebut tidak perlu berhubungan satu sama lain untuk dijadikan daftar.<\/p>\n\n\n\n<h3>Membuat Daftar<\/h3>\n\n\n\n<p>Mari kita buat daftar pertama kita! Kita gunakan fungsi <code>list()<\/code> seperti berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>daftar_ku &lt;- list(komp1, komp2, ...)<\/code><\/pre>\n\n\n\n<p>Argumen-argumen dalam fungsi <code>list()<\/code> adalah komponen-komponennya. Ingat, komponen tersebut bisa berjenis apa saja.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.51\">Latihan 1.51<\/p>\n\n\n\n<p>Buatlah sebuah daftar bernama <code>daftar_ku<\/code> yang berisi variabel-variabel <code>vektor_ku<\/code>, <code>matriks_ku<\/code>, dan <code>df_ku<\/code> sebagai komponen-komponennya.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n\n<\/code>\n<code data-type=\"sample-code\">\n# Vektor numerik dari 1 sampai 10\nvektor_ku <- 1:10 \n\n# Matriks numerik dari 1 sampai 9\nmatriks_ku <- matrix(1:9, ncol = 3)\n\n# Sepuluh elemen pertama dari data frame mtcars\ndf_ku <- mtcars[1:10,]\n\n# Buatlah daftar dengan komponen-komponen tersebut:\ndaftar_ku <-\n\n<\/code>\n<code data-type=\"solution\">\n# Vektor numerik dari 1 sampai 10\nvektor_ku <- 1:10 \n\n# Matriks numerik dari 1 sampai 9\nmatriks_ku <- matrix(1:9, ncol = 3)\n\n# Sepuluh elemen pertama dari data frame mtcars\ndf_ku <- mtcars[1:10,]\n\n# Buatlah daftar dengan komponen-komponen tersebut:\ndaftar_ku <- list(vektor_ku, matriks_ku, df_ku)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau mengganti definisi variabel-variabel `vektor_ku`, `matriks_ku` atau `df_ku`!\"\nex() %>% check_object(\"vektor_ku\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"matriks_ku\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"df_ku\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"daftar_ku\") %>% check_equal(incorrect_msg = \"Sepertinya `daftar_ku` tidak berisi elemen-elemen yang tepat. Pastikan untuk memasukkan variabel-variabel `vektor_ku`, `matriks_ku` dan `df_ku` ke fungsi `list()`, dipisah dengan tanda koma dan terurut seperti itu.\")\n\nsuccess_msg(\"Luar biasa! Lanjut ke bagian berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Gunakan fungsi <code>list()<\/code> dengan input <code>vektor_ku<\/code>, <code>matriks_ku<\/code>, dan <code>df_ku<\/code> sebagai argumen-argumennya.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Membuat Sebuah Daftar Bernama<\/h3>\n\n\n\n<p>Kita akan mudah mengelola daftar kita ketika daftar tersebut bernama. Untuk memberikan nama terhadap tiap-tiap komponen daftar, kita dapat menggunakan kode berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>daftar_ku &lt;- list(nama1 = komp1, \n                nama2 = komp2)<\/code><\/pre>\n\n\n\n<p>Kode tersebut akan memberi nama komponen-komponen <code>daftar_ku<\/code> dengan <code>nama1<\/code>, <code>nama2<\/code>, dan seterusnya. Jika Anda ingin menamai sebuah daftar setelah daftar itu selesai dibuat, Anda dapat menggunakan fungsi <code>names()<\/code> seperti yang telah kita lakukan terhadap vektor. Perintah berikut ekuivalen dengan yang kita lakukan sebelumnya.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>daftar_ku &lt;- list(komp1, komp2)\nnames(daftar_ku) &lt;- c(\"nama1\", \"nama2\")<\/code><\/pre>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.52\">Latihan 1.52<\/p>\n\n\n\n<ul><li>Ubahlah kode pada latihan sebelumnya (lihat editor) dengan menambahkan nama kepada komponen-komponennya. Gunakan <code>vek<\/code> sebagai nama <code>vektor_ku<\/code>, <code>mat<\/code> sebagai nama <code>matriks_ku<\/code>, dan <code>df<\/code> sebagai nama <code>df_ku<\/code>.<\/li><li>Tampilkan hasilnya agar Anda dapat mengamati hasilnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\n# no pec\n\n<\/code>\n<code data-type=\"sample-code\">\n# Vektor numerik dari 1 sampai 10\nvektor_ku <- 1:10 \n\n# Matriks numerik dari 1 sampai 9\nmatriks_ku <- matrix(1:9, ncol = 3)\n\n# Sepuluh elemen pertama dari data frame mtcars\ndf_ku <- mtcars[1:10,]\n\n# Modifikasi perintah list() untuk memberikan nama setiap komponennya\ndaftar_ku <- list(vek = vektor_ku, mat = matriks_ku, df = df_ku)\n\n# Tampilkan hasilnya\n\n\n<\/code>\n<code data-type=\"solution\">\n# Vektor numerik dari 1 sampai 10\nvektor_ku <- 1:10 \n\n# Matriks numerik dari 1 sampai 9\nmatriks_ku <- matrix(1:9, ncol = 3)\n\n# Sepuluh elemen pertama dari data frame mtcars\ndf_ku <- mtcars[1:10,]\n\n# Modifikasi perintah list() untuk memberikan nama setiap komponennya\ndaftar_ku <- list(vektor_ku, matriks_ku, df_ku)\n\n# Tampilkan hasilnya\ndaftar_ku\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau mengganti definisi variabel-variabel `vektor_ku`, `matriks_ku` atau `df_ku`!\"\nex() %>% check_object(\"vektor_ku\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"matriks_ku\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"df_ku\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"daftar_ku\") %>% check_equal(incorrect_msg = \"Sepertinya `daftar_ku` tidak berisi elemen-elemen yang tepat.\")\n\nex() %>% check_object(\"daftar_ku\") %>% check_equal(eq_condition = \"equal\",incorrect_msg = \"Sepertinya `daftar_ku` tidak memuat penamaan yang tepat untuk komponen-komponennya. Pastikan secara terurut Anda menggunakan nama `vek`, `mat` dan `df`. Lihatlah Hint jika Anda mengalami kesulitan.\")\n\nsuccess_msg(\"Jempol! Sekarang Anda tidak hanya mengetahui cara membuat sebuah daftar, Anda juga dapat memberinya nama. Kemampuan ini sangatlah berguna dalam praktik mengelola data. Lanjutkan ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Cara pertama pemberian nama sebuah daftar adalah yang paling mudah. Kodenya seperti ini: <code>daftar_ku <- list(vek = vektor_ku)<\/code>. Lanjutkan untuk mengisi komponen kedua dan ketiga.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Sekarang kita akan membuat sebuah daftar untuk menyimpan informasi tentang film yang berjudul \"The Dark Knight\"!<\/p>\n\n\n\n<p>Tiga variabel telah dibuat untuk Anda: <code>film<\/code>, <code>akt<\/code>, dan <code>ulas<\/code> di dalam editor. Anda tentu bisa mengeksplorasinya melalui editor tersebut. Selanjutnya, silakan buatlah sebuah daftar berdasarkan ketiga variabel tersebut di Latihan 1.53.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.53\">Latihan 1.53<\/p>\n\n\n\n<p>Lengkapilah kode di dalam editor untuk membuat <code>daftar_dark_knight<\/code>. Tiga elemen yang dimuatnya:<\/p>\n\n\n\n<ul><li><code>judulfilm<\/code>: data teks yang menunjukkan judul filmnya (disimpan dalam <code>film<\/code>);<\/li><li><code>aktor<\/code>: sebuah vektor yang berisi nama-nama aktor utamanya (disimpan dalam <code>akt<\/code>);<\/li><li><code>ulasan<\/code>: sebuah data frame yang berisi beberapa review (disimpan dalam <code>ulas<\/code>).<\/li><\/ul>\n\n\n\n<p>Jangan lupa untuk memberi nama setiap komponennya dengan tepat. Nama-namanya adalah <code>judulfilm<\/code>, <code>aktor<\/code>, dan <code>ulasan<\/code>.<\/p>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\nfilm <- \"The Dark Knight\"\nakt      <- c(\"Christian Bale\", \"Heath Ledger\", \"Aaron Eckhart\", \"Michael Caine\", \"Maggie Gyllenhaal\")\nsumber     <- c(\"IMDb1\",\"IMDb2\",\"IMDb3\")\nkomentar    <- c(\"The Batman of our dreams! So much more than a comic book movie\", \"9.4 Top Contender for 'Best Superhero Movie'\", \"Really good but not as 4th best movie of all time. That's just clear.\")\nrating      <- c(10, 9, 8)\nulas     <- data.frame(rating, sumber, komentar)\nrm(rating, sumber, komentar)\n\n<\/code>\n<code data-type=\"sample-code\">\n# Variabel-variabel film, akt, dan ulas telah tersedia\n\n# Selesaikan kodenya untuk membuat daftar_dark_knight\ndaftar_dark_knight <- list(judulfilm = film)\n\n<\/code>\n<code data-type=\"solution\">\n# Variabel-variabel film, akt, dan ulas telah tersedia\n\n# Selesaikan kodenya untuk membuat daftar_dark_knight\ndaftar_dark_knight <- list(judulfilm = film, aktor = akt, ulasan = ulas)\n\n<\/code>\n<code data-type=\"sct\">\nmsg = \"Jangan menghapus atau mengganti pendefinisian variabel-variabel yang telah tersedia!\"\nex()  %>% check_object(\"film\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\n\nex()  %>% check_object(\"ulas\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\n\nex()  %>% check_object(\"akt\", undefined_msg = msg)  %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_object(\"daftar_dark_knight\") %>% check_equal(incorrect_msg = \"Sepertinya `daftar_dark_knight` tidak berisi elemen-elemen yang tepat: elemen pertamanya seharusnya `film`, yang kedua `akt`, dan yang ketiga `ulas`.\")\n\nex() %>% check_object(\"daftar_dark_knight\") %>% check_equal(eq_condition = \"equal\",incorrect_msg = \"Sepertinya `daftar_dark_knight` penamaan komponen-komponennya masih keliru: namai elemen pertamanya `judulfilm`, elemen kedua `aktor`, dan elemen ketiga `ulasan`.\")\n\nsuccess_msg(\"Luar biasa! Anda mengetahui bagaimana membuat dan menamai sebuah daftar. Seperti pada subbab-subbab sebelumnya, mari belajar bagaimana memilih elemen-elemen sebuah daftar. Silakan lanjut ke bagian berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Bagian pertama jawabannya adalah <code>daftar_dark_knight <- list(judulfilm = film)<\/code>. Silakan inputkan <code>akt<\/code> dan <code>ulas<\/code>, dan namai dengan tepat.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Memilih Elemen dari Sebuah Daftar<\/h3>\n\n\n\n<p>Sebuah daftar seringkali tersusun atas berbagai macam elemen dan komponen. Dari daftar tersebut, kita juga ingin mendapatkan elemen atau komponen tertentu.<\/p>\n\n\n\n<p>Salah satu cara untuk mendapatkan sebuah komponen adalah dengan menggunakan posisinya di dalam daftar. Misalnya, untuk memilih komponen pertama dalam <code>daftar_dark_knight<\/code>, kita dapat menggunakan kode seperti ini.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>daftar_dark_knight&#91;&#91;1]]<\/code><\/pre>\n\n\n\n<p>Penting untuk diingat: memilih elemen dari sebuah vektor dilakukan dengan satu tanda kurung siku <code>[ ]<\/code>, tetapi memilih komponen dari sebuah daftar kita gunakan dua tanda kurung siku <code>[[ ]]<\/code>. Jangan sampai terbalik!<\/p>\n\n\n\n<p>Kita juga dapat menyebutkan nama komponennya, dengan <code>[[ ]]<\/code> atau tanda <code>$<\/code>. Kode berikut sama-sama akan memilih data frame yang merepresentasikan ulasan.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>daftar_dark_knight&#91;&#91;\"ulasan\"]]\ndaftar_dark_knight$ulasan<\/code><\/pre>\n\n\n\n<p>Selain memilih komponen, kita juga dapat memilih elemen dari komponen tersebut. Misalnya, dengan <code>daftar_dark_knight[[2]][1]<\/code> kita memilih elemen pertama (<code>[1]<\/code>) dari komponen kedua (<code>daftar_dark_knight[[2]]<\/code>, yaitu <code>aktor<\/code>). Jika Anda cek, Anda akan mendapatkan Christian Bale.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.54\">Latihan 1.54<\/p>\n\n\n\n<ul><li>Dari <code>daftar_dark_knight<\/code>, pilihlah vektor yang merepresentasikan aktor-aktornya. Tampilkan vektor ini.<\/li><li>Dari daftar yang sama, pilihlah elemen kedua dari vektor yang merepresentasikan aktor-aktor tersebut. Tampilkan juga hasilnya.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\nfilm <- \"The Dark Knight\"\nakt      <- c(\"Christian Bale\", \"Heath Ledger\", \"Aaron Eckhart\", \"Michael Caine\", \"Maggie Gyllenhaal\")\nsumber     <- c(\"IMDb1\",\"IMDb2\",\"IMDb3\")\nkomentar    <- c(\"The Batman of our dreams! So much more than a comic book movie\", \"9.4 Top Contender for 'Best Superhero Movie'\", \"Really good but not as 4th best movie of all time. That's just clear.\")\nrating      <- c(10, 9, 8)\nulas     <- data.frame(rating, sumber, komentar)\ndaftar_dark_knight <- list(judulfilm = film, aktor = akt, ulasan = ulas)\nrm(rating, sumber, komentar)\n\n<\/code>\n<code data-type=\"sample-code\">\n# daftar_dark_knight telah tersedia untuk Anda\n\n# Tampilkan vektor yang menunjukkan aktor-aktornya\n\n\n# Tampilkan elemen kedua dari vektor yang menunjukkan aktor-aktornya\n\n\n<\/code>\n<code data-type=\"solution\">\n# daftar_dark_knight telah tersedia untuk Anda\n\n# Tampilkan vektor yang menunjukkan aktor-aktornya\ndaftar_dark_knight$aktor\n\n# Tampilkan elemen kedua dari vektor yang menunjukkan aktor-aktornya\ndaftar_dark_knight$aktor[2]\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan menghapus atau menindih pendefinisian `daftar_dark_knight` yang telah tersedia!\"\nex() %>% check_object(\"daftar_dark_knight\", undefined_msg = msg) %>% check_equal(incorrect_msg = msg)\n\nex() %>% check_output_expr(\"daftar_dark_knight$aktor\", missing_msg = \"Sudahkah Anda memilih dan menampilkan vektor yang merepresentasikan aktor-aktornya? Anda, misalnya, dapat menggunakan `daftar_dark_knight$aktor`.\")\n\nex() %>% check_output_expr(\"daftar_dark_knight$aktor[2]\", missing_msg = \"Untuk memilih elemen kedua dari vektor aktor, Anda perlu merangkai pemilihannya: `daftar_dark_knight$aktor` menunjukkan vektor aktor-aktornya, sehingga Anda dapat menggunakan `[2]` untuk memilih elemen keduanya.\")\n\nsuccess_msg(\"Hebat! Pemilihan elemen dan komponen dari sebuah daftar mudah, bukan? Silakan lanjut ke pembahasan berikutnya.\")\n<\/code>\n<div data-type=\"hint\">Untuk memilih elemen ketiga dari vektor yang merepresentasikan aktor-aktornya, Anda dapat menggunakan <code>daftar_dark_knight$aktor[3]<\/code>. Bagaimana jika elemen kedua yang ingin dipilih?<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Berikut ini adalah ulasan film yang juga dibintangi oleh Christian Bale, Ford v Ferrari.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><thead><tr><th class=\"has-text-align-center\" data-align=\"center\">Rating<\/th><th>Komentar<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">9<\/td><td>Entertaining In Every Way A Film Can Be<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">8<\/td><td>Turbo charged!<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">9<\/td><td>Filled with Energy<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">8<\/td><td>All Gas, No Brakes<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">6<\/td><td>It's okay<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Akan sangat bermanfaat jika kita dapat mengumpulkan berbagai macam informasi terkait dengan sebuah film, seperti judul, aktor, dan ulasannya, kemudian menyimpannya ke dalam sebuah variabel. Karena informasi tersebut memiliki bentuk-bentuk yang berbeda, kita dapat menggabungkannya ke dalam sebuah daftar.<\/p>\n\n\n\n<p>Dua variabel, <code>judul_film<\/code> dan <code>aktor_film<\/code>, telah tersedia di dalam editor. Variabel <code>judul_film<\/code> berisi judul dari film yang telah kita singgung sebelumnya dan <code>aktor_film<\/code> berisi nama-nama aktor yang membintangi film tersebut.<\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-style-twentytwentyone-border\"><div class=\"wp-block-group__inner-container\">\n<p class=\"latihan-r\" id=\"latihan-1.55\">Latihan 1.55<\/p>\n\n\n\n<ul><li>Buatlah dua vektor, <code>rating<\/code> dan <code>komentar<\/code>, yang berisi informasi tentang ulasan yang disajikan pada tabel sebelumnya.<\/li><li>Carilah rerata vektor <code>rating<\/code> dan simpanlah sebagai <code>rrt_ulasan<\/code>.<\/li><li>Gabungkan vektor-vektor <code>rating<\/code> dan <code>komentar<\/code> ke dalam sebuah data frame, dan namai data frame tersebut sebagai <code>df_ulasan<\/code>.<\/li><li>Buatlah sebuah daftar yang bernama <code>daftar_fordferr<\/code> yang berisi <code>judul_film<\/code>, <code>aktor_film<\/code>, <code>df_ulasan<\/code>, dan <code>rrt_ulasan<\/code>. Tampilkan daftar tersebut.<\/li><\/ul>\n\n\n\n<div data-show-run-button=\"\" data-datacamp-exercise=\"\" data-lang=\"r\">\n<code data-type=\"pre-exercise-code\">\njudul_film <- \"Ford v Ferrari\"\naktor_film <- c(\"Matt Damon\", \"Christian Bale\", \"Jon Bernthal\", \"Caitr\u00edona Balfe\", \"Josh Lucas\", \"Noah Jupe\")\n\n<\/code>\n<code data-type=\"sample-code\">\n# Gunakan tabel sebelumnya untuk membuat vektor rating dan komentar\nrating <- c(9, 8, 9, 8, ___ \nkomentar <- c(\"Entertaining In Every Way A Film Can Be\", \"Turbo charged!\", \"Filled with Energy\", \"All Gas, No Brakes\", ___ \n\n# Simpanlah rerata ratingnya sebagai rrt_ulasan\n\n\n# Gabungkan rating dan komentar menjadi data frame df_ulasan\n\n\n# Buat dan tampilkan sebuah daftar yang bernama daftar_fordferr\n\n\n\n<\/code>\n<code data-type=\"solution\">\n# Gunakan tabel sebelumnya untuk membuat vektor rating dan komentar\nrating <- c(9, 8, 9, 8, 6)\nkomentar <- c(\"Entertaining In Every Way A Film Can Be\", \"Turbo charged!\", \"Filled with Energy\", \"All Gas, No Brakes\", \"It's okay\")\n\n# Simpanlah rerata ratingnya sebagai rrt_ulasan\nrrt_ulasan <- mean(rating)\n\n# Gabungkan rating dan komentar menjadi data frame df_ulasan\ndf_ulasan <- data.frame(rating, komentar)\n\n# Buat dan tampilkan sebuah daftar yang bernama daftar_fordferr\ndaftar_fordferr <- list(judul_film, aktor_film, df_ulasan, rrt_ulasan)\ndaftar_fordferr\n\n<\/code>\n<code data-type=\"sct\">\nmsg <- \"Jangan mengganti atau mengubah objek-objek yang telah disediakan.\"\n\nex() %>% check_object(\"judul_film\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = msg)\nex() %>% check_object(\"aktor_film\")  %>% check_equal(eq_condition = \"equal\", incorrect_msg = msg)\nex() %>% check_object(\"rating\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = \"Apakah Anda membuat vektor `rating` dengan benar?\")\nex() %>% check_object(\"komentar\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = \"Apakah Anda membuat vektor `komentar` dengan benar?\")\nex() %>% check_correct(\n  check_object(.,\"rrt_ulasan\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = \"Apakah Anda membuat objek `rrt_ulasan` dengan benar?\"),\n  check_function(.,\"mean\") %>% check_arg(\"x\") %>% check_equal()\n)\nex() %>% check_correct(\n  check_object(.,\"df_ulasan\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = \"Apakah Anda membuat `df_ulasan` dengan benar?\"),\n  check_function(.,\"data.frame\") %>% {\n    check_arg(.,\"..1\") %>% check_equal()\n    check_arg(.,\"..2\") %>% check_equal()\n  }\n)\nex() %>% check_correct(\n  check_object(.,\"daftar_fordferr\") %>% check_equal(eq_condition = \"equal\", incorrect_msg = \"Apakah Anda membuat `daftar_fordferr` dengan benar?\"),\n  check_function(.,\"list\") %>% {\n    check_arg(.,\"..1\") %>% check_equal()\n    check_arg(.,\"..2\") %>% check_equal()\n    check_arg(.,\"..3\") %>% check_equal()\n    check_arg(.,\"..4\") %>% check_equal()\n  }\n)\nex() %>% check_output_expr(\"daftar_fordferr\", missing_msg = \"Apakah Anda sudah menampilkan `daftar_fordferr`?\")\n\nsuccess_msg(\"Luar biasa! Anda telah berhasil membuat daftar tentang informasi film lainnya, dan menggabungkan berbagai komponen ke dalam daftar tersebut. Selamat telah menyelesaikan bab Pengantar Pemrograman R!\")\n\n<\/code>\n<div data-type=\"hint\">- Gunakan fungsi <code>c()<\/code> untuk membuat vektor. - Untuk mencari rerata suatu vektor, inputkan nama vektor tersebut ke fungsi <code>mean()<\/code>. - Gunakan fungsi <code>data.frame()<\/code> untuk membuat data frame <code>df_ulasan<\/code>.<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Uji Pengetahuan Anda<\/h3>\n\n\n<script>\n                            if (window.qmn_quiz_data === undefined) {\n                                    window.qmn_quiz_data = new Object();\n                            }\n                    <\/script><script>window.qmn_quiz_data[\"7\"] = {\"quiz_id\":\"7\",\"quiz_name\":\"Daftar\",\"disable_answer\":0,\"ajax_show_correct\":0,\"progress_bar\":\"0\",\"contact_info_location\":0,\"qpages\":{\"2\":{\"id\":\"2\",\"quizID\":\"7\",\"pagekey\":\"ICF3RK0m\",\"hide_prevbtn\":\"0\"}},\"skip_validation_time_expire\":0,\"timer_limit_val\":\"0\",\"disable_scroll_next_previous_click\":0,\"disable_first_page\":\"0\",\"enable_result_after_timer_end\":0,\"enable_quick_result_mc\":0,\"end_quiz_if_wrong\":0,\"form_disable_autofill\":0,\"disable_mathjax\":0,\"enable_quick_correct_answer_info\":0,\"quick_result_correct_answer_text\":\"Correct! You have selected correct answer.\",\"quick_result_wrong_answer_text\":\"Wrong! You have selected wrong answer.\",\"quiz_processing_message\":\"\",\"not_allow_after_expired_time\":0,\"scheduled_time_end\":false,\"error_messages\":{\"email_error_text\":\"Not a valid e-mail address!\",\"number_error_text\":\"This field must be a number!\",\"incorrect_error_text\":\"The entered text is not correct!\",\"empty_error_text\":\"Please complete all required fields!\",\"url_error_text\":\"The entered URL is not valid!\",\"minlength_error_text\":\"Required atleast %minlength% characters.\",\"maxlength_error_text\":\"Maximum %maxlength% characters allowed.\"},\"first_page\":false}\n                    <\/script><div class='qsm-quiz-container qsm-quiz-container-7 qmn_quiz_container mlw_qmn_quiz  quiz_theme_default  '>\n\t\t\t\t\t<form name=\"quizForm7\" id=\"quizForm7\" action=\"\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219\" method=\"POST\" class=\"qsm-quiz-form qmn_quiz_form mlw_quiz_form\" novalidate enctype=\"multipart\/form-data\">\n\t\t\t\t<input type=\"hidden\" name=\"qsm_hidden_questions\" id=\"qsm_hidden_questions\" value=\"\">\n\t\t\t\t<div id=\"mlw_error_message\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t<span id=\"mlw_top_of_quiz\"><\/span>\n\t\t\t\t\t\t\t<section class=\"qsm-page \">\n\t\t\t\t\t\t\t\t<div class=\"quiz_section quiz_begin\">\n\t\t\t\t\t\t<div class='qsm-before-message mlw_qmn_message_before'>\n\t\t\t\t<p>Kerjakan soal-soal tentang Daftar berikut dengan tepat!<\/p>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-28 \" data-qid=\"28\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Perintah berikut bertujuan untuk membuat sebuah daftar. Lengkapi bagian yang kosong! <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p><p><input autocomplete='off' type='text' class='qmn_fill_blank ' name='question28[]' \/>(vektor_mu, matriks_mu)<\/p><\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-14 question-section-id-29 \" data-qid=\"29\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Cermati soal berikut dan lengkapilan bagian yang kosong! <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm-align-fill-in-blanks qsm_remove_bold' >\n\t\t<p><p>Anda membuat sebuah daftar dengan kode di bawah ini. Anda menamai komponen pertama sebagai \"artis\" dan komponen kedua sebagai \"tahun_rilis\".<\/p> <p>daftar_lagu &lt;- list(<input autocomplete='off' type='text' class='qmn_fill_blank ' name='question29[]' \/> = art, <input autocomplete='off' type='text' class='qmn_fill_blank ' name='question29[]' \/> = rilis)<\/p><\/p>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"quiz_section qsm-question-wrapper question-type-0 question-section-id-30 \" data-qid=\"30\">\n\t\t\t\t\t\t<div class='mlw_qmn_new_question'>Hasil dari daftar_mu[[2]][3] adalah ... <\/div>\n\t\t\t<div class='mlw_qmn_question  qsm_remove_bold' >\n\t\t<p>Anda memiliki sebuah daftar yang bernama daftar_mu. Kemudian Anda mengeksplorasinya dengan input-input tertentu, sehingga Anda mendapatkan luaran yang bersesuaian sebagai berikut.<br \/><br \/> <p>&gt; a[[1]]<br \/><br \/>[1] 1 2 3 4<br \/><br \/>&gt; a[[2]]<br \/><br \/>[1] \"a\" \"b\" \"c\"<br \/><br \/>&gt; a[[3]]<br \/><br \/>[1] TRUE FALSE FALSE<br \/><br \/><\/p><\/p>\n\t<\/div>\n\t\t<div class='qmn_radio_answers '>\n\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question30-1 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question30\" id=\"question30_1\" value=\"0\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question30_1\">\n\t\t\t\t\t3\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question30-2 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question30\" id=\"question30_2\" value=\"1\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question30_2\">\n\t\t\t\t\tTRUE\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question30-3 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question30\" id=\"question30_3\" value=\"2\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question30_3\">\n\t\t\t\t\tFALSE\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question30-4 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question30\" id=\"question30_4\" value=\"3\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question30_4\">\n\t\t\t\t\t\"a\"\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"qmn_mc_answer_wrap  mrq_checkbox_class\" id=\"question30-5 \">\n\t\t\t\t\t\t\t\t\t\t\t<input type='radio' class='qmn_quiz_radio qmn-multiple-choice-input' name=\"question30\" id=\"question30_5\" value=\"4\" \/>\n\t\t\t\t\t<label class=\"qsm-input-label\" for=\"question30_5\">\n\t\t\t\t\t\"c\"\t\t\t\t\t<\/label>\n\t\t\t\t\t \t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<input type=\"radio\" style=\"display: none;\" name=\"question30\" id=\"question30_none\" checked=\"checked\" value=\"\" \/>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/section>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_question_list\" value=\"28Q29Q30Q\" \/>\n\t\t\t\t\t\t<div id=\"mlw_error_message_bottom\" class=\"qsm-error-message qmn_error_message_section\"><\/div>\n\t\t\t\t\t<input type=\"hidden\" name=\"qmn_all_questions_count\" id=\"qmn_all_questions_count\" value=\"3\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"total_questions\" id=\"total_questions\" value=\"3\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer\" id=\"timer\" value=\"0\" \/>\n\t\t\t\t\t<input type=\"hidden\" name=\"timer_ms\" id=\"timer_ms\" value=\"0\"\/>\n\t\t\t\t\t<input type=\"hidden\" class=\"qmn_quiz_id\" name=\"qmn_quiz_id\" id=\"qmn_quiz_id\" value=\"7\" \/>\n\t\t\t\t\t<input type='hidden' name='complete_quiz' value='confirmation' \/>\n\t\t\t\t\t\t\t\t\t<\/form>\n\t\t<\/div>\n\t\t<div style=\"display: none;\" class=\"qsm-popup qsm-popup-slide\" id=\"modal-4\" aria-hidden=\"false\"><div class=\"qsm-popup__overlay\" tabindex=\"-1\" data-micromodal-close=\"\"><div class=\"qsm-popup__container qmn_quiz_container\" role=\"dialog\" aria-modal=\"true\"><div class=\"qsm-popup__content\"><img src=\"https:\/\/i0.wp.com\/people.usd.ac.id\/~ydkristanto\/wp-content\/plugins\/quiz-master-next\/assets\/clock.png?w=750&#038;ssl=1\" alt=\"clock.png\" data-recalc-dims=\"1\"\/><p class=\"qsm-time-up-text\"> Time's up<\/p><\/div><footer class=\"qsm-popup__footer\"><button class=\"qsm-popup-secondary-button qmn_btn\" data-micromodal-close=\"\" aria-label=\"Close this dialog window\" onclick=\"location.reload();\">Cancel<\/button><\/footer><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Modul Pengantar Pemrograman R merupakan panduan komprehensif yang memperkenalkan bahasa pemrograman R, alat utama di statistika dan ilmu data, dirancang untuk membekali pembaca dengan landasan kuat R guna analisis data mandiri. Modul ini berfokus pada struktur data fundamental seperti vektor, matriks, faktor, data frame, dan daftar. Materi diawali dengan Dasar-Dasar R, yang menjelaskan operasi aritmetika, pemberian nilai pada variabel, serta jenis-jenis data dasar (numerik, karakter, logis) dan cara memeriksanya dengan fungsi class(). Bagian Vektor mengajarkan pembuatan, penamaan, operasi aritmetika, penggunaan sum(), dan seleksi elemen berdasarkan indeks, nama, atau kondisi perbandingan. Segmen Matriks membahas pembuatan, penamaan baris\/kolom, perhitungan rowSums() dan colSums(), penggabungan dengan cbind() dan rbind(), serta operasi aritmetika. Bagian Faktor memperkenalkan variabel kategori (nominal dan ordinal), cara membuatnya dengan factor(), mengatur levels(), meringkas dengan summary(), dan membandingkan faktor terurut. Data Frame diuraikan sebagai struktur tabel fleksibel yang menampung beragam jenis data. Pembaca akan belajar memeriksa struktur dengan head(), tail(), str(), membuat data frame dengan data.frame(), memilih elemen ([], $), seleksi bersyarat dengan subset(), serta mengurutkan data menggunakan order(). Terakhir, Daftar (List) dijelaskan sebagai koleksi objek R heterogen, mencakup cara membuat, menamai, dan memilih komponennya dengan [[ ]] atau $. Modul ini menyediakan banyak latihan terbimbing untuk praktik langsung.<\/p>\n","protected":false},"author":1,"featured_media":995,"parent":224,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"","meta":{"advanced_seo_description":"","spay_email":""},"jetpack_shortlink":"https:\/\/wp.me\/P93lma-3x","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219"}],"collection":[{"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/comments?post=219"}],"version-history":[{"count":292,"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219\/revisions"}],"predecessor-version":[{"id":1004,"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/219\/revisions\/1004"}],"up":[{"embeddable":true,"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/pages\/224"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/media\/995"}],"wp:attachment":[{"href":"https:\/\/people.usd.ac.id\/~ydkristanto\/index.php\/wp-json\/wp\/v2\/media?parent=219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}