R

Rebuild R post-upgrade icu4c

Pagi ini, saat akan mengeksekusi R,

$ R
/usr/lib64/R/bin/exec/R: error while loading shared libraries: libicuuc.so.67: cannot open shared object file: No such file or directory

Ternyata R nya bermasalah. Di atas disebutkan bahwa libicuuc.so.67 tidak ditemukan. Dari namanya, bisa ditebak itu adalah shared object/library miliknya icu4c. Kita pastikan dulu,

$ slackpkg file-search libicuuc.so
Looking for libicuuc.so in package list. Please wait... DONE

The list below shows the packages that contains "libicuuc\.so" file.

[ installed ] - icu4c-68.2-x86_64-1

You can search specific packages using "slackpkg search package".

Command tersebut dieksekusi dengan root privileges.

Mengenal R_HOME

R_HOME adalah direktori tempat R diinstall. Maksudnya, pada direktori inilah terdapat file binary dan konfigurasinya. Pada linux khususnya slackware, R_HOME ada di

/usr/lib{,64}/R
# tergantung arsitekturnya apakah 32bit atau 64bit.

Operasi direktori R

Mengetahui working directory

Secara default, working directory pada Slackware adalah home directory user atau di mana command R dijalankan.

getwd()

Mengganti working directory

Misal, akan berpindah working directory ke Documents/project

setwd('Documents/project')

Mengenal objek R factor

Factor adalah representasi data kategorik. Factor bisa dibuat dengan fungsi factor() atau cut(). Saya lebih sering menggunakan cut() karena lebih aplikatif saat akan mengubah skala data dari rasio atau interval ke ordinal.

Contoh, bmi adalah data body mass index (BMI) atau indeks massa tubuh (IMT). Klasifikasi IMT ada 4 macam, yaitu

Mengenal Objek R Vector

Sebagai bahasa pemrograman, R mempunyai beberapa tipe objek, antara lain vector, matrix, factor, data frame, list. Bagi yang pernah berkecimpung di bahasa pemrograman lain mungkin tipe objek ini terasa aneh. R adalah bahasa pemrograman spesialis data, maka tipe objeknya pun disesuaikan agar mudah meng-handle data.

Vector merupakan objek yang sangat penting di R. Bisa dikata, semua data berasal dari vector.

Apa sih vector?

Mudahnya, vector bisa dikatakan sebagai variabel. Vector ini berisi elemen (datum atau data) yang seragam, bisa berupa angka atau karakter/string atau bisa juga boolean (TRUE FALSE).

Install JASP

JASP, singkatan dari Jeffreys’s Amazing Statistic Program, merupakan open source statistics software. Software ini layak dijadikan pilihan utama karena:

  1. Open source. Karena open source semua orang boleh memakai, melihat source code-nya dan berkontribusi (melaporkan masalah, mengusulkan fitur dan perbaikan). Silahkan menuju ke https://github.com/jasp-stats/jasp-desktop .
  2. Pengembangan dinaungi oleh akademisi dari University of Amsterdam, Duke University, University of Southampton, UNiversity of Sussex, University of Missouri, Athens University of Economics dan Business, Missouri State University, University of Groningen, Nyenrode Business University, University of Zurich dan Ludwig-Maximilians-Universität München.
  3. Menyediakan berbagai analisis baik analisis frequentist maupun Bayesian.
  4. Tabel hasil dalam format APA yang dengan mudahnya di-copas ke word processosr seperti LibreOffice Writer atau Microsoft Word.
  5. Tersedia untuk Linux, MacOS, dan Microsoft Windows.

Install JASP

Karena saya memakai Slackware maka cara yang ditulis di sini tentu saja yang berlaku untuk Slackware dan linux umumnya. Install menggunakan flatpak. Flatpak tersedia di SBo. Untuk install membutuhkan download dari repo sekitar 1,4GB.

Dispersi Data dengan R

Dispersi atau ukuran penyebaran data menunjukkan seberapa bervariasi suatu data. Kali ini data yang digunakan diambil dari dataset ldeaths yang merupakan bagian dari UKLungDeaths. Dataset UKLungDeaths berisi data jumlah kematian akibat penyakit bronchitis, emphysema dan asma di Inggris dalam kurun waktu 1974-1979. Data ini disajikan berdasarkan bulan dan jenis kelamin. Secara total untuk kedua jenis kelamin ada di ldeaths, laki-laki mdeaths dan perempuan fdeaths.

Nilai minimal

min(ldeaths)
[1] 1300

Nilai maksimal

max(ldeaths)
[1] 3891

Range

range(ldeaths)
[1] 1300 3891

Varians

var(ldeaths)
[1] 371911.8

Standar deviasi

sd(ldeaths)
[1] 609.8457

Tendensi Sentral dengan R

Data yang digunakan :

