Besoin d'aide sur 2 codes groupés sur R

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Betty Kuzondisa
Messages : 14
Enregistré le : 27 Juin 2018, 14:26

Besoin d'aide sur 2 codes groupés sur R

Messagepar Betty Kuzondisa » 09 Juil 2018, 07:15

Bonjour,
Je suis entrain d'analyser ma base des données.
Et je suis bloquée au niveau de 2 syntaxes, je sais pas comment écrire cela sur R pour avoir les réponses dont j'ai besoin.

- 1ère question:

Quelle syntaxe taper sur R où je pourrais avoir la proportion de tout mes codes prestations infirmiers
sur un total de 100%? (chacun variable est codée 0 et 1)

Ce que je fais sur R mais de manière séparé est :

***prestations techniques infirmières sur le total des visites ***Problème
describe(bxl$code.t)
describe(bxl$code.vs)
describe(bxl$code.ta)
describe(bxl$code.as)
describe(bxl$code.pm)
describe(bxl$code.py)
describe(bxl$code.pm)
describe(bxl$code.ao)
describe(bxl$code.ae)
describe(bxl$code.ab)
describe(bxl$code.ab)
describe(bxl$code.ao)
describe(bxl$code.ae)
describe(bxl$code.ab)
describe(bxl$code.sv)
describe(bxl$code.gy)
describe(bxl$code.ac)

Question: Comment le taper sur un seul code, de manière groupée pour tout le code?

-2ème question:

Quelle syntaxe taper sur R pour avoir " les proportions et quantités, dans un intervalle déjà créer (en semaine, mois, trimestre), pour chaque valeur où le nom est identique et, si la visite de l'infirmier et la visite de l'aide familiale se sont deroulées dans un même intervale? (les visites sont codés en deux colonnes en 0 ou 1)

Ce que j'ai su faire: j'ai crée les catégories

**En 52 semaine**
bxl$jour.ans.semaine<-cut(bxl$jour.ans, breaks = c(1,8,15,22,29,36,43,50,57,64,71,78,85,92,99,106,113,120,127,134,141,148,155,162,169,176,183,190,197,204,211,218,225,232,239,246,253,260,267,274,281,288,295,302,309,316,323,330,337,344,351,358,365), include.lowest= TRUE)


**par mois**

bxl$jour.ans.mois<-cut(bxl$jour.ans, breaks = c(1,32,60,91,121,152,182,213,244,274,305,335,365), include.lowest= TRUE)

**par trimestre**

bxl$jour.ans.trimestre<-cut(bxl$jour.ans, breaks = c(1,91,182,274,365), include.lowest= TRUE).

POUVEZ VOUS M'AIDER SVP JE SUIS à BOUT

Victor Cazalis
Messages : 68
Enregistré le : 24 Aoû 2014, 06:19

Re: Besoin d'aide sur 2 codes groupés sur R

Messagepar Victor Cazalis » 13 Juil 2018, 17:34

Bonjour,

Pour la première question, je ne connais pas de fonction qui applique facilement une même commande pour chaque colonne, je passe plutôt par des boucles.

A priori pour une colonne donnée, vous pouvez obtenir le pourcentage des prestations par prop.table(table(bxl$code.t))["1"]

Pour l'avoir pour chacune de vos colonnes et stocker les proportions dans l'ordre dans un vecteur que j'appelle v, voilà une boucle qui devrait fonctionner :

v<-NA # Crée le vecteur qui stockera les valeurs finales

for(i in 2:10){ # J'imagine que vos indices sont dans les colonnes 2 à 10, il faut changer les nombres en fonction du numéro de colonne où vos indices sont stockés
v[i]<-prop.table(table(bxl[,i]))["1"]
}


Pour la seconde question, je veux bien aider mais n'ai pas très bien compris la question. Pouvez-vous nous fournir un petit exemple s'il vous plait ?

Bon week-end, Victor

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: Besoin d'aide sur 2 codes groupés sur R

Messagepar Pierre-Yves Berrard » 13 Juil 2018, 18:14

Victor Cazalis a écrit :v<-NA # Crée le vecteur qui stockera les valeurs finales

for(i in 2:10){ # J'imagine que vos indices sont dans les colonnes 2 à 10, il faut changer les nombres en fonction du numéro de colonne où vos indices sont stockés
v[i]<-prop.table(table(bxl[,i]))["1"]
}

Une alternative avec les mêmes hypothèses :

Code : Tout sélectionner

v <- sapply(bxl[2:10], mean)

ou pour détecter automatiquement les colonnes commençant par "code"

Code : Tout sélectionner

v <- sapply(bxl[grep("^code", names(bxl))], mean)
PY


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité