6.20 对符合条件的列操作
# 数值型变量的列的位置
which(sapply(iris, is.numeric))
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## 1 2 3 4
sapply(iris, is.numeric), with = F][Sepal.Length > 7.5] iris[,
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## 1: 7.6 3.0 6.6 2.1
## 2: 7.7 3.8 6.7 2.2
## 3: 7.7 2.6 6.9 2.3
## 4: 7.7 2.8 6.7 2.0
## 5: 7.9 3.8 6.4 2.0
## 6: 7.7 3.0 6.1 2.3
class(iris)
## [1] "data.table" "data.frame"
用 Base R 提供的管道符号 |> 将 data.table 数据操作与 ggplot2 数据可视化连接起来
library(ggplot2)
|>
iris subset(Species == "setosa" & Sepal.Length > 5.5) |>
# 行过滤
# subset(select = grep("Sepal", colnames(iris), value = TRUE)) |> # 列过滤
subset(select = grepl("Sepal", colnames(iris))) |>
ggplot(aes(x = Sepal.Length, y = Sepal.Width)) + # 绘图
geom_point()