> nilai
[1] 25 60 79 32 57 74 52 70 82 36 75 77 81 95 41 65 92 85 55 66 52 10 64 75 78
[26] 25 80 98 81 67 41 71 83 54 64 72 88 62 74 45 60 78 89 76 48 84 84 90 15 79
[51] 35 67 17 82 69 74 63 80 85 61

Mean

> mean(nilai)
[1] 65.31667

Rerata nilai adalah 65,31667.

Median

Cara 1 : menggunakan median()

> median(nilai)
[1] 70.5

Cara 2 : menggunakan quantile()

Karena median tak lain adalah kuartil 2 atau dengan kata lain posisinya di tengah-tengah atau pada posisi 50% maka

> quantile(nilai, 0.5)
 50% 
70.5

Median nilai adalah 70,5.

Modus

> names(which.max(table(nilai)))
[1] "74"

Modus adalah 74.

Kuartil 1

> quantile(nilai, 0.25)
  25% 
54.75

Kuartil 1 nya adalah 54,75.

Input Data R

Input data dalam R sangat mudah dan ada beragam cara, yaitu:

  1. Menuliskan dalam bentuk syntax. Data diinput sebagai vektor. Penulis lebih suka menggunakan cara ini apabila data tersebut 1 variabel saja dan banyaknya tidak lebih dari 30. Kadang juga penulis gunakan untuk data yang banyaknya kurang dari 100
  2. Melalui data frame. Data diinput ke dalam bentuk tabel. Baris tabel menunjukkan kasus sedangkan kolomnya adalah variabel. Cocok digunakan apabila lebih dari 1 variabel.
  3. Import dari file. Data dibuat tanpa menggunakan R dan disimpan ke dalam bentuk file. Data bisa dibuat menggunakan text editor (contoh vim, gvim, nano, pico, kate), aplikasi perkantoran (LibreOffice Calc dan Microsoft Excel) atau aplikasi statistik lainnya seperti SPSS, Minitab, dan Stata).

Pada kesempatan ini yang digunakan adalah cara pertama. Misalkan datanya adalah nilai ujian dari 60 mahasiswa sebagai berikut :

Package bawaan R Slackware

Berikut adalah package atau library R yang secara default terinstall di Slackware melalui SBo.

  1. KernSmooth.Functions for Kernel Smoothing Supporting Wand & Jones (1995)
  2. MASS. Support Functions and Datasets for Venables and Ripley’s MASS
  3. Matrix. Sparse and Dense Matrix Classes and Methods
  4. base. The R Base Package
  5. boot. Bootstrap Functions (Originally by Angelo Canty for S)
  6. class. Functions for Classification
  7. cluster. “Finding Groups in Data”: Cluster Analysis Extended Rousseeuw et al.
  8. codetools. Code Analysis Tools for R
  9. compiler. The R Compiler Package
  10. datasets. The R Datasets Package
  11. foreign. Read Data Stored by Minitab, S, SAS, SPSS, Stata, Systat, Weka, dBase, …
  12. grDevices. The R Graphics Devices and Support for Colours and Fonts
  13. graphics. The R Graphics Package
  14. grid. The Grid Graphics Package
  15. lattice. Trellis Graphics for R
  16. methods. Formal Methods and Classes
  17. mgcv. Mixed GAM Computation Vehicle with Automatic Smoothness Estimation
  18. nlme. Linear and Nonlinear Mixed Effects Models
  19. nnet. Feed-Forward Neural Networks and Multinomial Log-Linear Models
  20. parallel. Support for Parallel computation in R
  21. rpart. Recursive Partitioning and Regression Trees
  22. spatial. Functions for Kriging and Point Pattern Analysis
  23. splines. Regression Spline Functions and Classes
  24. stats. The R Stats Package
  25. stats4. Statistical Functions using S4 Classes
  26. survival. Survival Analysis
  27. tcltk. Tcl/Tk Interface
  28. tools. Tools for Package Development
  29. utils. The R Utils Package

Packages tersebut bisa dilihat dengan menjalankan pada Rconsole

Mengenal R

R adalah salah satu bahasa pemrograman yang banyak digunakan dan bersifat open source. R bisa dikatakan sebagai bahasa pemrograman spesialis data. Tidak mengherankan kalau R digunakan untuk keperluan handling data seperti statistik, data mining, data science dan machine learning.

Meskipun bersifat open source, sampai sekarang belum ada sistem operasi open source yang memasukkan R secara default terinstall dalam sistemnya. Namun demikian beberapa distro linux menyertakan R ke dalam repo resmi. Distro tersebut antara lain Debian, OpenSUSE dan Ubuntu. Bagaimana dengan Slackware? Officiall repo tidak ada. Namun, bisa didapatkan dari komunitas SBo. Apakah tersedia untuk Windows dan MacOS? Pengembang R sangat baik hati. Mereka juga membuat R untuk Windows dan MacOS. Jadi, R bisa digunakan semua sistem operasi komputer.