将数字变量更改为分类变量?
Changing numeric variable to categorical variable?
我是一名金融专业的学生,过去几周一直在 R 中玩耍(这里是 Rookie..)。
问题:我有两个数值变量:A 和 B。我想将它们转换成一个绝对变量 C。C 取以下值:
1 如果 A 和 B 都得分最高的十分之一 - 或分布的五分位数。
0 否则
有谁知道如何实现这一点?提前致谢!
如果我理解你的意思,你可以使用这个功能:
get_categorical = function(A,B,decile=9){
da = as.numeric(quantile(A,probs=seq(0.1,0.9,by=0.1)))[decile];
db = as.numeric(quantile(B,probs=seq(0.1,0.9,by=0.1)))[decile];
categ = ifelse(A>=da & B>db,1,0);
return (categ);
}
现在您可以将 A 和 B 设置为参数:
get_categorical(A,B)
希望对您有所帮助。
我是一名金融专业的学生,过去几周一直在 R 中玩耍(这里是 Rookie..)。
问题:我有两个数值变量:A 和 B。我想将它们转换成一个绝对变量 C。C 取以下值:
1 如果 A 和 B 都得分最高的十分之一 - 或分布的五分位数。
0 否则
有谁知道如何实现这一点?提前致谢!
如果我理解你的意思,你可以使用这个功能:
get_categorical = function(A,B,decile=9){
da = as.numeric(quantile(A,probs=seq(0.1,0.9,by=0.1)))[decile];
db = as.numeric(quantile(B,probs=seq(0.1,0.9,by=0.1)))[decile];
categ = ifelse(A>=da & B>db,1,0);
return (categ);
}
现在您可以将 A 和 B 设置为参数:
get_categorical(A,B)
希望对您有所帮助。