Important: Read this before posting to this forum

  1. This forum is for questions related to the use of Apollo. We will answer some general choice modelling questions too, where appropriate, and time permitting. We cannot answer questions about how to estimate choice models with other software packages.
  2. There is a very detailed manual for Apollo available at http://www.ApolloChoiceModelling.com/manual.html. This contains detailed descriptions of the various Apollo functions, and numerous examples are available at http://www.ApolloChoiceModelling.com/examples.html. In addition, help files are available for all functions, using e.g. ?apollo_mnl
  3. Before asking a question on the forum, users are kindly requested to follow these steps:
    1. Check that the same issue has not already been addressed in the forum - there is a search tool.
    2. Ensure that the correct syntax has been used. For any function, detailed instructions are available directly in Apollo, e.g. by using ?apollo_mnl for apollo_mnl
    3. Check the frequently asked questions section on the Apollo website, which discusses some common issues/failures. Please see http://www.apollochoicemodelling.com/faq.html
    4. Make sure that R is using the latest official release of Apollo.
  4. If the above steps do not resolve the issue, then users should follow these steps when posting a question:
    1. provide full details on the issue, including the entire code and output, including any error messages
    2. posts will not immediately appear on the forum, but will be checked by a moderator first. We check the forum at least twice a week. It may thus take a couple of days for your post to appear and before we reply. There is no need to submit the post multiple times.

Interpretation of ASC for opt-out choice alternative

Ask general questions about model specification and estimation that are not Apollo specific but relevant to Apollo users.
Post Reply
stephan_b
Posts: 1
Joined: 20 Aug 2024, 09:48

Interpretation of ASC for opt-out choice alternative

Post by stephan_b »

In our DCE we examine farm managers’ preferences for participation in environmental programs with differing scheme features. Attributes are several categorical features of each scheme and one monetary program feature: the subsidy payment offered for participating in the scheme. Choice cards present two unlabelled program scheme profiles A and B and a “neither A nor B” (business-as-usual, status-quo) option.

We obtain a (preferences space) parameter estimate for the neither-option of ASC_optout = -1.001 and conclude that participating in neither of the schemes A or B is on average considered to provide less utility than participating (negative sign), with 1.001 quantifying the utility foregone when opting out.
(Given that the estimated coefficient for the subsidy is beta_subs = 0.003 we could equally conclude that no participation results in a disadvantage of WTA_optout = ASC_optout / - beta_subs = 334 Euro. The firms are indifferent between a) participating in a scheme and b) not participating in a scheme but receiving a compensation of 334Euro.)

My question: How exactly can I describe the scheme (i.e. the profile of attribute levels) the utility of which is considered equivalent to the utility of not participating in any scheme but receiving 334 Euros as compensation?
Is it a scheme combining the base levels of the attributes (the category reference levels and zero subsidy)? Or is it some kind of average (in terms of attribute level profile) of all attribute constellations on the choice cards?
If we want to use the ASC_optout coefficient (or its WTA-equivalent) to describe the overall tendency or preference of firms to participate in these enviromental programs, then we need to know the profile of the program that is "worth" 334 Euros. Hence, the answer to this question is not of pure academic interest but has practical relevance in policy.

The wordings I found in results sections of empirical studies sound unclear. (E.g., “the positive significant estimate for the alternative-specific constant (ASC) suggests that farmers derive higher utility from their current … practices than using the XXX ” where XXX is just the equivalent to “program scheme” in our study).
I have not found clear indication on this question in forum threads on ASC and in the literature. I’d be grateful for clarifications and hints on good texts addressing this detail.

I think this theoretical question does not require information on our practical study but I still provide our R-script as well as model output (with parameter values slightly differing from the rounded values in my example).

My R-scriptfile:

Code: Select all

# MMNL DCE analysis main data with apollo pref space
NROW <- 159  # version of the data set generated by 012b_asm_main_screen  (by number of records selected)   
start_time <- Sys.time()
now <- format(start_time, "%Y_%m_%d_%H_%M") 

