data.table初级学习
概述
data.table对于大数据的数据整理较为便捷,很多的时候比data.frame效率更高,一般情况下结合管道符号进行计算
管道符
- %in% 表示包含
- %>% 表示向右传递
- %$% 表示向右传递并直接按列操作
安装
代码语言:javascript复制install.packages("data.table")
install.packages("magrittr")
library(magrittr)
library(data.table)
使用方法
- 简单操作
iris<-iris %>%
as.data.table()
class(iris)
# 行数
nrow(iris)
# 列数
ncol(iris)
# 列名
names(iris)
# 选取列
iris[ , Species] # 返回一组向量
iris[ , .(Species)] #返回一个data.table
iris[, c("Species"), with=FALSE] #返回一组数据框
# 保留多列
iris[, .(Sepal.Length, Sepal.Width, Species)]
# 对变量进行重命名
setnames(iris, c("Species"), c("new_Species"))
# 对多个变量进行重命名
# 第一个c()对应原始变量名
# 第二个c()对应新变量名
setnames(iris, c("Species","Petal.Width"), c("new_Species","new_Petal.Width"))
# 子集的筛选与过滤
iris[Species == "setosa"]
# 设置索引提升效率
# setkey()函数可以在数据集上设置键值。置好key后,data.table会将数据按照key来排序
setkey(iris, Species)
iris[c("setosa", "virginica")]
结束语
来不及解释,时间来不及了,今天就简单这样吧,总体来说,data.table比data.frame更加简洁,运行更加迅速。