Si je veux recoder une variable dans R en utilisant E.g. Si j'ai la variable appelée Je veux recoder le sexe 0 à inconnu, 1 à mâle, 2 à une femme:
Voici comment j'ai essayé: p> mais je reçois une erreur p> p> p> data.table code>, quelle est la syntaxe? J'ai vu des ans mais je ne les ai pas trouvés appropriés. sexe code> p>
3 Réponses :
Vous pouvez le faire de cette façon deux problèmes dans votre code: p>
: = code> qui est le symbole d'attribution d'une colonne dans Data.Table LI>
ifelse code>, vous avez donc besoin d'un autre ifelse code> pour le troisième cas: si le genre n'est pas 0, vous devez tester si le genre est 1 Séparer les cas masculins et féminins li>
ul> p>
et aussi voyages [ sexe: = c ("inconnu", "mâle", "femme") [sexe + 1L]] code>
Une fois que vous avez des données. Il serait alors plus efficace d'utiliser une stratégie de traduction vectorisée. La fonction code> correspondre code> fournit une méthode de création d'un "vecteur de sélection" pour choisir un élément à partir d'un ensemble de possibilités de caractères: pour ce cas spécifique, un plus simple la solution pourrait être (ht to @chinsoon ): p>
C'est un eqv très soigné de case_quive code>, j'ai réellement la recherche de cela.
Le commutateur code> code> est le plus proche que R est à une seule fonction pour faire "cas-quand" logique, mais à part du fait que je ne peux jamais me souvenir de son nom, il a plus d'inconvénient sa syntaxe changements selon que son premier argument est "caractère" ou numérique code>
Mettez les règles dans une table et faites une jointure de mise à jour:
Vous auriez un problème avec (non) -Capitalisation du sexe, même si vous avez la logique Ifelse correcte.