BookmarkSubscribeRSS Feed
Big-B
Calcite | Level 5

Hi,

I’m working on a dataset collected from a 2-way Anova design (kind of) on binary data. The purpose of the experiment is to explore how different types of email marketing incentives affect customers propensity to buy certain fruits.

 

  • The dependent variable is Purchase rate (Binary; if a customer purchased the offered fruit or not)
  • Factor A has 3 Levels:
    1. Silent Communication (No incentive offered. To observe customers natural propensity to buy any given fruit.)
    2. Email explaining the benefits of consuming the fruit being offered
    3. Same as 2 but with a 15% discount on the fruit offered
  • Factor B has 5 levels. Customers in these groups are incentivized to consume:
    1. Bananas
    2. Apples
    3. Oranges
    4. Kiwis
    5. Fruit of choice (Of the 4 above)

A sample of 150 000 subscribers were randomly allocated to one of the 15 groups with 10k subscribers in each group.

 

The questions I have are the following:
- Which method or technique should I use to account for the binary response variable?
- When testing the main effect for Factor B, I do not want to test the difference in purchase rates shown in Table 1 (which is what is computed by default in SAS?). Rather, I’m interested in comparing the differences in purchase rate uplifts between the groups, i.e. the numbers in table 2 highlighted in green.

I would appreciate to get some guidance and advise on how to handle the two issues described?

 

BigB_1-1677167755851.png

 

2 REPLIES 2
awesome_opossum
Obsidian | Level 7

I don't use ANOVA much.  But regression is essentially the same; I would just do a logistic account for the binary response.

 


proc logistic data= data; 
    class factorA(ref='Silent') factorB(ref='Banana') / param=ref; 
    model purchase(event='1') = factorA factorB factorA*factorB; 
run;
    

To get the percentages is a bit more work.  You could do some lengthy code to get it, but I would probably just do this, and calculate the differences I wanted manually: 

 

proc freq data= data; 
    tables factorA * purchase; 
    tables factorB * purchase; 
    tables factorA * factorB * purchase; 
run; 

 

 

 

 

 

Big-B
Calcite | Level 5
Thanks for the help! Will look into it. Much appreciated!
How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1296 views
  • 0 likes
  • 2 in conversation