lisdat <- paste("lis\\",codefile,NROW,"_",".lis",sep="")   # for naming listing file
outdat <- paste("dat\\",codefile,NROW,"_",".Rdata",sep="")   # for naming output file
lisdat <- paste("lis\\",codefile,NROW,"_",now,".lis",sep="")   # for naming listing file
outdat <- paste("dat\\",codefile,NROW,"_",now,".Rdata",sep="")   # for naming output file


sink(lisdat, append = FALSE, type="output")
cat(paste("sink1: Codefile:",codefile,".r",sep=""),"\n")
sink()
options(width = 250)
library(dplyr)

#database <- readRDS("dat/010_asm_impSTATA_Apollo.Rds") %>%
database <- readRDS(paste0("dat/012b2_asm_main_wd_en",NROW,".RData"))  %>%
   mutate(choice = as.integer(choice)) %>%  # choiceVar argument in mnl_settings called by apollo_mnl requires numeric vector
   print(n=30) 


### Load Apollo library
library(apollo)

#library(apollo)


### Initialise code
apollo_initialise()

### Set core controls
apollo_control = list(
  modelName       = "012c02_asm_main_MMNL_apollo",
  modelDescr      = "012c02_asm_main_MMNL_apollo: MNL Pref space",
  indivID         = "id", 
  outputDirectory = "012c02_asm_main_MMNL_apollo", 
  nCores = 4,
  panelData = TRUE
)

# ################################################################# #
#### LOAD DATA AND APPLY ANY TRANSFORMATIONS                     ####
# ################################################################# #

# Define model parameters                                                                    
apollo_beta <- c(                                                                            
  mu_AddIncome_             = 0  ,  # monetary compensation
  mu_ASC_optout             = 0  ,  # Alternative-specific constant for the "None" option                  
 b_Topic_GHG             = 0  ,  # Coefficient for sustainability topic of reporting 0 = ghg
  mu_Topic_Pollution        = 0  ,  # Coefficient for sustainability topic of reporting 1 = pollution
  mu_Topic_BioDiv           = 0  ,  # Coefficient for sustainability topic of reporting 2 = biodiv
 b_Audit_none            = 0  ,  # Coefficient for audittype 0 = no
  mu_Audit_Selective        = 0  ,  # Coefficient for audittype 1 = selective
  mu_Audit_Complete         = 0  ,  # Coefficient for audittype 2 = complete                                              
 b_ReportPrep_self       = 0  ,  # Coefficient for support 0 = self preparation
  mu_ReportPrep_Consultant  = 0  ,  # Coefficient for support 1 = consulting firm
 b_RiskAddI_Low          = 0  ,     # Coefficient for risk of foregoing AddIncome 0 = low risk
  mu_RiskAddI_Moderate      = 0  ,  # Coefficient for risk of foregoing AddIncome 1 = moderate risk
  mu_RiskAddI_High          = 0  ,  # Coefficient for risk of foregoing AddIncome 2 = high risk
 b_ReputEnh_None          = 0  ,    # Coefficient of reputation enhancement, 0 = none
  mu_ReputEnh_Slight        = 0  ,  # Coefficient of reputation enhancement, 1 = slight
  mu_ReputEnh_Substantial   = 0   , # Coefficient of reputation enhancement, 2 = substantial
  si_AddIncome_             = 0.1,  # sigma for additional income expectation
  si_ASC_optout             = 0.1,  # sigma Alternative-specific constant for the "None" option                  
  si_Topic_Pollution        = 0.1,  # sigma for sustainability topic of reporting 1 = pollution
  si_Topic_BioDiv           = 0.1,  # sigma for sustainability topic of reporting 2 = biodiv
  si_Audit_Selective        = 0.1,  # sigma for audittype 1 = selective
  si_Audit_Complete         = 0.1,  # sigma for audittype 2 = complete                                              
  si_ReportPrep_Consultant  = 0.1,  # sigma for support 1 = consulting firm
  si_RiskAddI_Moderate      = 0.1,  # sigma for risk of not receiving add income expectation
  si_RiskAddI_High          = 0.1,  # sigma for risk of not receiving add income expectation
  si_ReputEnh_Slight      = 0.1  ,  
  si_ReputEnh_Substantial          = 0.1 
)                                                                                            

