Sortie de quantile d'une trame de données
C'est assez souvent question de base, mais je n'ai pas vu une bonne réponse sur les différents forums.
Dire que j'ai un simple vecteur
x = runif(10,1,4)
> x
[1] 3.292108 1.388526 2.774949 3.005725 3.904919 1.322561 2.660862 1.400743
[9] 2.252095 3.567267
>
Ensuite, j'ai calculer certains quantiles,
> z = quantile(x,c(0.1,0.8))
> z
10% 80%
1.381929 3.347140
>
J'ai besoin de cette sortie comme une trame de données. J'ai donc essayé les
> y = data.frame(id = names(z),values=z)
> y
id values
10% 10% 1.381929
80% 80% 3.347140
Je vois que le "%" de la colonne est répété. Aussi, quand j'ai essayer
> y$id[1]
[1] 10%
Levels: 10% 80%
alors que je m'attends à ce qu'il soit juste "10%" ou 0,1
Toute aide appréciée.
OriginalL'auteur broccoli | 2012-07-11
Vous devez vous connecter pour publier un commentaire.
Les noms sont simplement les probabilités de sorte
Serait de travailler.
Serait en l'enveloppant dans une fonction qui renvoie un
data.frame
OriginalL'auteur mnel
Vous obtenez les noms de deux fois parce que vous donnez
data.frame
les noms de deux fois, d'abord comme un vecteur, puis dans le cadre de l'nommé vecteur. Vous obtenezlevel
s parce que par défaut,stringsAsFactors
estTRUE
.unname
. Chouette.OriginalL'auteur GSee