Trang chủ>  Blog >  Kinh nghiệm thực chiến >  HƯỚNG DẪN SỬ DỤNG PHẦN MỀM R

HƯỚNG DẪN SỬ DỤNG PHẦN MỀM R


Ngôn ngữ thống kê R đang phổ biến, đặc biệt cho việc phân tích dữ liệu. Bài viết này dành cho những người mới bắt đầu, giúp bạn biết sự lựa chọn ngôn ngữ lập trình đang “hot” hiện nay.

  1,453 lượt xem

Nội dung bài viết

Ngôn ngữ R đang “hot” hơn bao giờ hết. Hơn 4.400 gói add-on, thêm vào đó 18.000 thành viên của một nhóm ngôn ngữ R trên Linkedin, gần 80 nhóm Meetup R đang hiện hữu, có một vấn đề là việc quan tâm đến ngôn ngữ thống kê R đang dần phổ biến, đặc biệt phân tích dữ liệu.

 

Tại sao lại lựa chọn ngôn ngữ R? R là một ngôn ngữ miễn phí, mã nguồn mở, mạnh, và có thể mở rộng. 

 

Vì đây là một môi trường lập trình dùng chuỗi command-line, bạn có thể lưu lại một chuỗi các bước phân tích dữ liệu phức tạp bằng ngôn ngữ R. Giúp bạn dễ dàng hơn trong việc sử dụng lại công việc phân tích của bạn với cùng dữ liệu, nếu bạn đã dùng một giao diện point-and-click, Hadley Wickham nhấn mạnh- tác giả của những gói ngôn ngữ R phổ biến và là nhà khoa học chính của Rstudio.

 

Điều này cũng tạo sự dễ dàng hơn cho mọi người xác nhận kết quả nghiên cứu và kiểm tra lỗi các công việc của bạn- một vấn đề nảy sinh theo tin tức nhận được gần đây, sau khi có một lỗi code trong Excel là một trong nhiều lỗ hổng được tìm thấy trong một báo cáo phân tích kinh tế theo Reinhart/Rogoff cho hay.

 

Các lỗi chính của nó không phải là một sự bất ngờ, Christopher Gandrud, người đã nhận được bằng tiến sĩ về Phương pháp nghiên cứu định lượng của trường Kinh tế Luân Đôn. Ông nhấn mạnh “Chúng ta sẽ luôn nỗ lực tốt nhất” để tìm lỗi. Vấn đề là chúng ta thường dùng những công cụ và sự thực hành, rất khó để có thể tìm thấy và sửa chúng.

 

Chắc chắn là bạn có thể dễ dàng kiểm tra những công thức phức tạp trên một bảng tính. Gần như không dễ dàng để chạy nhiều bộ dữ liệu thông qua một bảng tính công thức để kiểm tra như việc đặt nhiều bộ dữ liệu  thông qua một script.

 

Câu thần chú ở đây là : “Hãy chắc chắn rằng công việc của bạn có thể tái sản xuất” là câu nói phổ biến của những người đam mê ngôn ngữ R.

 

Who uses R? Relatively high-profile users of R include:

 

Facebook

Used by some within the company for tasks such as analyzing user behavior.

Google

There are more than 500 R users at Google, according to David Smith at Revolution Analytics, doing tasks such as making online advertising more effective.

National Weather Service

Flood forecasts.

Orbitz

Statistical analysis to suggest best hotels to promote to its users.

Trulia

Statistical modeling.

Source: Revolution Analytics

 

Tại sao không phải là ngôn ngữ R? Ngôn ngữ R có thể xuất hiện khó khăn đầu tiên. Cú pháp ngôn ngữ R thì khác so với nhiều ngôn ngữ khác, nó không cần thiết bởi vì cũng còn tồn tại nhiều khó khăn hơn những ngôn ngữ khác.

 

