2011-05-03 5 views
1

J'ai un vecteur de données discrètes et je veux simuler à partir de la distribution empirique associée à ces données, je simulais avec la fonction rlogspline après ajustement < -logspline (vector_of_data) où vector_of_data est données qui sont supposées provenir d'une distribution continue, c'est pourquoi j'ai utilisé logspline, mais avec ce vecteur j'ai la certitude que les valeurs sont discrètes, donc je ne peux pas utiliser logspline pour ajuster un "ajustement" .Simulation à partir d'un vecteur de données discrètes

Fondamentalement, ce que je veux faire est d'ajuster un «ajustement» des données observées, puis utiliser cette forme pour simuler ces valeurs. Pensez-vous que cela peut être fait en R?

Merci beaucoup pour votre aide.

+0

vous ne pouvez pas appliquer tout rond() pour les simulations que vous obtenez de logspline? –

+0

Ouais, je peux le faire mais le problème est que si je n'ai qu'un vecteur de valeurs discrètes positives, je pourrais finir par une simulation qui me donne des valeurs négatives, à cause de la façon dont la spline est calculée autour de 0. – natorro

+0

pas regardé les deuxième et troisième arguments à logspline assez soigneusement. –

Répondre

2

Je pense que sample(x,...,replace=TRUE) (échantillonnage avec remplacement) doit simuler de la distribution empirique ...

+0

Oui, mais le problème ici est qu'il me retournera des valeurs que j'ai déjà observées, je voudrais avoir des valeurs de la densité "réelle" qui n'ont pas été observées déjà et qui pourraient être observées une fois que j'ai ajusté le densité. – natorro

0

Je ne suis pas tout à fait clair exactement ce que vous essayez de faire, mais pourriez-vous utiliser quelque chose comme quantile et runif, par exemple :

obs <- c(125,110,115,100,150)    # original observations 
sim <- quantile(obs, runif(10000))  # simulations 
hist(sim, freq=FALSE) 

sim histogram

Questions connexes