2013-02-20 3 views
1

J'ai un dataframe avec 2 colonnesvaleurs Fractionnement sur la base de la colonne de comptage

>mydata <- data.frame(Obj = c(1,2,3,2), Count = c(2,3,1,4)) 
>mydata 
    Obj Count 
1 1  2 
2 2  3 
3 3  1 
4 2  4 

Je veux diviser la colonne Obj en fonction du nombre pour obtenir les objets atomiques comme (1, 1, 2, 2 , 2, 3, 2, 2, 2, 2) Ouais c'est l'inverse de la table fonction. Y a-t-il une fonction pour faire cela dans R? P.: Une simple boucle peut faire l'affaire, mais je pense qu'il est toujours bon d'utiliser des fonctions efficaces intégrées.

Répondre

2

essayer

rep(mydata$Obj,mydata$Count) 
+0

Merci @Aditya Sihag –

2

Vous cherchez rep, avec Count étant le temps l'argument

with(mydata, rep(Obj, Count)) 

ou rep.int, qui est une mise en œuvre légèrement plus rapide de rep(x, times)

with(mydata, rep.int(Obj, Count)) 
+0

Merci une lot @mnel. –

Questions connexes