“Tôi có thể viết một phần mềm chuyên nghiệp bằng nhiều chương trình, trong đó ngôn ngữ R là ngôn ngữ khó học nhất.” Cố vấn John D.Cook chia sẻ trên một trang web về ngôn ngữ lập trình R cho những ai đang học ngôn ngữ khác chuyển qua học ngôn ngữ R. “Ngôn ngữ này thật sự khác đơn giản nhưng thật sự không tiện lợi.”

 

Đây là bài hướng dẫn không dành cho những người đã thành thạo ngôn ngữ R, chúng tôi chỉ hướng dẫn cho bạn cách để bắt đầu dùng ngôn ngữ R làm việc với dữ liệu cơ bản: giải nén các thống kê của một tập dữ liệu, khám phá một tập dữ liệu với những biểu đồ cơ bản, và định hình lại dữ liệu để dễ dàng hơn trong việc phân tích các dữ liệu.

 

Bước đầu tiên,

Để bắt đầu sử dụng ngôn ngữ R, truy cập r-project.org để dowload và cài đặt cho desktop hay laptop của bạn. Nó chạy trên môi trường Windows, OS X, và một loạt những nền tảng của Unix, nhưng không thể chạy trên Android hay iOS.

Cài đặt ngôn ngữ R là đều đầu tiên bạn phải làm. Tuy nhiên, bạn nên cài đặt ngôn ngữ RStudio miễn phí. R có những tính năng hữu ích mà bạn sẽ mong đợi từ một nền tảng mã hóa; chẳng hạn như cú pháp highlight và tab được dùng trong mã hóa auto-completion. Tôi thích không gian làm việc với 4 cửa sổ, quản lý tốt hơn nhiều cửa sổ R để gõ lệnh, lưu trữ script hiển thị lịch sử các dòng lệnh , hiển thị trực quan và còn nhiều ưu điểm khác.

 

Mặc dù bạn không cần có RStudio IDE miễn phí để bắt đầu, cũng giúp cho việc làm việc với R dễ dàng hơn.

Cửa sổ góc trên bên trái là nơi làm việc chính của bạn. Đó là trình biên dịch ngôn ngữ R cho phép bạn tạo một file với nhiều dòng lệnh của ngôn ngữ R, hay mở một tin đang tồn tại sau đó chạy toàn bộ một tập tin hay những thành phần của tập tin.

 

Cửa sổ dưới bên trái là giao diện điều khiển tương tác, nơi bạn có thể nhập các câu lệnh của R một dòng tại một thời điểm. Bất kỳ những dòng code nào chạy trên cửa sổ biên dịch cũng sẽ xuất hiện trên giao diện điều khiển (console).

 

Cửa sổ góc trên bên phải hiển thị không gian làm việc, gồm một danh sách các object hiện tại trong bộ nhớ. Cũng có một tab hiển thị lịch sử với một danh sách các lệnh trước của bạn: bạn có thể chọn một hoặc một số hay tất cả các dòng code, bằng một click để gửi chúng đến ,hoặc giao diện điều khiển (console) hoặc là bất cứ tập tin nào đang hoạt động trên trình biên dịch của bạn.

 

Cửa sổ góc dưới bên phải hiển thị một biểu đồ, nếu bạn tạo một sự trực quan dữ liệu mã hóa bằng ngôn ngữ R. Hiển thị lịch sử của các biểu đồ trước và một sự lựa chọn để xuất ra một biểu đồ dưới dạng một file hình hoặc định dạng PDF.  Đây cũng là một cửa sổ hiển thị những gói mở rộng(những phần mở rộng của R) có sẵn trong hệ thống của bạn, những tập tin trong thư mục làm việc của bạn và hiển thị các tập tin được gọi từ giao diện điều khiển.

 

Các phím tắt:

Wickham là một nhà khoa học chủ chốt của RStudio cho rằng có nhiều phím tắt quan trọng nhất trong RStudio sau:

 

Phím Tab: là một chức năng tự động hoàn tất chung. Nếu bạn bắt đầu nhập dữ liệu trong giao diện điều khiển (console) hay trình biên dịch thì hãy nhấn phím Tab, RStudio đơn giản nếu bạn chọn một chức năng hoặc một tập tin mà bạn muốn,rồi nhấn giữ hoặc phím Tab hoặc Enter để chấp nhận chúng RStudio sẽ tự động làm việc.

