2015-03-19 1 views
1

J'ai un jeu de données qui contient des codes CIM-9 à 3 chiffres et je veux créer une variable de description ICD9 basée sur les codes à 3 chiffres. Voici un code pour reproduire mon jeu de données:R: Création d'une variable de description de code IC9 utilisant le paquet CIM-9

id=c(1:5);icdcode=c("786","401","780","300","V30");df=data.frame(id,icdcode) 

J'ai utilisé le code suivant pour créer un nouveau var "icd9.explain":

df$icd.explain=icd9ExplainShort(as.character(df$icdcode)) 

Mon jeu de données résultant ressemble à ceci:

> df 
    id icdcode         icd.explain 
1 1  786 Anxiety, dissociative and somatoform disorders 
2 2  401 Anxiety, dissociative and somatoform disorders 
3 3  780 Anxiety, dissociative and somatoform disorders 
4 4  300 Anxiety, dissociative and somatoform disorders 
5 5  V30 Anxiety, dissociative and somatoform disorders 

Est-ce que quelqu'un a une idée sur la façon dont je peux obtenir les explications de code correctes?

Merci!

+0

Quelle langue est-ce? – Amy

+0

@Amy R et le paquet est icd9 – user3641630

Répondre

0

Pour toute personne qui pourrait être confronté à ce problème à l'avenir, j'ai pu résoudre mon problème en utilisant la fonction lapply:

lapply(as.character(df$icdcode),function(x){icd9ExplainShort(x)}) 
1

icd9 auteur paquet ici. Je viens de répondre à votre question, que je réalise il y a quelque temps.

Le paquet va deviner si vous avez une forme abrégée. 0100 ou forme décimale par ex. 010.0, de sorte que vous pouvez simplifier cela légèrement. Vous n'avez pas non plus besoin de convertir en character car il gère déjà les caractères ou les facteurs. id=c(1:5) icdcode <- c("786","401","780","300","V30") df <- data.frame(id, icdcode, desc = icd9Explain(icdcode))

ont fait 90% du travail de la CIM-10, et a dû renommer tous ces satanés noms de fonction préfixée ICD9, à l'avenir, vous allez faire icd_explain(), qui travaillera pour la CIM-9 ou de la CIM-10 .