【发布时间】:2023-04-09 19:20:01
【问题描述】:
我有一个变量表示工业部门的值在 1-100 之间;这些扇区可以不定期地分为 20 个宏观扇区(例如 1-5 -> 扇区_1、6-12 -> 扇区_2...)。
在第二个变量中转换第一个变量最有效的方法是什么?
我正在考虑使用如下函数,但解决方案效率不高,而且有点难看:
index <- function(x) {
if (x<= 5){
x <- "Sector_1"
}
if (x>5 & x<=12){
x <- "Sector_3"
}
return(x)
}
【问题讨论】:
-
我建议
cut,例如cut(x, c(-Inf, 5, 12, Inf), labels=c("Sector_1", "Sector_3", "Sector_n"))。 -
或findInterval。另见this。
-
`Cut' 效果很好!
标签: r function dataframe variables grouping