Bahasa pemrograman R dikembangkan oleh Ross Ihaka dan Robert Gentleman sejak 1993. Arah pengembangan R diutamakan pada fungsi-fungsi statistika dan metode tampilan grafik. Fungsi yang dikembangkan termasuk untuk fungsi analisis regresi linear, analisis runtun waktu (time series), dan metode statistika lainnya.
Saat ini penggunaan R makin pesat dengan adanya hype mengenai metode analisis baru, yaitu Machine Learning. Dari awalnya berkembang dalam dunia akademisi, saat ini banyak perusahaan yang mengadopsi penggunaannya, diantaranya: Uber, Google, AirBnB, Facebook, dkk.
Bahasa R dalam Penerapan
Dalam penerapan sehari-hari utamanya dalam bidang analisis, dalam setiap langkah analisis data, bahasa R dapat digunakan. Mari kita bahas.
Pemrograman
R yang merupakan bahasa pemrograman komputer didesain untuk mudah digunakan dan gratis. Selain dapat diadopsi gratis sesuai lisensi yang digunakan, penggunaan bahasa pemrograman dengan berbasis teks membuat R dapat diduplikasi dan diterapkan dengan mudah. Hal ini mendorong banyak proyek bersama yang berbasis kolaborasi menjamur.
Memang penerapan dalam dunia pemrograman tidak membatasi pada bidang analisis. Namun dengan ketebukaan dan kolaborasi banyak hal bisa dikerjakan bersama.
Pengolahan Data
Dalam melakukan analisis data diperlukan metode pengolahan yang mendukung dalam mempersiapkan data yang dianalisis. Data yang bersih dan valid akan mendukung kemudahan dalam melakukan analisis dan pengambilan kesimpulan. Sehingga dapat diputuskan kebijakan yang lebih baik berdasarkan data.
Untuk melakukan tahapan ini, banyak paket/pustaka R yang telah dibuat. Paket yang mendukung metode pembersihan dan penyandingan data cukup lengkap dikembangkan.
Eksplorasi Data
Sebagai langkah awal melakukan analisis data, R cukup mumpuni dalam melakukan eksplorasi awal baik analisis deskriptif mengenai data sampai dengan data mining. Investigasi hasil pengolahan data, membuat hipotesis dan analisis awal hingga pembenahannya dapat dilakukan dan didukung oleh banyak paket yang telah dikembangkan.
Membangun Model
Dengan didukung berbagai paket yang mencakup metode-metode machine learning, pengembangan model terhadap data dapat dikerjakan dengan mudah. Dari eksplorasi data, hipotesis dan analisis awal dengan data mining, kita mendapatkan berbagai metode yang mungkin dapat digunakan. Model dapat dikembangkan dengan statis dari hasil eksplorasi maupun secara dinamis dengan mengambil yang terbaik dari berbagai metode yang tersedia.
Publikasi / Komunikasi
Apa artinya analisis data tanpa publikasi atau dibagi? Tujuan utama pembelajaran mengenai berbagai metode adalah perbaikan menuju yang lebih baik berdasarkan data. Dengan lain kata, adanya kesimpulan wajib memberikan keluaran yang membangun dan mudah diakses.
R yang memang dikembangkan fokus pada metode grafik tentu sangat mendukung publikasi. Bahkan kini dapat membuat laporan langsung menjadi format dokumen dan tampilan web.
Mengapa Bahasa R?
Penggunaan Utama
Bahasa R dikembangkan dan diadopsi utamanya karena adanya fungsi:
- Metode statistika;
- Analisis data; dan
- Algoritma machine learning.
Bahasa R dan Statistika
Salah satu fungsi utama dalam bahasa R adalah penerapan fungsi-fungsi statistika dalam inti program. Cakupan penerapan fungsi statistika meliputi:
- Statistika dasar: rata-rata, varian, median;
- Grafik statis: scatter-plot, peta, histogram; dan
- Distribusi peluang: beta, binomial.
Bahasa R dalam Analisis Data
Dengan penerapan metode statistika dalam inti bahasa R, analisis data menjadi fitur lanjutan. Daftar fitur yang menjadi kelebihan bahasa R diantaranya:
- pemrograman interaktif;
- mekanisme struktur data yang sederhana;
- penerapan fungsi tampilan grafik yang lengkap;
- berbagai metode penerapan missing values;
- fungsi sebagai obyek yang bisa dimanipulasi sesuai kebutuhan;
- sistem paket yang memudahkan pembuatan fungsi untuk kebutuhan sendiri;
- komunitas yang kuat dalam penerapan data analisis.
Bahasa R dan Machine Learning
Metode analisis data lanjutan yang tengah hype adalah machine learning atau pembelajaran mesin.
Pembelajaran mesin, yang merupakan cabang dari kecerdasan buatan, adalah disiplin ilmu yang mencakup perancangan dan pengembangan algoritma yang memungkinkan komputer untuk mengembangkan perilaku yang didasarkan pada data empiris, seperti dari sensor dan tersimpan pada basis data. Fokus utama penelitian pembelajaran mesin adalah bagaimana mengenali secara otomatis pola kompleks dan membuat keputusan cerdas berdasarkan data.
Saat ini sudah banyak paket yang dikembangkan dan dikumpulkan pada task view: machine learning.