Mood vs. Conflict Intensity in Couples

Introduction

Research Question

How Do We-words Moderate the Impact of Positive and Negative Mood States and Relationship Dynamics/Behaviors on Conflict Intensity in Couple Conflicts?

Couple Conflict and Intensity

  • Conflicts reveal couples’ communication patterns, conflict resolution approaches, and emotional closeness.1
  • Intense conflicts can elevate levels of stress, anxiety, and depression among couples, affecting their psychological well-being.2

Negative Moods

  • Criticism, stress, and defensiveness are predictors of increased conflict and marital dissolution.3
  • Negative affect often escalates conflicts and leads to long-term relationship dissatisfaction.4

Positive Relationship Dynamics/Behaviors

  • Positive affect mitigates negative moods/behaviors and buffers against conflict escalation. 5
  • Maintaining a balance where positive interactions outweigh negative interactions is crucial for effective conflict management.6

We-Words

  • We-words are associated with elevated positive emotional behavior and reduced negative emotional behavior and play a role in regulating partners’ emotions during marital conflicts.7
  • As reflected in “we” language, perspective-taking diminishes conflict intensity by fostering empathy, promoting adaptive resolution strategies, and enhancing mutual understanding in relationships.8

Hypothesis

Methods

Participants

  • 68 romantic couples (67 different-sex couples and 1 female same-sex couples)
  • 18-41 years old (M age = 22.6; SD = 2.51)
  • Relationship length (M = 31.1 months; SD = 25.8 months)
  • The sample had 25% of participants identified as Caucasian, 24.3% Hispanic/Latino, 18.4% African American, 11% Asian, 19.1% Multiracial, and 2.21% Other

Measures

  • Couples completed an at-home study using smartphones to provide 3- minute audio recordings every 6 minutes throughout the day.
  • Audio files were listened to, and conflict episodes were identified (n = 68 files).
  • One 3-minute conflict audio recording was selected per couple, with each partner rated on 13 positive mood/relationship dynamics, 20 negative mood/relationship dynamics, and conflict intensity every second.
  • The conflict audio files were transcribed.
  • Individual positive behaviors (Daily Business, Collaborate, Enjoy) and negative moods (Anxiety/Irritation, Stress, Anger/Hostility) were averaged to represent overall positive behaviors and negative mood, respectively.

Analysis

Load packages and read data

View Code
library(tidyverse)    # Data manipulation and visualization
library(dplyr)        # Data wrangling
library(officer)      # Create/edit Word documents
library(pdp)          # Partial dependence plots
library(stringr)      # String manipulation (for tokenization)
library(interactions) # Plot interaction effects in models
library(lme4)         # Mixed-effects models
library(lmerTest)     # p-values for fixed effects in mixed models
library(MuMIn)        # Model selection and evaluation (AICc, R², model averaging)
library(prettydoc)

data <- read_csv("../USC/USC_clean/USC-Coded-Data-Masterfile.csv")

Preview Data

View Code
data |> 
  select(-c(seconds, Date_Coded))

Data Wrangling

Replaced placeholder values with NA in numeric columns

View Code
# Replace placeholder values (222, 999 and 444) with NA in numeric columns excluding 'Couple ID'

data_cleaned <- data |> 
  mutate(across(everything(), ~ ifelse(. %in% c(999, 444, 222), NA, .))) |> 
  
  # rename sad and whiny column to match the rest of the column names
  rename(P1Sad = P1_Sad, P1Whiny = P1_Whiny, 
         P2Sad = P2_Sad, P2Whiny = P2_Whiny) |> 
  
  # create new variable 'overall_conflict' to represent conflict intensity for both partners
  # accounts for coding inconsistencies between P1Conflict and P2Conflict
  mutate(overall_conflict = (P1Conflict + P2Conflict)/2)

data_cleaned |> 
  select(-c(seconds, Date_Coded)) |> 
  head(10)

Based on research, I identified 4 positive and negative moods/behaviors respectively in representing the overall positive and negative moods. Below I combined the positive behaviors together and combined the negative moods together.

