Introduction about R and RStudio

Introduction about R and RStudio

TRẦN QUANG QUÝ

Đại học Công nghệ Thông tin & Truyền thông Thái Nguyên

Giới thiệu ngôn ngữ R và RStudio

Về ngôn ngữ R

R là một ngôn ngữ lập trình và môi trường thường được sử dụng trong tính toán thống kê, phân tích dữ liệu và nghiên cứu khoa học. Đây là một trong những ngôn ngữ phổ biến dùng cho thu thập, làm sạch, phân tích, biểu đồ hóa và biểu diễn dữ liệu. Nhờ vào giao diện dễ sử dụng và cú pháp dễ hiểu, R trở nên phổ biến nhanh trong những năm gần đây. R là một ngôn ngữ lập trình mà nhiều nhà phân tích dữ liệu, nhà khoa học dữ liệu, nhà thống kê sử dụng cho mục đích phân tích dữ liệu và thực hiện phân thích thống kê bằng biểu đồ và các công cụ trực quan khác. Qua việc sử dụng R, người ta có thể phân tích các bộ dữ liệu lớn(big data) . R đang nổi lên như là một ngôn ngữ mang nhiều tiềm năng và ngày càng mở rộng với hàng ngàn gói (packages) cung cấp cho nhiều ứng dụng.


Lý do nên chọn ngôn ngữ R cho thống kê, mô phỏng

  • Thứ nhất, R là open source và hoàn toàn miễn phí. Bạn có thể download miễn phí và đọc code để xem cách nó hoạt động. Thêm vào đó, hầu hết các package của R cũng vậy, sẵn sàng cho bạn sử dụng thậm chí trong các phần mềm thương mại.

  • Thứ hai, cộng đồng người sử dụng R tăng liên tục. Năm 2016, R được đánh giá là ngôn ngữ phổ biến thứ 5, thậm chí xếp cao hơn cả C#. Đây thực sự là một thành tựu lớn đối với một ngôn ngữ đặc thù (domain-specific) như vậy. Điều này cũng chứng tỏ sự phát triển mạnh mẽ của ngành Khoa học dữ liệu và Học máy, những nơi sử dụng R nhiều nhất.

  • Thứ ba, R có thể chạy trên mọi nền tảng: Window, Linux và Mac. Sourcecode R có thể mang sang các nền tảng khác mà không gặp vấn đề gì, đây thực sự là tính năng quan trọng trong thế giới lập trình hiện nay.

  • Thứ tư, R đang được sử dụng bởi các gã khổng lồ công nghệ, điều này chứng tỏ tiềm năng hứa hẹn của nó. Ngày nay, mọi quyết định quan trọng đều dựa trên kết quả phân tích số liệu, có thể kể ra một số công ty sử dụng R để phân tích ra quyết định dựa trên đặc tính đơn giản và mạnh mẽ của nó, điển hình như Twitter, Ford, Google hay Microsoft. Sử dụng R, bạn đang đứng trên vai những người khổng lồ.

Tiếp cận với R

Về bản chất, R chính là ngôn ngữ thế hệ sau của ngôn ngữ S. Ngôn ngữ lập trình S chính là ngôn ngữ giúp cho người sử dụng, sinh viên các trường về kỹ thuật, công nghệ Thông tin dùng để tính toán, thao tác với dữ liệu.

Khi mới tiếp cận với R, lúc đầu có thể chúng ta thấy hơi khó hiểu vì các phép gắn, một số câu lệnh vòng lặp có cách viết khác với một số ngôn ngữ như C hay C++ hoặc Java. Tuy nhiên, các thành phần của R cũng giống như Python đã được tối ưu hóa viết code (sử dụng lệnh) để người dùng có khả năng tiếp cận nhanh. Một khi đã nắm bắt được quy luật và thành thạo sử dụng R thì có lẽ chỉ muốn dùng ngôn ngữ này mà thôi.

Ứng dụng của R trong các lĩnh vực nào?

