cat(search() , sep = "\n").GlobalEnv
package:dplyr
package:stats
package:graphics
package:grDevices
package:utils
package:datasets
package:methods
Autoloads
package:base
R là ngôn ngữ lập trình để xử lý dữ liệu hàng đầu hiện nay, được thiết kế chuyên để xử lý thống kê và vẽ đồ thị. Đặc điểm của R là các câu lệnh được tối ưu để tính toán theo kiểu vector, ta có thể sử dụng các function từ gói package R Base mặc định cũng như từ các package chuyên môn (bản chất là các câu lệnh R được đóng gói thành function) để tính toán nhanh gọn một tác vụ xử lý dữ liệu cụ thể.
Bạn có thể tham khảo danh sách tổng hợp các package chuyên môn theo chủ đề được nhóm phát triển R Core Team tổng hợp ở đây CRAN Task Views.
Trong file HTML này mình tổng hợp các package và cụm lệnh thường sử dụng khi phân tích dữ liệu. Hy vọng sẽ hữu ích cho bạn để nhanh chóng áp dụng các package này vào công việc. Các bạn có thể đóng góp thêm cho danh sách được đầy đủ bằng cách chia sẻ trên Group Cộng Đồng Tự Học R nhé. Cảm ơn các bạn rất nhiều.
Để hiểu rõ hơn cách cài đặt package trong R, bạn xem video này nhé. Bài giảng.
Các câu lệnh nâng cao khi xử lý package trong R. Link.
Khi mở phiên làm việc (session) trong RStudio, bạn dùng câu lệnh sau sẽ liệt kê các package mặc định của R Base.
cat(search() , sep = "\n").GlobalEnv
package:dplyr
package:stats
package:graphics
package:grDevices
package:utils
package:datasets
package:methods
Autoloads
package:base
Các lệnh R cơ bản thường dùng được mình trình bày chi tiết trong khóa học R for Data Science. Link
Summary dữ liệu
aggregate(weight ~ group,
x = PlantGrowth,
FUN = mean) group weight
1 ctrl 5.032
2 trt1 4.661
3 trt2 5.526
dplyrĐây là package được thiết kế theo phương thức lập trình dùng dấu %>% hay |> để đẩy kết quả phân tích từ bên trái qua tham số thứ nhất của function bên phải, thuận tiện tạo luồng code (chain), tái sử dụng đoạn code khi chỉ cần thay đổi dataset đầu vào.
Sắp xếp dữ liệu
library(dplyr)
# from small to big theo Girth
trees[1:6, ] |> dplyr:::arrange(Girth) Girth Height Volume
1 8.3 70 10.3
2 8.6 65 10.3
3 8.8 63 10.2
4 10.5 72 16.4
5 10.7 81 18.8
6 10.8 83 19.7
# from big to small theo Girth
trees[1:6, ] |> dplyr:::arrange(dplyr:::desc(Girth)) Girth Height Volume
1 10.8 83 19.7
2 10.7 81 18.8
3 10.5 72 16.4
4 8.8 63 10.2
5 8.6 65 10.3
6 8.3 70 10.3
Summary dữ liệu
library(dplyr)
mtcars |> dplyr:::group_by(cyl) |>
dplyr:::summarise(mean_wt = mean(wt),
sd_wt = sd(wt),
count = dplyr:::n()) |> as.data.frame() cyl mean_wt sd_wt count
1 4 2.285727 0.5695637 11
2 6 3.117143 0.3563455 7
3 8 3.999214 0.7594047 14
car và effectsPackage này được viết bởi John Fox, sử dụng khi phân tích hồi quy. Chi tiết câu lệnh được hướng dẫn trong tài liệu An R Companion to Applied Regression. Link
Lệnh kiểm tra phân phối chuẩn bằng đồ thị QQ plot
par(pty = "s")
par(oma = c(0,0,0,0))
par(mar = c(2,4,0,2))
car:::qqPlot(mtcars$mpg)
Vẽ đường mật độ xác suất ellipse
par(pty = "s")
par(oma = c(0,0,0,0))
par(mar = c(2,4,0,2))
plot(Volume ~ Height,
data = trees,
col = "darkgreen",
pch = 19,
xlim = c(40,100),
ylim = c(-10,80))
car:::dataEllipse.formula(Volume ~ Height,
data = trees,
col = "lightblue",
pch = NA,
center.pch = FALSE,
fill = TRUE,
levels = c(0.5, 0.9),
fill.alpha = 0.3,
lty = 2,
add = T)
Vẽ đường effects plot | Vignettes
library(effects)
mtcars$cyl <- factor(mtcars$cyl)
fit <- lm(mpg ~ wt * cyl,
data = mtcars)
effects:::plot.efflist(effects:::predictorEffects(fit),
lines = list(multiline = FALSE))
effects:::plot.efflist(effects:::predictorEffects(fit),
lines = list(multiline = TRUE))
caretNhiều package có hiện tượng dùng trùng tên function, vì vậy ta nên khai báo triệt để đến namespace của function đó, bằng cách dùng dấu :::. Ví dụ muốn sử dụng function arrange() trong package dplyr, bạn nên dùng cú pháp sau dplyr:::arrange() để đảm bảo cho R dò tên function trong phạm vi package dplyr chứ không dùng nhầm qua package khác.
packageVersion("car")
install.packages("car")
remove.packages("car")
install.packages("https://cran.r-project.org/src/contrib/Archive/FAOSTAT/FAOSTAT_2.2.4.tar.gz",
repos = NULL,
type = "source")
library(devtools)
install_version("ggplot2", version = "0.9.1", repos = "http://cran.us.r-project.org")
# chỉ detach package và function thôi
unloadNamespace("plot.matrix")
detach("package:plot.matrix",
unload = TRUE,
force = TRUE)
### detach triệt để package và method đi kèm
pkgload:::unload("plot.matrix")
devtools::unload("plot.matrix")