The values were log transformed for running the multiple regression model.

View Code
scaled_vars <- data_cleaned |> 
  
  ## average the variables to combine them
  rowwise() |>  # calculates mean across row
  
  # Partner 1
  mutate(P1PosBehv = mean(c(P1Collab, P1DailyB, P1Enjoy), na.rm = TRUE)) |> 
  mutate(P1NegMood = mean(c(P1AnnIrr, P1AngHos, P1Stress), na.rm = TRUE)) |> 
  
  # Partner 2
  mutate(P2PosBehv = mean(c(P2Collab, P2DailyB, P2Enjoy), na.rm = TRUE)) |> 
  mutate(P2NegMood = mean(c(P2AnnIrr, P2AngHos, P2Stress), na.rm = TRUE)) |> 
  
  ## log transformation
  mutate(
    P1PosBehv = log(P1PosBehv + 1),  # Adding 1 to handle zero values, if any
    P1NegMood = log(P1NegMood + 1),
    P2PosBehv = log(P2PosBehv + 1),
    P2NegMood = log(P2NegMood + 1),
    overall_conflict = log(overall_conflict + 1)) |> 
  
  # select the variables for regression analysis
  select(c(ID, Time, min_sec, overall_conflict:P2NegMood))

scaled_vars |> 
  head(10)

Text Analysis

Loading the transcript files, and processed each word file to get the frequency of “we-words” in each document, then I included it to the tibble above with the positive and negative moods/behaviors. To simplify the code for multiple regression model, I created variables defining the interaction terms beforehand.

View Code
# define my DOCX files
docx_files <- c(
  "../USC/Transcripts/102-1 LIWC.docx",
  "../USC/Transcripts/104-3-1 LIWC.docx",
  "../USC/Transcripts/124-2 LIWC.docx",
  "../USC/Transcripts/126-2 LIWC.docx",
  "../USC/Transcripts/133-3-2 LIWC.docx",
  "../USC/Transcripts/135-8-1 LIWC.docx",
  "../USC/Transcripts/156-1 LIWC.docx",
  "../USC/Transcripts/188-3-2 LIWC.docx",
  "../USC/Transcripts/204-8-1 LIWC.docx",
  "../USC/Transcripts/206-3-1 LIWC.docx",
  "../USC/Transcripts/707-2 LIWC.docx",
  "../USC/Transcripts/710-1 LIWC.docx",
  "../USC/Transcripts/712-1 LIWC.docx",
  "../USC/Transcripts/713-2 LIWC.docx",
  "../USC/Transcripts/714-1 LIWC.docx",
  "../USC/Transcripts/717-2 LIWC.docx",
  "../USC/Transcripts/720-1 LIWC.docx",
  "../USC/Transcripts/721-1 LIWC.docx",
  "../USC/Transcripts/722-2 LIWC.docx",
  "../USC/Transcripts/724-1 LIWC.docx",
  "../USC/Transcripts/725-1 LIWC.docx",
  "../USC/Transcripts/727-1 LIWC.docx",
  "../USC/Transcripts/730-2 LIWC.docx",
  "../USC/Transcripts/732-2 LIWC.docx",
  "../USC/Transcripts/733-1 LIWC.docx",
  "../USC/Transcripts/735-1 LIWC.docx",
  "../USC/Transcripts/736-2 LIWC.docx",
  "../USC/Transcripts/739-1 LIWC.docx",
  "../USC/Transcripts/740-2 LIWC.docx",
  "../USC/Transcripts/741-1 LIWC.docx",
  "../USC/Transcripts/744-2 LIWC.docx",
  "../USC/Transcripts/745-1 LIWC.docx",
  "../USC/Transcripts/747-2 LIWC.docx",
  "../USC/Transcripts/749-2 LIWC.docx",
  "../USC/Transcripts/750-2 LIWC.docx",
  "../USC/Transcripts/751-2 LIWC.docx",
  "../USC/Transcripts/752-1 LIWC.docx",
  "../USC/Transcripts/753-1 LIWC.docx",
  "../USC/Transcripts/756-1 LIWC.docx",
  "../USC/Transcripts/757-1 LIWC.docx",
  "../USC/Transcripts/758-1 LIWC.docx",
  "../USC/Transcripts/759-2 LIWC.docx",
  "../USC/Transcripts/760-2 LIWC.docx",
  "../USC/Transcripts/762-2 LIWC.docx",
  "../USC/Transcripts/763-2.docx",
  "../USC/Transcripts/767-2.docx",
  "../USC/Transcripts/768-2 LIWC.docx",
  "../USC/Transcripts/769-1 LIWC.docx",
  "../USC/Transcripts/771-1.docx",
  "../USC/Transcripts/773-2 LIWC.docx",
  "../USC/Transcripts/907-2 LIWC.docx",
  "../USC/Transcripts/908-8-2 LIWC.docx",
  "../USC/Transcripts/924-2 LIWC.docx",
  "../USC/Transcripts/930-8-1 LIWC.docx",
  "../USC/Transcripts/945-8-2LIWC.docx",
  "../USC/Transcripts/966-3-1 LIWC.docx"
)