Ngôn ngữ R có rất nhiều ứng dụng, giống như Python, nó có thể làm rất nhiều việc. Đặc biệt là trong lĩnh vực Khoa học dữ liệu và Chuyên ngành Khoa học máy tính và Thống kê. Có thể liệt kê như sau:

  • Data Science: Trong thời đại IoT, các thiết bị tạo ra hàng terabyte dữ liệu có thể sử dụng để hỗ trợ ra quyết định, khoa học dữ liệu không có cách nào khác là phải tiến lên. Ngôn ngữ R cho các nhà khoa học dữ liệu một công cụ mạnh mẽ để thu thập dữ liệu thời gian thực, đồng thời thực hiện phân tích thống kê và dự báo, tạo ra các kết quả trực quan dễ hiểu.

  • Tính toán thống kê: R là ngôn ngữ phổ biến nhất trong cộng đồng các nhà thống kê, với một kho package khổng lồ chứa gần 10000 package đáp ứng mọi phép tính thống kê bạn có thể nghĩ ra. Cú pháp đặc biệt của R cho phép các nhà thống kê, kể cả những người không có nền tảng khoa học máy tính, cũng có thể nhanh chóng import, làm sạch và phân tích dữ liệu từ nhiều nguồn khác nhau, vẽ biểu đồ từ bất cứ dataset nào.

  • Học máy (Machine Learning): R cũng có nhiều package thực hiện các thao tác machine learning như hồi quy tuyến tính, phi tuyến tính, cây quyết định, … R còn được sử dụng để cài đặt các thuật toán trong lĩnh vực tài chính, nghiên cứu di truyền, marketing hay chăm sóc sức khỏe.

Giới thiệu RStudio

Trước tiên chúng ta quan sát giao diện của lập trình R

Giao diện của RStudio

Trước tiên chúng ta quan sát giao diện của lập trình RGiao diện của RStudio

Chương trình này là một môi trường phát triển tích hợp cho R và nó hoạt động khá tốt. RStudio giúp người lập trình dễ dàng hơn, thao tác tốt hơn và giao diện rất dễ dàng sử dụng, chúng ta có thể gọi RStudio là IDE(Integrated Development Environment) của R. Nói cách khác đó chính là Môi trường phát triển tích hợp của ngôn ngữ R, sử dụng R là trình biên dịch trong môi trường đó.

Một trong những nhược điểm lớn của phiên bản R thông thường là nó không có trình soạn thảo văn bản đầy đủ tính năng. Nếu bạn muốn sử dụng tính năng highlight cú pháp, v.v…, thì rất tiếc điều đó là không thể.

Đôi khi chúng ta không biết file văn bản chứa tất cả code tuyệt vời của mình đã đi đâu. Đó là bởi vì R không nhóm các cửa sổ, nhưng RStudio thì có. Tất cả các cửa sổ có liên quan được gắn với nhau, điều này giúp dễ dàng tìm thấy chúng hơn khi so sánh với việc sử dụng phiên bản R thông thường.

Hiểu một cách đơn giản, R là phần mềm lõi, giúp phân tích, tính toán, thống kê. Trong khi RStudio là phần “vỏ”. Tuy nhiên, phần “vỏ” này giúp cho việc sử dụng R được hiệu quả hơn rất nhiều, bao gồm việc tạo script, quản lý project, tự động hóa, etc. Như vậy RStudio có các đặc điểm nổi bật hơn ở chỗ:

  • Trình chỉnh sửa văn bản đầy đủ
  • Nhóm các cửa sổ
  • Tính năng tự động hoàn thành
  • Giao diện người dùng tốt hơn nhiều

Cài đặt R và RStudio

Tải về R và RStudio:

R là phần mềm phân tích thống kê/ đồ họa cho giới phân tích dữ liệu, thống kê. Trang web truy cập R là https://cran.r-project.org.

RStudio là IDE (Integrated Development Environment), một phần mềm cho phép truy cập trực tiếp vào phần mềm R, đồng thời hỗ trợ rất nhiều tính năng nâng cao, giúp cho việc quản lý và phân tích dữ liệu với R được hiệu quả hơn. Trang web truy cập RStudio là https://rstudio.com

Xem hướng dẫn như dưới đây:

Sau khi cài đặt xong, máy tính của bạn sẽ có thêm 2 phần mềm mới là R và Rstudio


Xem hướng dẫn như dưới đây:Sau khi cài đặt xong, máy tính của bạn sẽ có thêm 2 phần mềm mới là R và Rstudio