sink(lisdat, append = TRUE, type="output")
cat("\n\nsink2: STARTING VALUES AND CONSTRAINED PARAMETERS: cbind(apollo_beta)\n")
cbind(apollo_beta)                                                                                            
                                                                                             
# Indicate which parameters are fixed                                                        
apollo_fixed <- c("b_Topic_GHG", "b_Audit_none", "b_ReportPrep_self", "b_RiskAddI_Low", "b_ReputEnh_None") 

#cbind(apollo_fixed)

# ################################################################# #
#### DEFINE RANDOM COMPONENTS                                    ####
# ################################################################# #

### Set parameters for generating draws  (second step)
apollo_draws = list(
  interDrawsType = "sobol",   # halton not recommended for more than 5 random coeffs (HessPalma23: 82)
  interNDraws    = 2000,
  interNormDraws = c("draws_asc_none_inter",
                      "draws_top_poll_inter","draws_top_bdiv_inter",
                      "draws_aud_sele_inter","draws_aud_compl_inter",
                      "draws_sup_cons_inter",
                      "draws_risk_mod_inter","draws_risk_high_inter",
                      "draws_RepEnh_slight_inter","draws_RepEnh_subst_inter",
                      "draws_mon_inter"),  # i use only inter-individual heterogeneity (assuming intra individual constance of all preference parameters). i assume the distibution to be normal
  intraDrawsType = "sobol",
  intraNDraws    = 0,
  intraUnifDraws = c(),
  intraNormDraws = c()
   )  
                      

### Create random parameters (third step)
apollo_randCoeff = function(apollo_beta, apollo_inputs){
  randcoeff = list() # compute random parm values from standard-normal deviates
  
  randcoeff[["asc_none"]]    = mu_ASC_optout + si_ASC_optout * draws_asc_none_inter  # i am not sure about the sign here
  randcoeff[["b_Topic_poll"]]  = mu_Topic_Pollution + si_Topic_Pollution * draws_top_poll_inter   
  randcoeff[["b_Topic_bdiv"]]  = mu_Topic_BioDiv + si_Topic_BioDiv * draws_top_bdiv_inter   
  randcoeff[["b_Audit_sele"]]  = mu_Audit_Selective  + si_Audit_Selective  * draws_aud_sele_inter    
  randcoeff[["b_Audit_compl"]] = mu_Audit_Complete  + si_Audit_Complete  * draws_aud_compl_inter    
  randcoeff[["b_ReportPrep_cons"]]  = mu_ReportPrep_Consultant  + si_ReportPrep_Consultant  * draws_sup_cons_inter    
  randcoeff[["b_RiskAddI_mod"]]  = mu_RiskAddI_Moderate  + si_RiskAddI_Moderate  * draws_risk_mod_inter    
  randcoeff[["b_RiskAddI_high"]]  = mu_RiskAddI_High  + si_RiskAddI_High  * draws_risk_high_inter    
  randcoeff[["b_ReputEnh_Slight"]]  = mu_ReputEnh_Slight  + si_ReputEnh_Slight  * draws_RepEnh_slight_inter    
  randcoeff[["b_ReputEnh_Substantial"]]  = mu_ReputEnh_Substantial  + si_ReputEnh_Substantial  * draws_RepEnh_subst_inter    
  randcoeff[["AddIncome"]]       = mu_AddIncome_  + si_AddIncome_  * draws_mon_inter    
   return(randcoeff)
   }

# ################################################################# #
#### GROUP AND VALIDATE INPUTS                                   ####
# ################################################################# #

apollo_inputs = apollo_validateInputs()


# ################################################################# #
#### DEFINE MODEL AND LIKELIHOOD FUNCTION                        ####
# ################################################################# #

