# summary.dirichlet: Theoretical summary statistics from the Dirichlet model. In NBDdirichlet: NBD-Dirichlet Model of Consumer Buying Behavior for Marketing Research

## Description

This function summarizes a 'dirichlet' object. It is a method for the generic function summary of class 'dirichlet'. It calculate four types of theoretical summary statistics, which can be compared with the corresponding observed statistics.

## Usage

 1 2 3 ## S3 method for class 'dirichlet' summary(object, t = 1, type = c("buy", "freq", "heavy", "dup"), digits = 2, freq.cutoff = 5, heavy.limit = 1:6, dup.brand = 1, ...) 

## Arguments

 object An object of "dirichlet" class. t Multiple of the base time period. For example, if the assumed base time period is quarterly, then t=4 would mean annually. Default to one. type A character vector that specifies which types of theoretical statistics (during the time period indicated by t) are to be calculated. Four character strings can be listed: buyTheoretical brand penetration, buying rate, and the buying rate of the category per brand buyer. freqDistribution of the number of brand purchases. heavyTheoretical brand penetration and buying rate among category buyers with a specific frequency range. dupBrand duplication (proportion of buyers of a particular brand also buying other brand). digits Number of decimal digits to control the rounding precision of the reported statistics. Default to 2. freq.cutoff For the type="freq" table, where to cut off and lump the tail of the frequency distribution. heavy.limit For the type="heavy" table, a vector containing the specific purchase frequency range of the category buyers. The upper-bound of the frequency is nstar. dup.brand For the type="dup" table, the focal brand. Defaul to the first brand in the brand list. ... Other parameters passing to the generic function.

## Details

The output corresponds to the theoretical portion of the Table 3, 4, 5, 6 in the reference paper. We also have another set of functions (available upon request) that put observed and theoretical statistics together for making tables that resemble those in the reference.

Let P_n be the probability of a consumer buying the product category n times. Then P_n has a Negative Binomial Distribution (NBD). Let p(r_j|n) be the probability of making r_j purchases of brand j, gien that n purchases of the category having been make (r_j≤q n). Then p(r_j|n) has a Beta-Binomial distribution.

The theoretical brand penetration b is then

b = 1 - ∑_{n=0} P_n p(0|n)

The theoretical brand buying rate w is

w = \frac{∑_{n=1} \{ P_n ∑_{r=1}^n r p(r|n) \}}{b}

w_P = \frac{∑_{n=1} \{ n P_n [ 1 - p(0|n)] \}}{b}

The brand purchase frequency distribution is

f(r) = ∑_{n ≥q r} P_n p(r|n)

The brand penetration given a specific category purchase frequency range R=\{i_1, i_2, i_3, …\} is

1 - \frac{∑_{n \in R} P(n) p(0|n)}{∑_{n \in R} P(n)}

The brand buying rate given a specific category purchase frequency range R=\{i_1, i_2, i_3, …\} is

\frac{∑_{n \in R} P(n) [∑_{r=1}^n r p(r|n)]}{∑_{n \in R} P(n) [1 - p(0|n)] }

To calculate the brand duplication measure, we first get the penetration b_{(j+k)} of the "composite" brand of two brands j and k as:

b_{(j+k)} = 1 - ∑_n P_n p_k(0|n) p_j(0|n)

Then the theoretical proportion b_{jk} of the population buying both brands at least once is:

b_{jk} = b_j + b_k - b_{(j+k)}

and the brand duplication b_{j/k} (where brand k is the focal brand) is:

b_{j/k} = b_{jk} / b_k

## Value

A list with those components that are specified by the input type parameter.

 buy A data frame with three components: pen.brand (Theoretical brand penetration), pur.brand (buying rate of the brand), pur.cat (buying rate of the category per brand buyer). freq A matrix that lists the distribution of brand purchases. The number of rows is the number of brands. heavy A matrix with two columns. The first column (Penetration) is the theoretical brand penetration among category buyers with a specific frequency range. The second column (Avg Purchase Freq) is the brand buying rate of those category buyers. The number of rows is the number of brands. dup A vector with dimension as the number of brands. It reports the brand duplication (proportion of buyers of a particular brand also buying other brand) of the focal brand (dup.brand).

Feiming Chen

## References

The Dirichlet: A Comprehensive Model of Buying Behavior. G.J. Goodhardt, A.S.C. Ehrenberg, C. Chatfield. Journal of the Royal Statistical Society. Series A (General), Vol. 147, No. 5 (1984), pp. 621-655

dirichlet, print.dirichlet, plot.dirichlet, NBDdirichlet-package
  1 2 3 4 5 6 7 8 9 10 11 12 13 cat.pen <- 0.56 # Category Penetration cat.buyrate <- 2.6 # Category Buyer's Average Purchase Rate in a given period. brand.share <- c(0.25, 0.19, 0.1, 0.1, 0.09, 0.08, 0.03, 0.02) # Brands' Market Share brand.pen.obs <- c(0.2,0.17,0.09,0.08,0.08,0.07,0.03,0.02) # Brand Penetration brand.name <- c("Colgate DC", "Macleans","Close Up","Signal","ultrabrite", "Gibbs SR","Boots Priv. Label","Sainsbury Priv. Lab.") dobj <- dirichlet(cat.pen, cat.buyrate, brand.share, brand.pen.obs, brand.name) ## Not run: summary(dobj) summary(dobj, t=4, type="freq") summary(dobj, t=4, type="heavy", heavy.limit=c(7:50)) summary(dobj, t=1, type="dup", dup.brand=2)