Ctrl + Mũi tên lên (Cmd + Mũi tên lên trên MAC) cũng là một dụng cụ tự động hoàn thành tương tự. Bắt đầu nhập dữ liệu và giữ tổ hợp phím này, sẽ hiển thị một danh sách mỗi dòng lệnh mà đã nhập với tổ hợp phím này. Chọn và nhấn Return. Cách làm này chỉ có hiệu lực với giao diện điều khiển tương tác và không có tác dụng trong cửa sổ trình biên dịch.

 

Ctrl + Enter (Cmd + Enter trên MAC) hiển thị dòng code hiện tại trong trình biên dịch, và gửi chúng đến trình điều khiển. Nếu bạn chọn nhiều dòng code trong trình biên dịch và sau đó nhấn Ctrl/Cmd + Enter, những dòng lệnh đó sẽ chạy.

Vẫn còn nhiều chức năng trong RStudio bao gồm một danh sách đầy đủ các phím trên tài liệu trực tuyến: http://www.rstudio.com/ide/docs/

 

Cài đặt thư mục làm việc:

Thay đổi thư mục đang làm việc với chức năng : setwd(), chẳng hạn:

setwd(“~/mydirectory”)

Chú ý: những dấu gạch chéo luôn luôn phải được đặt phía trước, ngay cả khi bạn đang trên một hệ thống Windows. Trong Windows, dòng lệnh như sau:

setwd(“C:/Sharon/Documents/RProjects”)

Nếu bạn sử dụng RStudio cũng có thể thay đổi thư mục làm việc bằng cách: Session > Set Working Directory.

 

Cài đặt và sử dụng:

Bạn có cơ hội được làm việc một cách dễ dàng bất cứ điều gì bằng ngôn ngữ R, nếu bạn biết tận dụng những lợi thế sẵn có trong ngôn ngữ R với hàng ngàn gói add-on ở CRAN (Comprehensive R Archive Network). Cú pháp lệnh để cài đặt gói là :

install.packages(“getpackagename”)

 

Nếu bạn không muốn gõ lệnh , trong RStudio có một tab Packages trong cửa sổ dưới bên phải, click vào, xuất hiện button “Install Packages.”( Cũng có danh sách những dòng lệnh, nhiều vị trí đa dạng phụ thuộc vào hệ điều hành của bạn).

Để nhìn thấy các packages đã cài đặt vào hệ thống, bạn gõ:

 installed.packages()

Hay trong RStudio, tab ‘Packages’ trong cửa sổ bên dưới.

Sử dụng một packages đã được cài đặt:

          library(“getpackagename”).

Nếu muốn hiển thị ngày cài đặt của những package, bạn chạy câu lệnh:

update.packages()

Bằng cách này , bạn có thể biết được phiên bản làm việc với nhất mà các package đã được cài đặt.

Nếu muốn xóa một package trong hệ thống, sử dụng chức năng:

remove.packages(“getpackagename”)

 

Help!

Nếu muốn tìm ra nhiều hơn một chức năng, bạn có thể gõ dấu hỏi kèm theo tên chức năng, có hoặc không trong dấu ngoặc đơn trong ngôn ngữ R:

?functionName

Đây là phím tắt của chức năng help có sử dụng dấu ngoặc:

help(functionName)

Tuy nhiên, tôi không chắc tại sao bạn lại muốn dùng nó với lệnh ?functionName ngắn hơn.

Nếu bạn biết những gì mà một chức năng dùng để làm gì hay chỉ muốn những định dạng để dùng nó đúng, bạn có thể gõ:

example(functionName)

Bạn cũng có thể lấy một danh sách các ví dụ  của chức năng được dùng. Với chức năng của đối số (arg) sẽ hiển thị một danh sách chức năng của các đối số:

args(functionName)