# function to read and process each DOCX file
read_and_process_docx <- function(file_path) {
  doc <- read_docx(file_path)
  text <- docx_summary(doc)$text
  tibble(
    transcript = basename(file_path),
    text = text
  )
}

# read and process all DOCX files
transcript_df <- purrr::map_df(docx_files, read_and_process_docx)


# tokenize text
tokens <- transcript_df %>%
  mutate(tokens = str_extract_all(text, "\\b\\w+\\b")) %>%
  select(transcript, tokens) %>%
  unnest(tokens) |> 
  mutate(ID = as.numeric(str_extract(transcript, "^\\d{3}")))

# count occurrences of we-words
we_counts <- tokens %>%
  filter(tokens %in% c("we")) %>%
  count(ID, word = tokens) |> 
  
  # rearrange the table
  pivot_wider(names_from = word,
              values_from = n)

#################################################
# combine the we-word counts to the moods/behaviors tibble
all_vars <- scaled_vars |> 
  left_join(we_counts, by = "ID") |> 
  mutate(we = as.numeric(we))

# remove NAs
all_vars_clean <- all_vars |> 
  drop_na()

# Create interaction terms in the data
all_vars_withInteract <- all_vars_clean %>%
  mutate(P1P2_PosInteraction = P1PosBehv * P2PosBehv,
         P1P2_NegInteraction = P1NegMood * P2NegMood,
         P1Pos_P2Neg_Interaction = P1PosBehv * P2NegMood,
         P1Neg_P2Pos_Interaction = P1NegMood * P2PosBehv)

all_vars_withInteract |> 
  head(10)

Regression Analysis

View Code
lm_model <- lmer(overall_conflict ~ 
                 P1P2_PosInteraction * we + 
                 P1P2_NegInteraction * we +
                 P1Pos_P2Neg_Interaction * we +
                 P1Neg_P2Pos_Interaction * we +
                 
                 P1PosBehv * P2PosBehv * we +
                 P1NegMood* P2NegMood * we +
                 P1PosBehv * P2NegMood * we + 
                 P1NegMood * P2PosBehv * we + 
                 (1 | ID), data = all_vars_withInteract)

summary(lm_model)
Linear mixed model fit by REML. t-tests use Satterthwaite's method [
lmerModLmerTest]
Formula: overall_conflict ~ P1P2_PosInteraction * we + P1P2_NegInteraction *  
    we + P1Pos_P2Neg_Interaction * we + P1Neg_P2Pos_Interaction *  
    we + P1PosBehv * P2PosBehv * we + P1NegMood * P2NegMood *  
    we + P1PosBehv * P2NegMood * we + P1NegMood * P2PosBehv *  
    we + (1 | ID)
   Data: all_vars_withInteract

REML criterion at convergence: 417.1

Scaled residuals: 
    Min      1Q  Median      3Q     Max 
