Statistical Model: How much will my open bar at my wedding cost? I am getting married in November in Mexico and after fidgeting with my wedding budget, I was wondering if anyone had any insight into how I should approach my problem. Thought it was relatively interesting enough to open it up to this community. 
I need to forecast/budget my open bar costs for my wedding. The objective would be to have some form of a model that I can say with a reasonable prediction interval, that my open bar costs will be X.
Here is the information I have available to me. 


*

*Number of Guests: 120  

*male/female ratio: ~50%  

*25-35 yrs old moderate drinkers: 75% 

*55+ light drinkers: 25%   

*Weather: 70-80 degrees/beach  

*Drink costs: 


*

*Water/Soda: \$3

*Beer \$5

*Wine/Liquor: \$10  


*Duration:


*

*Wedding: 6 hours

*Bar: 5 hourse



Average drink rates I have found online is one drink an hour but open to other suggestions based on better/more informed research.
Anyone have any thoughts? I have done some basic statistical regressions and models, but am a novice.
Feel free to ask questions and I will do my best to answer them.
 A: One could use Monte Carlo and some reasonable prior assumptions to quantify the uncertainty in your costs, at the least.
Here I make some very rough assumptions:


*

*Guests will drink at a steady pace for all six hours

*We pretend we've seen six guests, four of which were moderate drinkers, two were light drinkers.

*Moderate drinkers consume 1 per hour (sd = .3)

*Light drinkers consume .5 per hour (sd = .2)

*We pretend we've seen twenty-five drinks served: five sodas, ten beers, ten wine/liquor.

*No guest will earn you money by consuming negative beverages.




library(truncnorm) # for truncated normal, so guests don't have drinks<0

library(gtools) # for dirichlet prior, water vs beer vs wine

total.cost = NULL
# begin Monte Carlo loop
for (i in 1:1e4) {
  guests = 120
  prices = c(3, 5, 10)
  hours = 6
  # get number of men
  prob.male  = rbeta(1, 30, 30) # prior distribution, contains uncertainty
  n.male = rbinom(1, size = guests, prob = prob.male) 
  n.female = guests - n.male
  # get number of moderate/light drinkers
  prob.moderate = rbeta(1, 4, 2) # prior distribution, contains uncertainty
  n.moderate = rbinom(1, size = guests, prob = prob.moderate)
  n.light = guests - n.moderate
  # make rate of drinks/hour
  rate.moderate = rtruncnorm(n.moderate, a=0, mean=1, sd=.3)
  rate.light = rtruncnorm(n.light, a=0, mean = .5, sd = .2)
  rate.guests = c(rate.moderate, rate.light)
  # weights for preference water/soda vs beer vs wine/liquor
  drink.probs = rdirichlet(1, alpha=c(5, 10, 10)) # prior, contains    uncertainty

  # how many drinks?
  drinks.total = sum(rate.guests * hours)
  drinks.expense = prices %*% rmultinom(1, size=drinks.total, prob=drink.probs)

  # store drinks expense to vector
  total.cost = c(total.cost, drinks.expense)
}

summary(total.cost)
hist(total.cost)


You can see there's a lot of uncertainty, even in this crude model. You might expand the uncertainty further by better modeling of your prior assumptions.
A: With 120 guests you could make a rough guess for each individual and then total them.  A lot of the underestimates will be balanced out by overestimates.
I did that sort of thing using pen and paper for my wedding.  For each relative, I had my mother tell me whether she thought that person would definitely or probably come or not come and calculated an expected number.  If I remember correctly (40 years ago!), my estimate turned out to be with 10 people of the actual number that showed up.