Nếu bạn muốn tìm kiếm một thuật ngữ trong tài liệu giúp đỡ của ngôn ngữ R, có thể dùng:

help.search(“your search term”)

Phím tắt : ??(“my search term”)

Không cần dấu ngoặc  nếu thuật ngữ tìm kiếm là từ đơn không có dấu cách.

 

Tổ chức thư mục

1 dự án phân tích dữ liệu điển hình không đơn thuần chỉ là viết mã nguồn R mà nó gồm nhiều bước khác nhau với rất nhiều đầu ra, đầu vào, báo cáo, kết xuất dữ liệu. Khi dự án càng lớn thì mức độ phức tạp càng gia tăng. Việc tổ chức sắp xếp tài nguyên (chủ yếu là file) trong dự án giữ vai trò quan trọng để người phát triển có thể tìm kiếm truy xuất nhanh chóng tài nguyên mình cần. Tác giả đề nghị cách thức tổ chức project theo cấu trúc thư mục. Bạn có thể sử dụng R Project của RStudio. Mỗi một dự án được dành riêng cho 1 thư mục. Cấu trúc thư mục có thể tổ chức như dưới đây:

Trong đó:

data: chứa các tập tin dữ liệu đầu vào figure: chứa các tập tin hình hoặc data visualization.presentation: chứa các presentation (nếu như bạn dùng Rmarkdown để viết presentation).documentation: chứa các documentation (nếu như dùng Rmarkdown để viết document).

Các file mã nguồn .R hay .Rmd được để ở ngoài các thư mục.

Toán tử gán

Dùng thay vì = khi thực hiện phép gán.

# Gooda 5# Bada = 5

Tên biến

Tên biến nên dùng danh từ tiếng Anh, chữ nhỏ - lower case - và sử dụng _ để phân cách giữa các chữ. Tên biến nên gợi mở và liên quan đến bối cảnh của phân đoạn mã, tránh việc đặt tên biến khó hiểu hay cụt ngủn. Đặt tên biến tốt giúp người đọc hiểu nhanh chóng mã nguồn và bám sát tư tưởng của người viết mã. Tên biến tránh trùng lặp với các keyword của R.

Xem thêm: Tổng Hợp Các Bài Viết Hướng Dẫn Sử Dụng Excel 2016, Hướng Dẫn Sử Dụng Microsoft Excel Cho Người Mới

# Goodday_oneday_1 # Badfirst_day_of_the_monthDayOnedayonedjm1abcchuoi1vector101data.frame

Tên hàm

Tương tự tên biến, tên hàm nên sử dụng động từ tiếng Anh, phân cách giữa các chữ bằng _, chữ nhỏ lower case và tránh sử dụng tên hàm trùng với các tên hàm của package đang sử dụng.

# Goodclean_data function(x){ }# BaddataClean function(x){ }

Khoảng trắng (space)

Sử dụng khoảng trắng trước và sau bất kì 1 toán tử nào, thêm 1 khoảng trắng sau dấu phẩy , (tương tự như khi viết tiếng Anh).

# Goodaverage mean(feet / 12 + inches, na.rm = TRUE)# Badaveragemean(feet/12+inches,na.rm=TRUE)Đối với :, ::, ::: thì có thể không cần khoảng trắng:

# Goodx 1:10base::get# Badx 1 : 10base :: get Có thể sử dụng thêm khoảng trắng để canh dòng giúp mã nguồn dễ đọc hơn.

list( total = a + b + c, mean = (a + b + c) / n)Không sử dụng khoảng trắng trong các đoạn mã lệnh giới hạn bởi < và >, trừ khi đó là các dấu ,

# Goodif (debug) do(x)diamonds<5, ># Badif ( debug ) do(x) x<1,> x<1 ,>

Viết function khi mã được dùng lại

Trong quá trình viết mã, khi một luồng công việc được lặp đi lặp lại, bạn nên tham số hoá những đoạn code đó và viết thành function. Thói quen này giúp mã nguồn ngắn hơn, dễ quản lý hơn khi nếu điều chỉnh thì chỉ cần điều chỉnh ở 1 nơi.

 