apollo_probabilities=function(apollo_beta, apollo_inputs, functionality="estimate"){
    
  ### Attach inputs and detach after function exit
  apollo_attach(apollo_beta, apollo_inputs)
  on.exit(apollo_detach(apollo_beta, apollo_inputs))

  ### Create list of probabilities P
  P = list()

  ### List of utilities: these must use the same names as in mnl_settings, order is irrelevant

V <- list()                                                                                  
V[["alt1"]] <-         b_Topic_GHG  * (Topic_.A == "GHG") + b_Topic_poll * (Topic_.A == "Pollution") + b_Topic_bdiv * (Topic_.A == "BioDiv") +
                 b_Audit_none  * (Audit_.A == "None") + b_Audit_sele  * (Audit_.A == "Selective") + b_Audit_compl  * (Audit_.A == "Complete") +
                 b_ReportPrep_self   * (ReportPrep_.A == "Self") + b_ReportPrep_cons  * (ReportPrep_.A == "Consultant") +
                 b_RiskAddI_Low * (RiskAddI_.A == "Low") + b_RiskAddI_mod  * (RiskAddI_.A == "Moderate") + b_RiskAddI_high  * (RiskAddI_.A == "High") +
                 b_ReputEnh_None * (ReputEnh_.A == "None") + b_ReputEnh_Slight  * (ReputEnh_.A == "Slight") + b_ReputEnh_Substantial  * (ReputEnh_.A == "Substantial") +
                 AddIncome    *  AddIncome_.A
V[["alt2"]] <-         b_Topic_GHG  * (Topic_.B == "GHG") + b_Topic_poll * (Topic_.B == "Pollution") + b_Topic_bdiv * (Topic_.B == "BioDiv") +
                 b_Audit_none  * (Audit_.B == "None") + b_Audit_sele  * (Audit_.B == "Selective") + b_Audit_compl  * (Audit_.B == "Complete") +
                 b_ReportPrep_self   * (ReportPrep_.B == "Self") + b_ReportPrep_cons  * (ReportPrep_.B == "Consultant") +
                 b_RiskAddI_Low * (RiskAddI_.B == "Low") + b_RiskAddI_mod  * (RiskAddI_.B == "Moderate") + b_RiskAddI_high  * (RiskAddI_.B == "High") +
                 b_ReputEnh_None * (ReputEnh_.B == "None") + b_ReputEnh_Slight  * (ReputEnh_.B == "Slight") + b_ReputEnh_Substantial  * (ReputEnh_.B == "Substantial") +
                 AddIncome    *  AddIncome_.B
V[["none"]] <- asc_none  # No attributes for "None" option, just the alternative-specific constant
sink()    


  
  ### Define settings for MNL model component
  mnl_settings = list(
    alternatives  = c(alt1=1, alt2=2, none=3), 
    avail         = 1, 
    choiceVar     = choice,
    utilities     = V
  )
  
  ### Compute probabilities using MNL model
  P[["model"]] = apollo_mnl(mnl_settings, functionality)
  
  ### Take product across observation for same individual
  P = apollo_panelProd(P, apollo_inputs, functionality)
  
  ### Average across inter-individual draws
  P = apollo_avgInterDraws(P, apollo_inputs, functionality)
  
  ### Prepare and return outputs of function
  P = apollo_prepareProb(P, apollo_inputs, functionality)
  return(P)
}

# ################################################################# #
#### MODEL ESTIMATION                                            ####
# ################################################################# #

sink(lisdat, append = TRUE, type="output")
cat("\n\nsink3: model = apollo_estimate(apollo_beta, apollo_fixed, apollo_probabilities, apollo_inputs)\n")
model = apollo_estimate(apollo_beta, apollo_fixed, apollo_probabilities, apollo_inputs)
sink()
# ################################################################# #
#### MODEL OUTPUTS                                               ####
# ################################################################# #

