5
$\begingroup$

I am running a regression model in R including the following variables:

  • Intent = continuous DV
  • Attitude = continuous IV
  • Story = categorical IV in 4 levels: Consumer, Heritage, Vision and Product
  • Style = categorical IV in 4 levels: Amiable, Analytical, Driver and Expressive

Categorical variables are dummy coded. I ran the following regression in R:

model 4 = glm(Intent ~ Story + Style + Attitude + Story*Style)

Results of this regression are found here under model 4:

enter image description here

Naturally, R sets one story type and one style as reference groups, in my case the Consumer story and the Amiable style. My only issue is, how can I draw conclusions for these reference groups?

My goal is to be able to say "For Analytical styles, purchase intent is most positive when presented with a Product story". As the results show with a coefficient of 1.063 for Product*Analytical. But how can I derive a similar conclusion for Amiable people?

Any help is welcome <3

$\endgroup$
1
  • $\begingroup$ When there are between-factor interactions (for the between-subject factors), one is recommended to use simple contrast encoding instead of the indicator (= dummy) encoding. They are similar, but the simple type is proper in the presence of interactions. Also, both there types are not what ANOVA use by default. The default, with ANOVA, is usually deviation (= effect) encoding; it is convenient in most situations. $\endgroup$
    – ttnphns
    May 18 at 14:00

2 Answers 2

4
$\begingroup$

First, with the default R treatment coding of your categorical predictors, the individual coefficients for things like Story Vision are their associations with outcome when all other predictors are at reference (categorical predictors) or 0 levels (continuous predictors, like Brand Attitude seems to be). So the Story Vision coefficient is specifically for cases having Style Amiable. Similarly, the Style Driver coefficient is for cases having Story Consumer. The model intercept (which I don't see reported) is the expected outcome for a combination of Style Amiable,Story Consumer, and Brand Attitude = 0.

Second, although the interaction coefficient for Story Product : Style Analytical has a numerical value of 1.063, the high associated standard error (0.727) indicates that you can't reliably distinguish its value from 0. Don't over-interpret such values.

Third, your data set is probably too small to accommodate all of those interaction terms. In Model 4 you have 108 cases and 16 regression coefficients to estimate, for a ratio of less than 7/1. You typically need ratios on the order of 15/1 to avoid overfitting with this type of data. Your Model 3 (without interactions) has a more reliable 15/1 ratio. The slightly higher R-squared in Model 4 is probably from overfitting the data; that model that might not work well on a new data sample.

Fourth, you have shown that Brand Attitude is pretty strongly associated with outcomes. When you have enough data to support a model more complicated than Model 3, you might consider evaluating interactions of that predictor with the Style and/or Story categories, which might be more important than the relatively weak interactions seen between the various Style and Story categories.

$\endgroup$
4
$\begingroup$

@EdM makes valid points - read those first. Just for reference, you could get the effects of interest along with their confidence intervals using the emmeans package. For example:

library(emmeans)

# Toy data: add a dummy categorical variable to the Iris dataset
iris$Style <- rep(LETTERS[1:3], 50)

 iris
    Sepal.Length Sepal.Width Petal.Length Petal.Width    Species Style
1            5.1         3.5          1.4         0.2     setosa     A
2            4.9         3.0          1.4         0.2     setosa     B
3            4.7         3.2          1.3         0.2     setosa     C
4            4.6         3.1          1.5         0.2     setosa     A
5            5.0         3.6          1.4         0.2     setosa     B
...

Fit a model:

fit <- glm(data= iris, Sepal.Length ~ Species * Style)
summary(fit)
...
Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               5.05294    0.12486  40.470  < 2e-16 ***
Speciesversicolor         0.71765    0.17657   4.064 7.97e-05 ***
Speciesvirginica          1.70331    0.17931   9.499  < 2e-16 ***
StyleB                   -0.04118    0.17657  -0.233    0.816    
StyleC                   -0.10294    0.17931  -0.574    0.567    
Speciesversicolor:StyleB  0.28934    0.25166   1.150    0.252    
Speciesvirginica:StyleB  -0.26801    0.25166  -1.065    0.289    
Speciesversicolor:StyleC  0.35588    0.25166   1.414    0.160    
Speciesvirginica:StyleC  -0.08272    0.25359  -0.326    0.745    
...

Get marginal means:

emmeans(fit, spec= ~Style|Species)

Species = setosa:
 Style emmean    SE  df lower.CL upper.CL
 A       5.05 0.125 141     4.81     5.30
 B       5.01 0.125 141     4.76     5.26
 C       4.95 0.129 141     4.70     5.20

Species = versicolor:
 Style emmean    SE  df lower.CL upper.CL
 A       5.77 0.125 141     5.52     6.02
 B       6.02 0.129 141     5.76     6.27
 C       6.02 0.125 141     5.78     6.27

Species = virginica:
 Style emmean    SE  df lower.CL upper.CL
 A       6.76 0.129 141     6.50     7.01
 B       6.45 0.125 141     6.20     6.69
 C       6.57 0.125 141     6.32     6.82

this shows for example that A is the highest Style within Species setosa although A, B, and C are not convincingly different from each other.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.