Suppose you have a data set that can be clustered as follows:

enter image description here

Is there a way to generate data that would fit inside, say, the red bubble, or blue bubble? This can definitely be done in two-dimensions, but I am currently working on a project with 6+ features.

Do you have any ideas or recommendations?

edit: @whuber pointed out that a purpose for this would be more convenient.

So, I work in Freight Shipping, and we ship a few hundred truck-loads a month. I have a hypothesis that we ship the same kinds of shipments every month -- i.e, same geographical regions, and for those regions, roughly the same weight of loads, roughly the same # of pallets, etc.

I want to cluster these kinds of shipments, so that I can attach a generator to these clusters. This generator would create lists of hypothetical shipments that I can use to test against future movements in market prices (for example, Los Angeles to New York might cost 3000 dollars in December, but 4500 dollars in February).

Thank you @whuber!

  • $\begingroup$ Of course one can generate such data. But exactly how one chooses to do that will depend on the purpose. Could you explain? $\endgroup$
    – whuber
    Sep 4, 2019 at 18:30
  • $\begingroup$ @whuber just edited my post! Thank you for pointing that out. $\endgroup$ Sep 4, 2019 at 18:51

1 Answer 1


Depends on your cluster model.

The preferred choice would be that of Gaussian Mixture Modeling as this is a generative model. It will trivially allow you to generate random points following the modeled distribution.

For other approaches such as single-link clustering I very much doubt you can do this in a meaningful way (well, you can duplicate points, maybe even linearly interpolate between merged neighbors, but this is not very general).

Beware that the resulting data will have the usual downsides of playing with idealized Gaussian distributions.

  • $\begingroup$ I looked into it and GMM seems to be perfect for my use-case! Thank you very much. $\endgroup$ Sep 5, 2019 at 0:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.