# ----------------------------------------------------------------- #
#---- FORMATTED OUTPUT (TO SCREEN)                               ----
# ----------------------------------------------------------------- #
sink(lisdat, append = TRUE, type="output")

cat("\n\napollo_modelOutput(model, modelOutput_settings = list(printDataReport = TRUE, printPVal = 2))\n")
apollo_modelOutput(model, modelOutput_settings = list(printDataReport = TRUE, printPVal = 2))
#cat("\n\nsink4: apollo_modelOutput(model)\n")
#apollo_modelOutput(model)
sink()
# ----------------------------------------------------------------- #
#---- FORMATTED OUTPUT (TO FILE, using model name)               ----
# ----------------------------------------------------------------- #

apollo_saveOutput(model)

 
# ################################################################# #
##### POST-PROCESSING                                            ####
# ################################################################# #

### Print outputs of additional diagnostics to new output file (remember to close file writing when complete)
apollo_sink()

### calculate value and standard error for base of effects coded parameter


sink(lisdat, append = TRUE, type="output")
cat("\n\nsink5: apollo_deltaMethod....\n")
apollo_deltaMethod(model,deltaMethod_settings = list(expression=c(
             WTX_asc_none  = "-mu_ASC_optout /  mu_AddIncome_",
             WTX_Topic_poll  = "-mu_Topic_Pollution /  mu_AddIncome_",
             WTX_Topic_bdiv  = "-mu_Topic_BioDiv / mu_AddIncome_",
             WTX_Audit_sele  = "-mu_Audit_Selective / mu_AddIncome_",
             WTX_Audit_compl = "-mu_Audit_Complete / mu_AddIncome_",
             WTX_ReportPrep_cons  = "-mu_ReportPrep_Consultant / mu_AddIncome_",
             WTX_RiskAddI_mod  = "-mu_RiskAddI_Moderate / mu_AddIncome_",
             WTX_RiskAddI_high  = "-mu_RiskAddI_High / mu_AddIncome_",
             WTX_ReputEnh_Slight  = "-mu_ReputEnh_Slight / mu_AddIncome_",
             WTX_ReputEnh_Substantial  = "-mu_ReputEnh_Substantial / mu_AddIncome_"   )))
sink()


# ----------------------------------------------------------------- #
#---- switch off writing to file                                 ----
# ----------------------------------------------------------------- #

apollo_sink()

sink()
Output file:

Code: Select all

sink1: Codefile:012c02_asm_main_MMNL_apollo2.r 


sink2: STARTING VALUES AND CONSTRAINED PARAMETERS: cbind(apollo_beta)
                         apollo_beta
mu_AddIncome_                    0.0
mu_ASC_optout                    0.0
b_Topic_GHG                      0.0
mu_Topic_Pollution               0.0
mu_Topic_BioDiv                  0.0
b_Audit_none                     0.0
mu_Audit_Selective               0.0
mu_Audit_Complete                0.0
b_ReportPrep_self                0.0
mu_ReportPrep_Consultant         0.0
b_RiskAddI_Low                   0.0
mu_RiskAddI_Moderate             0.0
mu_RiskAddI_High                 0.0
b_ReputEnh_None                  0.0
mu_ReputEnh_Slight               0.0
mu_ReputEnh_Substantial          0.0
si_AddIncome_                    0.1
si_ASC_optout                    0.1
si_Topic_Pollution               0.1
si_Topic_BioDiv                  0.1
si_Audit_Selective               0.1
si_Audit_Complete                0.1
si_ReportPrep_Consultant         0.1
si_RiskAddI_Moderate             0.1
si_RiskAddI_High                 0.1
si_ReputEnh_Slight               0.1
si_ReputEnh_Substantial          0.1
apollo_draws and apollo_randCoeff were found, so apollo_control$mixing was set to TRUE
All checks on apollo_control completed.
WARNING: Your database contains some entries that are NA. This may well be intentional, but be advised that if these entries are used in your model, the behaviour may be unexpected. 
WARNING: Your database contains variable(s) "Q30", "Q40", "Q90", "Q87", "Q29", "Q31c1", "Q91c1", "Q94", "Topic_.A", "Topic_.B", "Audit_.A", "Audit_.B", "ReportPrep_.A", "ReportPrep_.B", "RiskAddI_.A", "RiskAddI_.B",
  "ReputEnh_.A", "ReputEnh_.B" codified as factors. Apollo does not support factors, and using them inside apollo_probabilities may lead to NA values in the loglikelihood. If you want to use these variables, we recommend
  manually transforming them into numeric variables.
