假设你有一个像这样的data.frame:
x <- data.frame(v1=1:20,v2=1:20,v3=1:20,v4=letters[1:20])
Run Code Online (Sandbox Code Playgroud)
您如何仅选择x中的数字列?
我们如何使用其数字索引(位置)的向量选择多个列data.table?
这就是我们如何处理data.frame:
df <- data.frame(a = 1, b = 2, c = 3)
df[ , 2:3]
# b c
# 1 2 3
Run Code Online (Sandbox Code Playgroud) 我有两列numeric和非numeric列的数据,如下所示:
mydt
vnum1 vint1 vfac1 vch1
1: -0.30159484 8 3 E
2: -0.09833430 8 1 D
3: -2.15963282 1 3 D
4: 0.03904374 5 2 B
5: 1.54928970 4 1 C
6: -0.73873654 5 1 A
7: -0.68594479 9 2 B
8: 1.35765612 1 2 E
9: 1.46958351 2 1 B
10: -0.89623979 2 4 E
Run Code Online (Sandbox Code Playgroud)
如何仅选择numeric列并计算其mean使用data.table?
我试过这个:
mydt[ , lapply(.SD, mean), ]
# vnum1 vint1 vfac1 vch1
# 1: …Run Code Online (Sandbox Code Playgroud) 假设我有一个数据框,如下所示;
假设我希望选择列名称中包含“cases”的列,和/或如果我希望选择数字列,如何使用 data.table 语法实现此目的?
即相当于代码tidyverse;
df <- df |>
select(contains("cases"))
Run Code Online (Sandbox Code Playgroud)
或者
df <- df |>
select(where(is.numeric))
Run Code Online (Sandbox Code Playgroud)
结果是;