Fitting a distribution to sample data I have completely modified this post for the sake of clarity. To Whuber and David, thank you guys for your posts.
I want to perform a MC Simulation to see what will, more likely, be the tendency in the distribution of vessels by TEU Capacity (if there is going to be more vessels in the 1000-2000 TEU range, or in the 300 - 4000 TEU range, etc.).
But to do the MC Simulation I need to generate random numbers from a specific distribution and I do not want to assume normality or lognormality or any other distribution if I do not do the goodness of fit check first. The thing is, what how would I go around the  distribution fitting taking into account the number of vessels assigned to each TEU Range Class?
CLASS                   Count of Vessel          FREQ
13,000.01 - 14,000 TEUS       22             25%
8,000.01 - 9,000 TEUS         19             21%
4,000.01 - 5,000 TEUS         17             19%
6,000.01 - 7,000 TEUS          9             10%
5,000.01 - 6,000 TEUS          6              7%
9,000.01 - 10,000 TEUS         5              6%
1,000.01 - 2,000 TEUS          4              4%
3,000.01 - 4,000 TEUS          4              4%
16,000.01 - 16,500 TEUS        2              2%
2,000.01 - 3,000 TEUS          1              1%

Grand Total 89  

 A: You're presenting data aggregated into bins of effectively fixed width, so you basically have a histogram to work with. 
# sample data
vesselsize = c(13e3, 8e3,4e3, 6e3, 5e3, 9e3, 1e3, 3e3, 16e3, 2e3) # lower bound of each bin.
freq = c(.25, .21, .19, .10, .7, .6, .4, .4, .2, .1)

# histogram
plot(vesselsize, freq, type='h')


If you really want to do a MC simulation, here's a really, really dirty solution you could try: 
# reverse-engineered pseudo-sample
N=1e4
test = sample(vesselsize, size=N, replace=T, prob=freq)
BW=2*density(test)$bw # doubling bandwidth since each bucket of values
                      # is concentrated at a single point (which would
                      # give us very sharp peaks with the default bw)
plot(density(test, bw=BW)) 


NB: For each bin, we really only know that the vessels in that bin are at minimum the size of the lower bound of the bin, so instead of making any distributional assumptions about the bin (e.g. drawing uniform samples across the full range of the bin) I just sample from the lower bound of the bins.
I'm not sure how helpful this approach is to you, but it sounds like you're looking to build up a "fake" dataset, so here's one way you could accomplish that.
