我有一个专栏,我有一个标准。我想编写一个函数来查看该列中的值属于哪个类别。
column:
Risk
0.493
1
2
1.7
1
1.7
0.29
0.493
2
0.493
criteria:
Low
0 0.517
Med
0.517 1.859
High
1.859 Inf
Desired output:
0.493 Low
1 Med
2 High
1.7 Med
1 Med
1.7 Med
0.29 Low
0.493 Low
2 High
0.493 Low
我尝试编写一个函数,但所有都出现在Med:
类别中RiskCat <- function(x) {
for ( i in 1:length(x)){
if ( i <= 0.517 ) {
print("Reduced")
} else if ( i > 0.517 & i <= 1.859 ){
print("Med")
} else if ( i > 1.859 ) {
print("High")
} } }
感谢您的建议! 或者可能有人可以在运行时纠正我的功能,它总是打印Med而我无法弄明白。
答案 0 :(得分:0)
我们可以使用cut
cut(df1$Risk, breaks = c(-Inf, 0.517, 1.859, Inf), labels = c("Low", "Med", "High"))
#[1] Low Med High Med Med Med Low Low High Low
#Levels: Low Med High