File mã nguồn

File mã nguồn nên được đặt tên theo kiểu chữ thường, giữa các chữ phân cách bằng -. Extension của file là .R.

# Goodfit-models.Rutility-functions.R# Badfoo.rstuff.rMỗi 1 file R chỉ nên gồm những hoặc đoạn code có mối quan hệ với nhau xét về mặt ngữ nghĩa, không nên viết những file mã lệnh quá dài, gây ra khó khăn khi người đọc phải scroll lên xuống nhiều để nắm bắt ý tưởng. Nếu như việc thực thi các file diễn ra theo trình tự thì nên đặt số thứ tự cho file:

0-download.R1-parse.R2-explore.R

Trình bày mã code ngay hàng thẳng lối

Soạn mã lệnh cũng như trình bày văn bản, ngay hàng thẳng lối giúp người đọc thoải mái, đồng thời có thể tách bạch được ý tưởng thành từng phân đoạn. Mỗi một dòng mã không nên kéo dài quá hơn 80 ký tự.

function luôn được mở đầu và kết thúc với { và } và luôn dùng return ở dòng lệnh gán giá trị trả về, cho dù function đó chỉ có 1 lệnh đơn giản

# Goodcalculate_mean function(x){ return(mean(x))}# Badcalculate_mean function(x) mean(x)long_function_name function(a = "a long argument", b = "another argument", c = "another long argument") { }Gọi 1 function có nhiều tham số

analysis_result analyze(a = "a long argument", b = "another argument", c = "another long argument")hoặc vẽ 1 plot của ggplot với nhiều lớp phức tạp

ggplot(dat, aes(x = rating)) + geom_histogram(binwidth = .5, colour = "black", fill = "white") + facet_grid(cond ~ .) + geom_vline(data = cdat, aes(xintercept = rating.mean), linetype = "dashed", size = 1, colour = "red")Khi edit mã, thường sử dụng phím tab để căn chỉnh. Nếu dựng RStudio, cần thiết lập bước tab là 2 và đảm bảo bấm phím tab thì các khoảng trắng sẽ được thêm vào.

Đừng quên truy cập nhóm: Data Analytics VietNam để tham khảo các kiến thức về data, thảo luận và cùng chia sẻ về ngành nghề đang được săn đón nhiều nhất hiện nay.  

Chương trình đào tạo: Phân tích dữ liệu, Khoa học dữ liệu, Kĩ sư dữ liệu, Lập trình ứng dụng.
Chất lượng nhất - Uy tín nhất - Nhiều học viên tin tưởng nhất
Hơn 8000 học viên ưu tú đã tốt nghiệp
Các khóa học

Đăng ký tư vấn khóa học

*Vui lòng nhập số điện thoại của bạn

*Vui lòng nhập họ tên của bạn

*Vui lòng chọn địa điểm học

*Vui lòng chọn giới tính

*Vui lòng chọn 1 trường


Các bài viết liên quan


LỊCH KHAI GIẢNG THÁNG 02/2022

Mời bạn tham khảo các khóa học Data của MCI trong tháng 2 này nhé.

CHUYỆN TRÁI NGÀNH: HÀNH TRANG TRỞ THÀNH DATA ANALYST CẦN CHUẨN BỊ NHỮNG GÌ ĐỂ “VỮNG TAY LÁI”?

Chinh phục chứng chỉ Google Data Analytics Professional (GDAP) liệu có khó? Hãy cùng tìm hiểu tất tần tật về chứng chỉ Google Data Analytics Professional (GDAP) qua bài viết này nhé!

Ngôn Ngữ R - Ưu Điểm, Nhược Điểm Và 16 Khía Cạnh Quan Trọng

Cùng tìm hiểu về ngon ngữ R để hiểu rõ vị trí quan trọng của ngôn ngữ này trong thế giới lập trình nhé!

Các bài viết liên quan