Daftar Isi:
- Menambahkan jumlah baris dan kolom
- trim
- Cukup hitung ukuran bunga pada subkumpulan data Anda.
- Terkadang Anda perlu mentranspos data dari baris ke kolom atau sebaliknya. Dalam R, fungsi untuk mentranspos matriks adalah t (): >> xx [ 1] [ 2] [ 3] [1,] 1 5 9 [2,] 2 6 10 [3,] 3 7 11 [4,] 4 8 12
- Terkadang Anda ingin mengetahui nilai data Anda yang menjadi duplikat. Bergantung pada situasi Anda, duplikasi tersebut akan valid, namun terkadang entri duplikat mungkin menunjukkan masalah entri data.
- Di R, fungsi optimal () menyediakan satu mekanisme yang cukup sederhana untuk mengoptimalkan fungsi.
- Model penjualan dan pendapatan yang diharapkan.
Video: Top 10 Excel New Features 2025
Spreadsheet mungkin adalah salah satu aplikasi PC yang paling banyak digunakan - dan untuk alasan yang bagus: Spreadsheets membuatnya sangat mudah untuk melakukan perhitungan dan operasi lainnya pada tabular. data. Tapi spreadsheet menimbulkan beberapa risiko juga: Mereka mudah korup dan sangat sulit untuk melakukan debug. Kabar baiknya adalah, Anda dapat menggunakan R untuk melakukan banyak hal yang sama dengan yang biasa Anda lakukan di spreadsheet.
Menambahkan jumlah baris dan kolom
Salah satu tugas yang mungkin sering Anda lakukan dalam spreadsheet adalah menghitung jumlah total baris atau kolom. Cara termudah untuk melakukannya adalah dengan menggunakan fungsi rowSums () dan colSums (). Demikian pula, gunakan rowMeans () dan colMeans () untuk menghitung mean.
Coba pada iris dataset built-in. Pertama, lepaskan kolom kelima, karena mengandung teks yang menggambarkan spesies iris: >> iris. num <- iris [-5]
Kemudian hitung jumlah dan mean untuk setiap kolom:
Memformat angka
Anda dapat menggunakan format () untuk mengubah nomor Anda menjadi teks cantik, siap untuk dicetak. Fungsi ini membutuhkan sejumlah argumen untuk mengontrol format hasil Anda. Berikut adalah beberapa:
trim
:Nilai logis. Jika FALSE, itu menambahkan spasi ke kanan-membenarkan hasilnya. Jika TRUE, itu menekan ruang terdepan.
-
digit : Angka digit numerik yang signifikan untuk ditampilkan.
-
nsmall : Jumlah digit minimum setelah titik desimal.
-
Selain itu, Anda mengontrol format titik desimal dengan desimal. tandai, tanda di antara interval sebelum titik desimal dengan huruf besar. tanda, dan tanda di antara interval
setelah titik desimal dengan kecil. menandai. Misalnya, Anda dapat mencetak angka 12345. 6789 dengan tanda koma sebagai titik desimal, spasi sebagai tanda besar, dan titik sebagai tanda kecil: >> format (12345. 6789, digit = 9, desimal. Jika contoh yang lebih praktis, untuk menghitungnya, contoh kecilnya adalah: sarana dari beberapa kolom di mtcars dan kemudian mencetak hasilnya dengan dua digit setelah titik desimal, gunakan yang berikut ini: >> x format (x, digits = 2, nsmall = 2) mpg cyl disp hp "20.09 "" 6. 19 "" 230. 72 "" 146. 69 " Perhatikan bahwa hasilnya bukan lagi angka tapi string teks. Jadi, hati-hati saat Anda menggunakan pemformatan nomor - ini harus menjadi langkah terakhir dalam alur kerja pelaporan Anda. Jika Anda terbiasa dengan pemrograman dalam bahasa yang mirip dengan C atau C ++, Anda mungkin juga mendapati fungsi sprintf () berguna. Pembungkus ini memungkinkan Anda untuk menyisipkan nomor berformat Anda secara langsung ke dalam sebuah string.
Berikut adalah contoh untuk mengubah angka menjadi persentase: >> x sprintf ("%. 1f %%", 100 * x) [1] "50. 0% "" 51. 0% "" 52. 0% "" 53. 0% "" 54. 0% "" 55. 0% "
Ini adalah apa yang dilakukannya: Argumen pertama untuk sprintf () menunjukkan format - dalam kasus ini,"%. 1f %% ". Argumen format menggunakan literal khusus yang menunjukkan bahwa fungsi tersebut harus menggantikan literal ini dengan variabel dan menerapkan beberapa format. Literal selalu dimulai dengan simbol%. Jadi, dalam kasus ini,%. 1 artinya memformat nilai yang diberikan pertama sebagai nilai titik tetap dengan satu digit setelah titik desimal, dan %% adalah literal yang berarti mencetak%.
Untuk memformat beberapa angka sebagai mata uang - dalam hal ini, U. S. dollars - gunakan: >> set. (1)> x sprintf ("$% 3. 2f", x) [1] "$ 265. 51" "$ 372. 12" "$ 572. 85" "$ 908. 21" "$ 201. 68 "
Apa yang terjadi di sini adalah bahwa, karena Anda menyediakan dua vektor (masing-masing dengan dua elemen) ke sprintf (), hasilnya adalah vektor dengan dua elemen. R siklus melalui elemen dan menempatkan mereka ke sprintf () literal.
Anda dapat melakukan semuanya dengan pasta () dan format () yang dapat Anda lakukan dengan sprintf (), jadi Anda tidak perlu menggunakannya lagi. Tapi bila Anda melakukannya, itu bisa mempermudah kode Anda. Untuk mengurutkan data di R, Anda menggunakan fungsi sort () atau order (). Untuk mengurutkan bingkai data mtcars dalam meningkatkan atau menurunkan urutan kolom hp, gunakan: >> with (mtcars, mtcars [order (hp),])> dengan (mtcars, mtcars [hp, reduced = TRUE),]) Spreadsheet memberi Anda kemampuan untuk melakukan semua jenis "Bagaimana jika? "Analisis. Salah satu cara untuk melakukannya adalah dengan menggunakan fungsi if () dalam spreadsheet. R juga memiliki fungsi if (), tapi sebagian besar digunakan untuk flow control pada skrip Anda. Karena Anda biasanya ingin melakukan perhitungan pada keseluruhan vektor di R, biasanya lebih tepat menggunakan fungsi ifelse (). Menghitung total kondisional Anda dapat melakukan hal yang sama di salah satu dua cara di R: Gunakan ifelse. Katakanlah Anda ingin menghitung mean kondisional efisiensi bahan bakar pada mtcars. Anda melakukan ini dengan fungsi mean (). Sekarang, untuk mendapatkan efisiensi bahan bakar untuk mobil di kedua sisi ambang batas 150 tenaga kuda, cobalah yang berikut ini: >> dengan (mtcars, mean (mpg)) [1] 20. 09062> dengan (mtcars, mean (mpg [hp with (mtcars, mean (mpg [hp> = 150])) [1] 15. 40667 Menghitung jumlah elemen dalam vektor sama dengan menanyakan panjangnya, artinya fungsi Excel countif) memiliki panjang R (panjang): >> dengan (mtcars, length (mpg [hp> 150])) [1] 13 Untuk mendapatkan transpos matriks, gunakan t (): >> t (x) [1] [2] [3] [4] [1,] 1 2 3 4 [2,] 5 6 7 8 [3,] 9 10 11 12 Anda juga dapat menggunakan t () untuk mentranspos frame data, tapi hati-hati saat Anda Lakukan ini.Hasil transposisi selalu berupa matriks (atau array).Karena array selalu hanya memiliki satu jenis Variabel, seperti numerik atau karakter, jenis variabel hasil Anda mungkin bukan yang Anda harapkan. Menemukan nilai unik atau duplikat Fungsi untuk mengidentifikasi entri duplikat diduplikasi (). Dalam irisan dataset built-in, ada baris duplikat di baris 143. Cobalah sendiri: >> dupes head (dupes) [1] FALSE FALSE FALSE FALSE FALSE FALSE> yang (menipu) [1] 143> iris [dupes,] Sepal. Panjang Sepal. Lebar Petal. Panjang Petal. Width Species 143 5. 8 2. 7 5. 1 1. 9 virginica Karena hasil duplikasi () adalah vektor logis, Anda dapat menggunakannya sebagai indeks untuk menghapus baris dari data Anda. Untuk melakukan ini, gunakan operator negasi - tanda seru (seperti dalam! Dupes): >> iris [! dupes,]> nrow (iris [! dupes,]) [1] 149 Bekerja dengan tabel pencarian Dalam aplikasi spreadsheet seperti Excel, Anda dapat membuat tabel pencarian dengan fungsi vlookup atau kombinasi indeks dan kecocokan. Di R, mungkin lebih mudah menggunakan penggabungan () atau mencocokkan (). Fungsi match () mengembalikan vektor dengan posisi elemen yang sesuai dengan nilai pencarian Anda. Untuk tabel yang sedikit lebih kompleks - yaitu meja dengan lebih dari dua faktor klasifikasi silang - gunakan agregat () fungsi: >> agregat (hp ~ cyl + gear + am, mtcars, mean) roda gigi am hp 1 4 3 0 97. 00000 2 6 3 0 107. 50000 3 8 3 0 194. 16667 4 4 4 0 78. 50000 5 6 4 0 123. 00000 6 4 4 1 75. 16667 7 6 4 1 110. 00000 8 4 5 1 102. 00000 9 6 5 1 175. 00000 10 8 5 1 299. 50000 Bayangkan Anda adalah direktur penjualan sebuah perusahaan dan Anda perlu menetapkan harga terbaik untuk produk Anda. Dengan kata lain, cari harga suatu produk yang memaksimalkan pendapatan. Pendapatan yang diharapkan kemudian hanya produk dari harga dan penjualan yang diharapkan: >> pendapatan <- fungsi (harga) {harga * penjualan (harga)} Hasil Anda akan terlihat seperti ini. Anda memiliki model kerja penjualan dan pendapatan. Anda bisa langsung melihat bahwa ada titik pemasukan maksimal. Selanjutnya, gunakan fungsi R optimal () untuk mencari nilai yang maksimal. Untuk menggunakan optimalisasi (), Anda perlu memberi tahu fungsi yang digunakan (dalam hal ini, pendapatan ()), serta interval (dalam hal ini, harga antara 50 dan 150). Secara default, optimalkan () mencari nilai minimum, jadi dalam kasus ini Anda harus memberitahukannya untuk mencari nilai maksimum: >> mengoptimalkan (pendapatan, interval = c (50, 150), maksimum = TRUE) $ maksimum [1] 100 $ objektif [1] 5000
Membuat pilihan dengan seandainya
Berikut adalah contoh penggunaan ifelse () untuk mengidentifikasi mobil dengan efisiensi bahan bakar tinggi di mtcars dataset: >> mtcars <- transform (mtcars, + mpgClass = ifelse (mpg mtcars [mtcars $ mpgClass == "Tinggi",]
Hal lain yang mungkin Anda lakukan banyak di Excel adalah menghitung jumlah kondisional dan menghitung dengan fungsi sumif () dan countif ().
Cukup hitung ukuran bunga pada subkumpulan data Anda.
Transposing kolom atau baris
Terkadang Anda perlu mentranspos data dari baris ke kolom atau sebaliknya. Dalam R, fungsi untuk mentranspos matriks adalah t (): >> xx [1] [2] [3] [1,] 1 5 9 [2,] 2 6 10 [3,] 3 7 11 [4,] 4 8 12
Untuk mengidentifikasi semua nilai unik dalam data Anda, gunakan fungsi unik (). Coba temukan nilai unik dari jumlah silinder pada mtcars: >> unique (mtcars $ cyl) [1] 6 4 8
Terkadang Anda ingin mengetahui nilai data Anda yang menjadi duplikat. Bergantung pada situasi Anda, duplikasi tersebut akan valid, namun terkadang entri duplikat mungkin menunjukkan masalah entri data.
Misalnya, untuk menemukan lokasi elemen "Toyota Corolla" pada deretan nama mtcars, cobalah yang berikut ini: >> indeks indeks [1] 20> mtcars [index, 1: 4] mpg cyl disp Untuk tabel sederhana di R, Anda dapat menggunakan fungsi tapply () untuk mencapai hasil yang serupa dengan tabel pivot di Excel.Berikut adalah contoh penggunaan tapply () untuk menghitung mean hp untuk mobil dengan jumlah silinder dan roda gigi yang berbeda: >> dengan (mtcars, tapply (hp, list (cyl, gear), mean)) 3 4 5 4 97. 0000 76. 0 102. 0 6 107. 5000 116. 5 175. 0 8 194. 1667 NA 299. 5
Menggunakan Tujuan mencari dan solver
Di R, fungsi optimal () menyediakan satu mekanisme yang cukup sederhana untuk mengoptimalkan fungsi.
Di bidang ekonomi, model harga sederhana menyatakan bahwa orang membeli lebih sedikit produk tertentu saat harganya meningkat. Berikut adalah fungsi yang sangat sederhana yang memiliki perilaku ini: >> penjualan <- function (price) {100 - 0. 5 * price}
Anda dapat menggunakan fungsi kurva () untuk merencanakan fungsi kontinyu. Ini mengambil fungsi sebagai masukan dan menghasilkan plot. Cobalah untuk merencanakan perilaku penjualan dan pendapatan dengan menggunakan kurva () fungsi, harga bervariasi dari $ 50 sampai $ 150: >> kurva oldpar (penjualan, dari = 50, sampai = 150, xname = "harga", main = "penjualan ")> Kurva (pendapatan, dari = 50, ke = 150, xname =" harga ", main =" pendapatan ")> par (oldpar)
Model penjualan dan pendapatan yang diharapkan.
Dan begitulah. Mengisi harga $ 100, dan mengharapkan untuk mendapatkan $ 5, 000 dalam pendapatan.
