Bahasa Pemrograman yang harus diketahui Data Scientist
Menjadi seorang data scientist tidak diharuskan memiliki latar belakang IT. Dari jaringan yang saya ikuti di LinkedIn banyak yang switch career dari berbagai background ke data scientist. Dan itu pun wajar, mengingat secara global perusahaan berbondong-bondong menuju industri digital. Di awal januari 2023, saya yang juga konsen dan switch career dari desainer.
Baik, langsung ke pembahasan. Berikut ini adalah bahasa pemrograman yang harus diketahui untuk data scientist. Apa saja?
Python
- Website: https://python.org
- Dokumentasi: https://python.org/doc
- Buku: PythonBooks , RealPython
Python yang diciptakan oleh Guido van Rossum merupakan bahasa high-level data struktur programming yang mana sederhana, jelas dan logis, tetapi efektif untuk pemrograman berbasis orientasi (OOP).
Python yang disarankan untuk dipasang minimal versi python3.10
agar
mendapat dukungan sepenuhnya. Python yang merupakan bahasa pemrograman
multi-paradigma juga menawarkan beberapa dukungan pemrograman fungsional yang
mirip lisp
, seperti filter, map, reduce, set dan ekspresi generator.
Pustaka yang ditawarkan python juga banyak sekali. Misalnya pandas, numpy, scipy, scikit-learn, matplotlib, seaborn dan masih banyak lagi untuk kebutuhan data science. Anda dapat mencoba python sesuai tautan diatas dan latih kemampuan pemrograman setiap hari.
python
Python 3.10.9 (main, Dec 6 2022, 18:44:57) [GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello World")
Hello World
SQL
- Website: https://mariadb.org
- Dokumentasi: https://mariadb.org/documentation
- Buku: https://mariadb.com/kb/en/books
SQL (Structured Query Language) [baca: sequel] merupakan bahasa pemrograman untuk mengakses data dalam basis data relasional (RDBMS). Hampir semua server basis data menggunakan SQL untuk manajemen data.
Data scientist tentu akan bergulat dengan database, seperti pembuatan database, mengolah, dan menerjemahkan data agar lebih dipahami. Sehingga diperlukan untuk menentukan keputusan stakeholder.
Dalam penggunaan SQL, saya menyarankan menggunakan MariaDB (fork dari MySQL ) sebagai manajemen data karena lebih leluasa untuk dikembagkan secara terbuka dan tidak terikat oleh produk yang berlisensi proprietary (Oracle). Serta memiliki storage engine yang lebih banyak dari MySQL.
sudo mysql -u root -p
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.6.11-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| hervymart |
| hervypraktek |
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
6 rows in set (0,097 sec)
MariaDB [(none)]>
R
- Website: https://r-project.org
- Dokumentasi: https://r-project.org/other-docs
- Buku: https://rstudio.com/resources/books
Bahasa pemrograman R lebih dikenal sebagai bahasa pemrograman untuk statistika dan visualisasi grafis. Dibuat oleh Ross Ihaka dan Robert Gentleman di Universitas Auckland, dan sekarang dikembangkan oleh R Development Core Team.
Bahasa R dibawah lisensi GNU GPL telah menjadi standar de facto di antara statistikawan untuk pengembangan perangkat lunak statistika, serta digunakan secara luas untuk pengembangan perangkat lunak statistika dan analisis data.
Penggunaan bahasa R dapat dilakukan dengan Jupyter Notebook atau RStudio untuk memudahkan data scientist untuk mengolah data.
R
R version 4.2.1 (2022-06-23) -- "Funny-Looking Kid"
Copyright (C) 2022 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
Natural language support but running in an English locale
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> print("HelloWorld")
[1] "HelloWorld"
Julia
- Website: https://julialang.org
- Dokumentasi: https://docs.julialang.org/en
- Buku: https://julialang.org/learning/books
Bahasa pemrograman Julia adalah salah satu bahasa yang digunakan untuk menganalisis numerik dan visualisasi data secara efisien. Sama halnya dengan Python, Julia termasuk bahasa high-level yang syntaxnya tergolong mudah untuk pemula.
Bisa dibilang Julia adalah kompetitornya Python, sebab performanya jauh lebih cepat dari python. Hal ini dikarenakan Julia dikompil dengan framework LLVM untuk kompilasi JIT, yang sebanding dengan kecepatan bahasa C. Selain itu, julia dapat diintegrasikan dengan VIM, Jupyter, dan VSCode . Julia juga terdapat julia packages untuk pustaka yang dibutuhkan oleh data scientist dan menariknya julia terdapat Flux pustaka khusus untuk Machine Learning.
julia
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.8.5 (2023-01-08)
_/ |\__'_|_|_|\__'_| |
|__/ |
julia> print("Hello World")
Hello World
julia>
Scala
- Website: https://scala-lang.org
- Dokumentasi: https://docs.scala-lang.org
- Buku: https://docs.scala-lang.org/books
Scala (Scalable language) dimulai pada 2001 oleh Martin Odersky merupakan bahasa pemrograman untuk kebutuhan general, high-level, dan multi paradigma.
Scala, seperti Java juga salah satu bahasa pemrograman yang berorientasi pada objek yang aman juga mendukung pemrograman fungsional. Scala berjalan pada platform Java (Java virtual machine) dan kompatibel dengan yang ada program Java.
HelloWorld.scala
object HelloWorld extends App {
println("Hello, World!")
}
Kompilasi:
scalac HelloWorld.scala
Menjalankan binary:
scala HelloWorld
Hello, World!
Kesimpulan
Apapun bahasa yang digunakan, sesuaikan dengan kebutuhan dan kriteria data yang ada agar lebih efektif. Jika masih pemula, sudah saya urutkan pemrograman sesuai sub-judul dari yang mudah dan umum sehingga mudah untuk dipelajari. Fokus dan kuasai satu-persatu.
Apa bahasa yang terbaik?
Semua bahasa pemrograman adalah terbaik asalkan sesuai tempatnya, karena setiap bahasa memiliki kelebihan dan kekurangan masing-masing. Bahkan secara pribadi menganjurkan untuk tidak fokus kebahasanya, melainkan memahami konsep dasar algoritma pemrograman terlebih dahulu yang lebih penting.
Barakallahu fiikum. Jika Anda mempunyai pertanyaan, saran, dan kritikan silahkan komentar di akun telegram atau instagram @hervyqa . Sekian, semoga tulisan ini bermanfaat untuk pembaca semuanya. Aamiin.
Artikel lainnya
Cara Memasang R dan RStudio Di NixOS
Bahasa pemrograman R lebih dikenal sebagai bahasa pemrograman untuk statistika dan visualisasi grafis. Dibuat oleh Ross Ihaka dan Robert Gentleman di Universitas Auckland, dan sekarang dikembangkan oleh R Development Core Team.
Cara Memasang Jupyter Notebook Di NixOS
Jupyter Notebook yang sebelumnya dikenal sebagai IPython Notebook merupakan antarmuka berbasis web dari python untuk menjalankan serangkaian perintah pertahap.
Cara Memasang Zotero dan Plugin LibreOffice Di NixOS
Zotero merupakan salah satu perangkat lunak pengolah daftar bibliografi yang wajib dimiliki oleh pelajar, mahasiswa dan tenaga pendidik.