ภาพรวม Data Science
Data Science เป็นการสำรวจข้อมูลแบบหลายสาขา รวมถึงการพัฒนาอัลกอริทึม การอนุมานจากข้อมูล และเทคโนโลยี เพื่อแก้ปัญหาที่ซับซ้อนอย่างเชิงวิเคราะห์ ข้อมูลคือหัวใจสำคัญ
ใน Python ไลบรารี Pandas เป็นเครื่องมือยอดนิยมสำหรับนำเข้าข้อมูลจาก Excel, CSV และแหล่งข้อมูลอื่นๆ
ภาพรวมภาษา R
R เป็นภาษาโอเพนซอร์ส โดดเด่นด้านสถิติ การวิเคราะห์ข้อมูล และกราฟิกส์ เริ่มใช้ในวงการวิชาการ/วิจัย แต่ปัจจุบัน Enterprise ก็นิยมใช้งาน R เป็นหนึ่งในภาษาสถิติที่เติบโตเร็วที่สุดในโลกองค์กร
จุดเด่นของ R สำหรับ Data Science
- ชุมชนใหญ่ รองรับผ่าน Mailing Lists, Documentation, Stack Overflow
- CRAN - แหล่งเก็บแพ็กเกจ R มากมาย พร้อมฟังก์ชันและข้อมูลพร้อมใช้งาน
- พัฒนาเทคนิคใหม่ได้รวดเร็ว ไม่ต้องสร้างจากศูนย์
ฟังก์ชันการทำงาน
R มีฟังก์ชันสถิติและวิเคราะห์ข้อมูลในตัว (Built-in) มากมาย เหมาะสำหรับงานวิจัยและพัฒนา
โดเมนหลัก: Data Visualization
R มีแพ็กเกจพลังจัดแสดงข้อมูลยอดเยี่ยม เช่น ggplot2, ggvis, lattice
ความพร้อมของแพ็กเกจ
R มีแพ็กเกจ Data Science จำนวนมาก ทำให้ทรงพลังและหลากหลาย
เมื่อไหร่ควรใช้ R?
เหมาะสำหรับงานคำนวณ Standalone หรือวิเคราะห์บนเซิร์ฟเวอร์เดี่ยว ดีสำหรับงาน Exploratory Analysis
ภาพรวมภาษา Python
Python ยืดหยุ่น อ่านง่าย เน้นความเรียบง่าย มีแพ็กเกจครอบคลุมทุกด้านของ Data Science
จุดเด่นของ Python
- หา Outliers ได้ดี (R ก็ทำได้)
- แต่ถ้าต้องทำ Web Service สำหรับอัปโหลดข้อมูลและหา Outliers Python ชนะ
ฟังก์ชันการทำงาน
Python เป็น General-purpose Language ทำให้ฟังก์ชันวิเคราะห์ข้อมูลส่วนใหญ่พร้อมใช้งาน
โดเมนหลัก: Deep Learning & AI
Python มีแพ็กเกจ Deep Learning ชั้นนำ: Lasagne, Caffe, Keras, Mxnet, OpenNN, TensorFlow ทำให้สร้าง Neural Network ได้ง่ายกว่า R มาก
ความพร้อมของแพ็กเกจ
Python มีแพ็กเกจหลักสำหรับวิเคราะห์ข้อมูล เช่น Pandas, Scikit-learn แต่อย่างไรก็ตาม ทำให้บรรลุเป้าหมายได้ง่ายและรวดเร็ว
เมื่อไหร่ควรใช้ Python?
เมื่อต้องผสานกับ Web App หรือนำโค้ดสถิติเข้า Production Database Python เป็นเครื่องมือยอดนิยมสำหรับ Production Use
การประยุกต์ใช้ Python (กว้างกว่า R มาก)
- Computer Vision (Face Detection, Color Detection)
- Game Development
- Machine Learning
- Web Development
- Robotics
- Scripting & Automation
- Web Scraping
- Scientific Computing
- Data Analysis
- Artificial Intelligence
สรุป
| ด้าน | R | Python |
|---|---|---|
| สถิติ/วิจัย | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| Visualization | ⭐⭐⭐⭐⭐ (ggplot2) | ⭐⭐⭐⭐ (Matplotlib, Seaborn) |
| Deep Learning | ⭐⭐ | ⭐⭐⭐⭐⭐ |
| Production/Deployment | ⭐⭐ | ⭐⭐⭐⭐⭐ |
| General Programming | ⭐⭐ | ⭐⭐⭐⭐⭐ |