-3.6495 -0.4851  0.0759  0.4491  3.6940 

Random effects:
 Groups   Name        Variance Std.Dev.
 ID       (Intercept) 0.2891   0.5377  
 Residual             0.1801   0.4243  
Number of obs: 257, groups:  ID, 25

Fixed effects:
                            Estimate Std. Error        df t value Pr(>|t|)    
(Intercept)                  0.28491    0.24809  54.64659   1.148  0.25580    
P1P2_PosInteraction         -0.25726    0.13446 230.04242  -1.913  0.05695 .  
we                          -0.01096    0.08363  59.55009  -0.131  0.89615    
P1P2_NegInteraction         -0.06468    0.06006 238.98943  -1.077  0.28260    
P1Pos_P2Neg_Interaction      0.03214    0.13254 238.75444   0.242  0.80863    
P1Neg_P2Pos_Interaction     -0.05661    0.09975 238.66545  -0.568  0.57090    
P1PosBehv                    0.01979    0.17187 238.98704   0.115  0.90842    
P2PosBehv                    0.17714    0.21604 235.16509   0.820  0.41309    
P1NegMood                    0.99202    0.10152 238.92286   9.772  < 2e-16 ***
P2NegMood                    0.36800    0.16143 238.97690   2.280  0.02351 *  
P1P2_PosInteraction:we       0.07422    0.02824 238.56740   2.629  0.00913 ** 
we:P1P2_NegInteraction      -0.02988    0.03572 235.01317  -0.837  0.40370    
we:P1Pos_P2Neg_Interaction  -0.03587    0.04452 238.92619  -0.806  0.42127    
we:P1Neg_P2Pos_Interaction   0.01281    0.03132 226.02725   0.409  0.68281    
we:P1PosBehv                -0.03005    0.04418 236.58848  -0.680  0.49714    
we:P2PosBehv                -0.05756    0.04998 232.58868  -1.152  0.25064    
we:P1NegMood                -0.06007    0.03890 236.83481  -1.544  0.12388    
we:P2NegMood                 0.11310    0.06570 238.98525   1.722  0.08645 .  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
fit warnings:
fixed-effect model matrix is rank deficient so dropping 8 columns / coefficients
View Code
# calculate R-squared
r.squaredGLMM(lm_model)
           R2m       R2c
[1,] 0.8007224 0.9235177

Check Model Fit

View Code
residual <- resid(lm_model)

plot(fitted(lm_model), resid(lm_model))
abline(h = 0, col = "red")

qqnorm(residual)
qqline(residual)

Residual vs. Fitted Plot

Normal Q-Q Plot
View Code
shapiro.test(residual)

    Shapiro-Wilk normality test

data:  residual
W = 0.95632, p-value = 5.345e-07

Results

Significant Results of the Moderating Effect of We-words on Moods/Behaviors on Conflict Intensity

Multi-Regression Model Estimates Standard Error P-Value
Partner 1 and Negative Moods 1.04 0.10 <0.001
Partner 1 Positive Behaviors and Partner 2 Positive Behaviors -0.28 0.13 0.04
Partner 1 and 2 Positive Behaviors Moderated by We-words 0.08 0.03 0.01
View Code
interaction_plot <- interact_plot(lm_model, pred = P1PosBehv, modx = P2PosBehv,
              data = all_vars_withInteract,
              partial.residuals = TRUE,
              x.label = "Partner 1 Positive Behaviors",
              y.label = "Conflict Intensity",
              legend.main = "Partner 2 Positive Behaviors")

interaction_plot + theme_linedraw()

Figure 1. Interaction Effects of Partner 1 and 2 Positive Behaviors on Conflict Intensity with Log-Transformed Scales
View Code
moderation_plot <- interact_plot(lm_model, pred = P1P2_PosInteraction, modx = we,
              data = all_vars_withInteract,
              modx.values = seq(min(all_vars_withInteract$we), max(all_vars_withInteract$we), length.out = 2),
              modx.labels = c("Low", "High"),
              x.label = "Both Partner 1 and 2 in Positive Behaviors",
              y.label = "Conflict Intensity",
              legend.main = "Frequency of We-Words")

