在 R 中使用 data.table 进行数据处理
Matt Dowle and Arun Srinivasan
Instructors, DataCamp
data.framedata.frame行、列 和 分组 思考# data.table 语法通式
DT[i, j, by]
| | |
| | --> 按什么分组?
| -----> 做什么?
--------> 哪些行?

创建数据表的三种方式:
data.table()as.data.table()fread()library(data.table)
x_df <- data.frame(id = 1:2, name = c("a", "b"))
x_df
id name
1 a
2 b
x_dt <- data.table(id = 1:2, name = c("a", "b"))
x_dt
id name
1 a
2 b
y <- list(id = 1:2, name = c("a", "b"))
y
$id
1 2
$name
"a" "b"
x <- as.data.table(y)
x
id name
1 a
2 b
由于 data.table 本身就是 data.frame …
x <- data.table(id = 1:2,
name = c("a", "b"))
x
id name
1 a
2 b
class(x)
"data.table" "data.frame"
用于查询 data.frame 的函数同样适用于 data.table
nrow(x)
2
ncol(x)
2
dim(x)
2 2
data.table 不会自动把字符列转换为因子
x_df <- data.frame(id = 1:2, name = c("a", "b"))
class(x_df$name)
"factor"
x_dt <- data.table(id = 1:2, name = c("a", "b"))
class(x_dt$name)
"character"
从不设置、需要或使用行名
rownames(x_dt) <- c("R1", "R2")
x_dt
id name
1: 1 a
2: 2 b
在 R 中使用 data.table 进行数据处理