All checks on database completed.
Generating inter-individual draws ........... Done


sink3: model = apollo_estimate(apollo_beta, apollo_fixed, apollo_probabilities, apollo_inputs)
WARNING: Element database in the global environment differs from that inside apollo_inputs. The latter will be used. If you wish to use the former, stop this function by pressing the "Escape" key, and rerun
  apollo_validateInputs before calling this function. 
Preparing user-defined functions.


apollo_modelOutput(model, modelOutput_settings = list(printDataReport = TRUE, printPVal = 2))
Model run by Brosig using Apollo 0.3.6 on R 4.4.3 for Windows.
Please acknowledge the use of Apollo by citing Hess & Palma (2019)
  DOI 10.1016/j.jocm.2019.100170
  www.ApolloChoiceModelling.com

Model name                                  : 012c02_asm_main_MMNL_apollo
Model description                           : 012c02_asm_main_MMNL_apollo: MNL Pref space
Model run at                                : 2025-09-22 22:53:12.601164
Estimation method                           : bgw
Estimation diagnosis                        : Relative function convergence
Optimisation diagnosis                      : Maximum found
     hessian properties                     : Negative definite
     maximum eigenvalue                     : -1.975214
     reciprocal of condition number         : 4.00587e-06
Number of individuals                       : 159
Number of rows in database                  : 940
Number of modelled outcomes                 : 940

Number of cores used                        :  4 
Number of inter-individual draws            : 2000 (sobol)

LL(start)                                   : -1109.53
LL at equal shares, LL(0)                   : -1032.7
LL at observed shares, LL(C)                : -1032.15
LL(final)                                   : -795.78
Rho-squared vs equal shares                  :  0.2294 
Adj.Rho-squared vs equal shares              :  0.2081 
Rho-squared vs observed shares               :  0.229 
Adj.Rho-squared vs observed shares           :  0.2096 
AIC                                         :  1635.56 
BIC                                         :  1742.17 

Estimated parameters                        : 22
Time taken (hh:mm:ss)                       :  00:07:21.8 
     pre-estimation                         :  00:00:41.5 
     estimation                             :  00:01:23.03 
     post-estimation                        :  00:05:17.27 
Iterations                                  :  24  

Unconstrained optimisation.

Estimates:
                            Estimate        s.e.   t.rat.(0)  p(2-sided)    Rob.s.e. Rob.t.rat.(0)  p(2-sided)
