This post explains the basics of computing willingness-to-pay (WTP) for product features in Displayr.

## Step 1: Estimate a choice model with a numeric price attribute

The starting point is to estimate a choice model (Displayr: **Insert > More > Choice Modeling > Hierarchical Bayes; **Q: **Automate > Browse Online Library > Choice Modeling > Hierarchical Bayes**). When doing this, the price attribute needs to be set up as a numeric attribute. If you haven't done this before, please be aware that the scale of the price attribute is not readily comparable to the other attributes. In the example below, for example, note that the price attribute seems to have very little variability compared to the other attributes. This is because the distribution of a numeric variable is for its *coefficient *(don't be concerned if you don't understand this; the key bit to appreciate is that it is OK that its distribution appears much smaller).

## Step 2: Save the utilities

Add new variables to the data set using **Insert > More > Choice Modeling > Save Variables(s) > Individual-level Coefficients **( in Q: **Automate > Browse Online Library > Choice Modeling > Save Variables(s) > Individual-level Coefficients**).

## Step 3: Modify the R code of the utilities

When you click on one of the variables that is created in step 2, you can see the underlying R Code, and it will look something like this (in Q,right-click on the variable and select **Edit R Variable**):

`input.choicemodel = choice.model
if (!is.null(input.choicemodel$simulated.respondent.parameters)) stop()
flipChoice::RespondentParameters(input.choicemodel)`

It can be changed to compute WTP with a simple modification of the last line and addition of a fourth line:

input.choicemodel = choice.model if (!is.null(input.choicemodel$simulated.respondent.parameters)) stop() x = flipChoice::RespondentParameters(input.choicemodel) sweep(x, 1, -x[, "Price"], "/")

## Step 4: Creating tables or visualizations

To create a table showing the average WTP for each attribute level, drag the variable set onto a page, and then using **STATISTICS > Cells **select **Median **and remove **Average **(as the mean can be a bit misleading with WTP data). Then, hide the Price attribute by selecting the row and using **Data Manipulation > Hide **in the ribbon. An example is shown below. You can then plot this if you so wish.