moderation_plot + theme_linedraw()

Figure 2. Moderation Effects of We-Words on Partner 1 and 2 Positive Behaviors on Conflict Intensity with Log-Transformed Scales
  • Individual negative mood states in partners are positively associated with conflict intensity.
  • Positive relationship behaviors in both partners during conflict are negatively correlated with conflict intensity.
  • The use of We-words moderates the relationship between partners’ positive relationship behaviors and conflict intensity, leading to an increase in conflict intensity.

Discussion

  • Results indicate that each partner’s negative mood, when considered separately, significantly increased conflict intensity - though the interaction effect of both partners’ negative moods did not significantly affect conflict intensity (p = 0.45).
  • Positive relationship behaviors during conflict reduced conflict intensity.
  • Contrary to previous research, the use of We-words did not enhance the buffering effect of positive behaviors; instead, it increased conflict intensity.
  • Limitations include short duration of conflicts (M = 89.7 seconds, SD = 40.8 seconds) within the 3-minute audio recordings and overall low conflict intensity ratings (M = 8.01, SD = 13.82) on a scale of 0 to 100.
  • Future research could explore how couples’ mood states and behaviors during conflict influence their emotional recovery post-conflict, moderated by variables such as relationship closeness.

Acknowledgements

Special thanks to my mentor Kayla Carta and Dr. Adela Timmons for their invaluable guidance and feedback throughout this project. Thank you to Jacqueline Duong, Sierra Walters, Alyssa Carrasco, and Daniela Romero for their support during the internship and their contributions in the lab.

Footnotes

  1. Christensen, A., & Shenk, J. L. (1991). Communication, Conflict, and Psychological Distance in Nondistressed, Clinic, and Divorcing Couples. Journal of Consulting and Clinical Psychology, 59(3), 458–463. https://doi.org/10.1037/0022-006X.59.3.458↩︎

  2. Kiecolt-Glaser, J. K., & Newton, T. L. (2001). Marriage and Health: His and Hers. Psychological Bulletin, 127(4), 472–503. https://doi.org/10.1037/0033-2909.127.4.472↩︎

  3. Gottman, J. M. (2024). What Predicts Divorce? : The Relationship Between Marital Processes and Marital Outcomes / John M. Gottman. (First edition.). Routledge.↩︎

  4. Gottman, J. M., Coan, J., Carrere, S., & Swanson, C. (1998). Predicting Marital Happiness and Stability from Newlywed Interactions. Journal of Marriage and Family, 60(1), 5–22. https://doi.org/10.2307/353438↩︎

  5. Johnson, M. D., Cohan, C. L., Davila, J., Lawrence, E., Rogge, R. D., Karney, B. R., Sullivan, K. T., & Bradbury, T. N. (2005). Problem-Solving Skills and Affective Expressions as Predictors of Change in Marital Satisfaction. Journal of Consulting and Clinical Psychology, 73(1), 15–27. https://doi.org/10.1037/0022-006X.73.1.15↩︎

  6. Kim, H. K., Capaldi, D. M., & Crosby, L. (2007). Generalizability of Gottman and Colleagues’ Affective Process Models of Couples’ Relationship Outcomes. Journal of marriage and the family, 69(1), 55–72. https://doi.org/10.1111/j.1741- 3737.2006.00343.x↩︎

  7. Seider, B. H., Hirschberger, G., Nelson, K. L., & Levenson, R. W. (2009). We can work it out: age differences in relational pronouns, physiology, and behavior in marital conflict. Psychology and aging, 24(3), 604–613. https://doi.org/10.1037/a0016950↩︎

  8. Rizkalla, L., Wertheim, E. H., & Hodgson, L. K. (2008). The roles of emotion management and perspective taking in individuals’ conflict management styles and disposition to forgive. Journal of Research in Personality, 42(6), 1594– 1601. https://doi.org/10.1016/j.jrp.2008.07.014↩︎