mu_AddIncome_               0.003426    0.001694     2.02256     0.04312    0.001641        2.0885     0.03675
mu_ASC_optout              -1.001493    0.464252    -2.15722     0.03099    0.497511       -2.0130     0.04411
b_Topic_GHG                 0.000000          NA          NA          NA          NA            NA          NA
mu_Topic_Pollution          0.081618    0.232161     0.35156     0.72517    0.243411        0.3353     0.73739
mu_Topic_BioDiv             0.145844    0.196635     0.74170     0.45827    0.218595        0.6672     0.50465
b_Audit_none                0.000000          NA          NA          NA          NA            NA          NA
mu_Audit_Selective         -0.386042    0.197626    -1.95339     0.05077    0.181820       -2.1232     0.03374
mu_Audit_Complete          -1.088492    0.304427    -3.57555  3.4950e-04    0.297419       -3.6598  2.5242e-04
b_ReportPrep_self           0.000000          NA          NA          NA          NA            NA          NA
mu_ReportPrep_Consultant    0.166956    0.177189     0.94225     0.34606    0.186137        0.8970     0.36974
b_RiskAddI_Low              0.000000          NA          NA          NA          NA            NA          NA
mu_RiskAddI_Moderate       -0.317531    0.172004    -1.84607     0.06488    0.154364       -2.0570     0.03968
mu_RiskAddI_High           -1.002429    0.217170    -4.61588   3.914e-06    0.217096       -4.6174   3.885e-06
b_ReputEnh_None             0.000000          NA          NA          NA          NA            NA          NA
mu_ReputEnh_Slight         -0.073351    0.187013    -0.39223     0.69489    0.187302       -0.3916     0.69534
mu_ReputEnh_Substantial     0.335167    0.218931     1.53092     0.12579    0.228628        1.4660     0.14265
si_AddIncome_              -0.006614    0.003544    -1.86608     0.06203    0.003865       -1.7110     0.08709
si_ASC_optout               4.197624    0.583325     7.19602   6.199e-13    0.612572        6.8525   7.259e-12
si_Topic_Pollution          1.797238    0.383935     4.68110   2.853e-06    0.417104        4.3089   1.641e-05
si_Topic_BioDiv             0.905616    0.376455     2.40564     0.01614    0.389084        2.3276     0.01994
si_Audit_Selective         -0.041585    0.405659    -0.10251     0.91835    0.082924       -0.5015     0.61603
si_Audit_Complete           1.555429    0.350614     4.43630   9.152e-06    0.370642        4.1966   2.710e-05
si_ReportPrep_Consultant    1.326469    0.296329     4.47634   7.593e-06    0.323488        4.1005   4.122e-05
si_RiskAddI_Moderate       -0.021621    0.353871    -0.06110     0.95128    0.073191       -0.2954     0.76769
si_RiskAddI_High            0.065722    0.602838     0.10902     0.91319    0.215065        0.3056     0.75991
si_ReputEnh_Slight          0.631698    0.405136     1.55922     0.11894    0.388155        1.6274     0.10364
si_ReputEnh_Substantial     0.765763    0.411496     1.86092     0.06276    0.438485        1.7464     0.08074


Overview of choices for MNL model component :
                                   alt1   alt2   none
Times available                  940.00 940.00 940.00
Times chosen                     312.00 301.00 327.00
Percentage chosen overall         33.19  32.02  34.79
Percentage chosen when available  33.19  32.02  34.79




sink5: apollo_deltaMethod....
Running Delta method computation for user-defined function using robust standard errors

               Expression    Value     s.e. t-ratio (0)
             WTX_asc_none 292.2810 225.3514        1.30
           WTX_Topic_poll -23.8198  69.6658       -0.34
           WTX_Topic_bdiv -42.5638  63.9492       -0.67
           WTX_Audit_sele 112.6644  67.1292        1.68
          WTX_Audit_compl 317.6712 148.2593        2.14
      WTX_ReportPrep_cons -48.7255  60.6264       -0.80
         WTX_RiskAddI_mod  92.6700  64.4660        1.44
        WTX_RiskAddI_high 292.5542 139.7308        2.09
      WTX_ReputEnh_Slight  21.4072  56.7201        0.38
 WTX_ReputEnh_Substantial -97.8169  75.7294       -1.29
INFORMATION: The results of the Delta method calculations are returned invisibly as an output from this function. Calling the function via result=apollo_deltaMethod(...) will save this output in an object called result (or
  otherwise named object). 

stephanehess
Site Admin
Posts: 1330
Joined: 24 Apr 2020, 16:29

Re: Interpretation of ASC for opt-out choice alternative

Post by stephanehess »

Hi

in general, I would avoid reading too much into ASCs or trying to monetise them. In your case, if the utility of the SQ is only the constant, then monetising the ASC tells you how much the opt-in alternatives are worth at the base levels for all the categorical attributes and zero for continuous ones. But you need to be careful with interpretation. SQ can mean different things for different people

Stephane
--------------------------------
Stephane Hess
www.stephanehess.me.uk
Post Reply