2017-04-12 2 views
0

Je suis étudiante en finance et j'ai joué dans R ces deux dernières semaines (Rookie ici ..).
QUESTION: J'ai deux variables numériques: A et B. Je veux tourner ces derniers dans une variable cathegorical C. C prend les valeurs suivantes:
1 si A et B à la fois le score décile supérieur - ou quintile du Distribution.
0 sinon

Est-ce que quelqu'un a une idée de comment effectuer cela? Merci d'avance!Changement de variable numérique en variable catégorielle?

+4

Bienvenue à SO! S'il vous plaît lire [demander] et [mcve] ... puis modifier votre question: http://stackoverflow.com/posts/43364844/edit – jogo

Répondre

0

Si je reçois votre sens droit, vous pouvez utiliser cette fonction:

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); 
    } 

Maintenant, vous pouvez définir A et B comme arguments:

get_categorical(A,B) 

Hope it helps.

+0

Merci beaucoup pour votre réponse. A pu créer la variable comme suit: dummyVariabele <- ifelse ((Mergeddata $ ABS_DA> = quantile (Mergeddata $ ABS_DA, c (0.9), na.rm = VRAI)) & (Mergeddata $ RM_Proxy> = quantile (Mergeddata $ RM_Proxy , c (0,9), na.rm = VRAI)), 1, 0). – Simon