table avec toutes les valeurs

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

Christophe Genolini
Messages : 698
Enregistré le : 12 Juin 2006, 21:37
Contact :

table avec toutes les valeurs

Messagepar Christophe Genolini » 24 Oct 2008, 14:47

Bonjour,

Quand on demande la table d'une variable discrete, on obtient le nombre de valeurs pour les modalité présentes, mais on n'obtient pas de zéro pour les absentes :

Code : Tout sélectionner

nbFrere <- c(0,0,1,0,0,1,3)
table(nbFrere)
# nbFrere
# 0 1 3
# 4 2 1


Savez-vous s'il est possible que toutes les valeurs entre le min et le max soit prisent en compte ? J'ai bien une solution :

Code : Tout sélectionner

table(c(nbFrere,min(nbFrere):max(nbFrere)))-1


Mais je la trouve un peut crade...

christophe

Logez Maxime
Messages : 3138
Enregistré le : 26 Sep 2006, 11:35

Messagepar Logez Maxime » 24 Oct 2008, 15:02

Bonjour,

pas mieux qu'un truc crade :

Code : Tout sélectionner

table(factor(nbFrere,levels=min(nbFrere):max(nbFrere)))
tabulate(nbFrere <- c(0,0,1,0,0,1,3),4)


Maxime

Christophe Genolini
Messages : 698
Enregistré le : 12 Juin 2006, 21:37
Contact :

Messagepar Christophe Genolini » 24 Oct 2008, 15:07

Logez Maxime a écrit :Bonjour,

pas mieux qu'un truc crade :

Code : Tout sélectionner

table(factor(nbFrere,levels=min(nbFrere):max(nbFrere)))
tabulate(nbFrere <- c(0,0,1,0,0,1,3),4)


Maxime

Ah non, c'est nétement mieux ! Moi, je fais une petite magouille avec des +1 / -1, toi tu lui précises l'étendue des observations... C'est exactement ce que je recherchais.

Merci !

Christophe

jean lobry
Messages : 733
Enregistré le : 17 Jan 2008, 20:00
Contact :

Messagepar jean lobry » 24 Oct 2008, 18:05

Logez Maxime a écrit :pas mieux qu'un truc crade :


Bonjour,

pourquoi crade ? La première chose que fait la fonction table() c'est de transformer l'argument en un facteur. En lui fournissant une variable qualitative dont tu explicites les modalités, tu contrôles parfaitement la situation. Pour moi c'est la solution canonique au problème.

Amicalement,

Jean


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité

cron