Khi chúng ta bắt đầu làm việc thì sẽ sử dụng RStudio vì R đã được tích hợp (Integrated) vào RStudio rồi. ### Một số package trong R dùng cho phân tích dữ liệu:

Package ggplot2

ggplot2 là một package hỗ trợ visualization (trực quan hóa) rất mạnh trong R. Dựa trên package này ta có thể vẽ được các đồ thị dạng barchart, line, plot, density, candle chart,pie,… và rất nhiều các đồ thị khác.Ngoài ra ggplot2 còn cho phép người dùng tùy chỉnh màu sắc, kích cỡ, theme, title, … để đồ thị được đẹp hơn.

Các kiểu đồ thị chính: geom_line(): biển diễn line geom_point(): biểu diễn point geom_chart(): biểu diễn chart geom_density(): biểu diễn dưới dạng density geom_vertical(): thêm trục vertical geom_abline(): thêm trục horizontal, vertical và diagonal geom_qq(): quantile and quantile plot geom_contour(): vẽ các đường đồng mức 2d và 3d geom_label() geom_text(): hiển thị text geom_raster(), geom_tile(), geom_rect(): biểu diễn dạng màu sắc mật độ.

Package dplyr

Đây là package nằm trong hệ sinh thái tidyverse, chuyên dành cho tinh chỉnh và tiền xử lý dữ liệu đầu vào (pre-processing data)

Đây là package nằm trong hệ sinh thái tidyverse, chuyên dành cho tinh chỉnh và tiền xử lý dữ liệu đầu vào (pre-processing data)

Tidyverse là một hộp công cụ lớn chứa nhiều package nhỏ bên trong và các mảnh nhỏ này kết nối với nhau một cách tiện ích để vận hành một quy trình phân tích dữ liệu hoàn chỉnh, từ khâu nhập dữ liệu vào R (readr,readxl,haven), định hình (tibble), hoán chuyển, chọn lọc và dọn dẹp (tidyr, dplyr,purr) đến bước trình bày và thăm dò dữ liệu bằng đồ họa (ggplot2). Package tidyverse được tạo ra vào năm 2016 bởi Hadley Wickham, một nhân vật quan trọng đã góp phần cho sự thành công của R, cũng là tác giả của những package nổi tiếng như reshape, dplyr, tidyr và ggplot2. Chức năng chính của dplyr có thể kể đến là khả năng Wrangling dữ liệu.

Package quantmod

Sử dụng gói quantmod trong R để lấy dữ liệu tài chính trên Internet

Một chức năng rất mạnh của R là cho phép lấy trực tiếp các dữ liệu trên Internet, nhất là dữ liệu tài chính theo thời gian (FTS – Financial Time Series) bằng gói quantmod. Với gói quantmod của R cho phép download khoảng 40000 chuỗi dữ liệu thời gian từ các nguồn như Yahoo Finance, Google Finance, …).

Một chức năng rất mạnh của R là cho phép lấy trực tiếp các dữ liệu trên Internet, nhất là dữ liệu tài chính theo thời gian (FTS – Financial Time Series) bằng gói quantmod. Với gói quantmod của R cho phép download khoảng 40000 chuỗi dữ liệu thời gian từ các nguồn như Yahoo Finance, Google Finance, …).

Package psych và package Hmisc

Đây là 2 thư viện khá hữu ích trong việc tính toán và summary các chỉ số thống kê. Khi sử dụng hai thư viện nà, chúng ta có thể khái quát tất cả các đặc trưng của bộ dữ liệu. Dữ liệu được tóm tắt theo các kiểu dạng biến, biến liên tục và biến ngẫu nhiên

Đây là 2 thư viện khá hữu ích trong việc tính toán và summary các chỉ số thống kê. Khi sử dụng hai thư viện nà, chúng ta có thể khái quát tất cả các đặc trưng của bộ dữ liệu. Dữ liệu được tóm tắt theo các kiểu dạng biến, biến liên tục và biến ngẫu nhiên

Cấu trúc dữ liệu và kiểu dữ liệu trong R

Xem chi tiết tại bài viết Cấu trúc dữ liệu và kiểu dữ liệu trong R (https://rpubs.com/tranquangquy_ictu/770027)

Xổ số miền Bắc