我有一个如下所示的数据表:
library(data.table)
dt <- fread(
"Sex Height
M 180
F 179
F 162
M 181
M 165
M 178
F 172
F 160",
header = TRUE
)
我想将身高分成不同的组。然而,我希望男性和女性分开分组。以下代码给出了三个因子水平,我希望有六个。
dt[,height_f := cut(Height, breaks = c(0, 165, 180, 300), right = FALSE), by="Sex"]
> table(dt$height_f)
[0,165) [165,180) [180,300)
2 4 2
我感觉这应该是非常简单的事情,但我无法想出如何写它。
> table(dt$height_f)
M:[0,165) M:[165,180) M:[180,300) F:[0,165) F:[165,180) F:[180,300)
0 3 1 2 2 0