Research Background

1.1 Research Question

To what extent do usual weekly work hours predict perceived work-related stress, and does household income buffer this relationship?

1.2 Purpose of study

The purpose of this analysis is to examine whether the psychological strain associated with longer work hours varies as a function of household economic resources. Specifically, the study tests whether individuals who work more hours report different levels of work-related stress depending on their household income. This question is important because income may function as a resource that changes how work demands are experienced.

1.3 Key Variables:

Work Demand pPredictor): Usual weekly work hours (hrs2) Economic Resource (moderator): Household income in constant dollars (coninc) Outcome (Dependent Variable): Perceived work stress (stress)

1.4 Conceptual Model:

The study is based on a simple resource-buffering framework. In this model, work hours are expected to relate to perceived stress, while household income may reduce the strength of that relationship. Put differently, longer work hours may be more stressful when financial resources are limited, but less stressful when household income is higher.

Descriptive Data Analysis

2.1 Cleaning the Data

The original GSS dataset was reduced to the variables required for the analysis. Variables were converted to appropriate types, invalid values were recoded as missing, and the sample was restricted to complete cases on the study variables. This resulted in a final analytic sample of 409 respondents.

# =========================
# CREATE ANALYSIS DATASET
# =========================

analysis_data <- gss %>%
  
  # SELECT VARIABLES
  select(hrs2, coninc, rincome, stress) %>%
  
  # SET CORRECT DATA TYPES
  mutate(
    hrs2 = as.numeric(hrs2),
    coninc = as.numeric(coninc),
    stress = as.numeric(stress),
    rincome = haven::as_factor(rincome)
  ) %>%
  
  # REMOVE INVALID VALUES
  mutate(
    # Work hours: remove impossible values
    hrs2 = ifelse(hrs2 < 0 | hrs2 > 100, NA, hrs2),
    
    # Household income: remove invalid/zero values
    coninc = ifelse(coninc <= 0, NA, coninc),
    
    # Stress scale: keep valid 1–5 only
    stress = ifelse(stress < 1 | stress > 5, NA, stress)
  ) %>%
  
  # COMPLETE-CASE FILTER
  drop_na(hrs2, coninc, rincome, stress) %>%
  
  # CLEAN FACTOR LEVELS
  mutate(
    rincome = droplevels(rincome)
  )

2.2 Descriptive Statistics

Descriptive analyses were conducted to examine the distributional properties of the primary study variables and to assess preliminary relationships among work hours, household income, and perceived stress. These analyses provide an initial overview of central tendency, variability, and bivariate associations prior to formal hypothesis testing.

# NUMERIC SUMMARIES
numeric_vars <- analysis_data %>%
  select(hrs2, coninc, stress)

desc_stats <- data.frame(
  Mean = sapply(numeric_vars, mean, na.rm = TRUE),
  SD   = sapply(numeric_vars, sd, na.rm = TRUE),
  Var  = sapply(numeric_vars, var, na.rm = TRUE),
  Min  = sapply(numeric_vars, min, na.rm = TRUE),
  Q1   = sapply(numeric_vars, quantile, probs = 0.25, na.rm = TRUE),
  Median = sapply(numeric_vars, median, na.rm = TRUE),
  Q3   = sapply(numeric_vars, quantile, probs = 0.75, na.rm = TRUE),
  Max  = sapply(numeric_vars, max, na.rm = TRUE)
)

desc_stats
##                Mean           SD          Var  Min    Q1 Median    Q3      Max
## hrs2      39.789731    13.283847 1.764606e+02    0    35     40    45     84.0
## coninc 60903.529826 45088.289990 2.032954e+09 1266 28668  48516 80261 178712.5
## stress     2.711491     1.077802 1.161657e+00    1     2      3     3      5.0

As shown in Table 1, respondents reported an average of approximately 40 hours of work per week, with moderate variability across individuals. Household income demonstrated substantial dispersion and positive skew, reflecting the wide spread of income values in the sample. Stress levels were generally centered around the midpoint of the scale, suggesting moderate perceived work-related stress within the sample.

# CATEGORICAL DISTRIBUTION
table(analysis_data$rincome)
## 
##       under $1,000   $1,000 to $2,999   $3,000 to $3,999   $4,000 to $4,999 
##                  9                 14                  6                  6 
##   $5,000 to $5,999   $6,000 to $6,999   $7,000 to $7,999   $8,000 to $9,999 
##                  1                  4                  5                  4 
## $10,000 to $14,999 $15,000 to $19,999 $20,000 to $24,999    $25,000 or more 
##                 41                 29                 33                257
prop.table(table(analysis_data$rincome))
## 
##       under $1,000   $1,000 to $2,999   $3,000 to $3,999   $4,000 to $4,999 
##        0.022004890        0.034229829        0.014669927        0.014669927 
##   $5,000 to $5,999   $6,000 to $6,999   $7,000 to $7,999   $8,000 to $9,999 
##        0.002444988        0.009779951        0.012224939        0.009779951 
## $10,000 to $14,999 $15,000 to $19,999 $20,000 to $24,999    $25,000 or more 
##        0.100244499        0.070904645        0.080684597        0.628361858

The distribution of respondent income categories was skewed toward the upper category, which reflects the categorical and top-coded nature of the original income measure. This pattern is useful for understanding the composition of the broader GSS income measure, although the main analysis relies on the continuous household-income variable.

# CORRELATION MATRIX
cor(numeric_vars)
##              hrs2      coninc      stress
## hrs2    1.0000000  0.18694363 -0.21172915
## coninc  0.1869436  1.00000000 -0.01334143
## stress -0.2117292 -0.01334143  1.00000000

Bivariate correlations indicated a small positive association between work hours and household income, suggesting that individuals working longer hours tended to report slightly higher household income. In contrast, work hours were modestly negatively associated with stress, whereas household income showed negligible association with stress at the bivariate level. These results suggest that the relationship between work hours and stress may not be straightforward and may warrant further examination through regression modeling.

# VISUALIZATIONS
# Histogram: usual weekly work hours
ggplot(analysis_data, aes(x = hrs2)) +
  geom_histogram(bins = 20) +
  labs(title = "Distribution of Usual Weekly Work Hours")

The distribution of weekly work hours was centered around standard full-time employment levels, with some variability indicating both reduced and extended work schedules within the sample.

# Histogram: stress
ggplot(analysis_data, aes(x = stress)) +
  geom_histogram(bins = 5) +
  labs(title = "Distribution of Work Stress")

Reported stress levels appeared relatively evenly distributed across the scale, with slight clustering around mid-range values.

# Scatterplot: hours vs stress
ggplot(analysis_data, aes(x = hrs2, y = stress)) +
  geom_point(alpha = 0.5) +
  geom_smooth(method = "lm") +
  labs(title = "Work Hours and Stress Relationship")
## `geom_smooth()` using formula = 'y ~ x'

The scatterplot of work hours and stress suggests a weak negative linear association, with substantial dispersion around the fitted regression line. This pattern indicates that work hours alone may not be a strong predictor of stress and motivates further examination of the relationship through regression analysis.

Methods

3.1 Infernential analysis moderation model

To test whether household income moderates the relationship between work hours and perceived stress, a linear regression model with an interaction term was estimated. Continuous predictors (work hours and household income) were mean-centered prior to analysis to improve interpretability and reduce multicollinearity. The model examined both the direct effects of work hours and income on stress, as well as their interaction.

# Center continuous predictors
analysis_data <- analysis_data %>%
  mutate(
    hrs2_c = scale(hrs2, center = TRUE, scale = FALSE),
    coninc_c = scale(coninc, center = TRUE, scale = FALSE)
  )

# Fit moderation model
model <- lm(stress ~ hrs2_c * coninc_c, data = analysis_data)

# Model summary
summary(model)
## 
## Call:
## lm(formula = stress ~ hrs2_c * coninc_c, data = analysis_data)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.3985 -0.7183  0.2181  0.4597  2.6086 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(>|t|)    
## (Intercept)      2.720e+00  5.307e-02  51.262  < 2e-16 ***
## hrs2_c          -1.752e-02  4.006e-03  -4.374 1.55e-05 ***
## coninc_c         7.405e-07  1.184e-06   0.625    0.532    
## hrs2_c:coninc_c -7.922e-08  8.539e-08  -0.928    0.354    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.056 on 405 degrees of freedom
## Multiple R-squared:  0.04757,    Adjusted R-squared:  0.04051 
## F-statistic: 6.742 on 3 and 405 DF,  p-value: 0.0001901
# Check assumptions
par(mfrow = c(2,2))
plot(model)

A multiple regression analysis was conducted to examine whether household income moderates the relationship between work hours and perceived stress. The overall model was statistically significant, although it explained a small proportion of variance in stress (R² = .048, p < .001). Results indicated a small but significant negative association between work hours and stress, such that individuals reporting longer work hours reported slightly lower levels of stress when controlling for income. Household income was not significantly associated with stress, and the interaction between work hours and income was also non-significant, indicating no evidence that income moderates the relationship between work hours and stress.

3.2 Infernential analysis moderation model

To further examine the potential moderating role of income, income was divided into tertile-based groups for visualization only. This exploratory plot was used to illustrate whether the relationship between work hours and stress appeared different across lower-, middle-, and higher-income respondents.

# Create income groups (for visualization only)
analysis_data <- analysis_data %>%
  mutate(
    income_group = case_when(
      coninc <= quantile(coninc, 0.33, na.rm = TRUE) ~ "Low Income",
      coninc <= quantile(coninc, 0.66, na.rm = TRUE) ~ "Middle Income",
      TRUE ~ "High Income"
    )
  )

# Interaction Plot
ggplot(analysis_data, aes(x = hrs2, y = stress, color = income_group)) +
  geom_point(alpha = 0.3) +
  geom_smooth(method = "lm", se = TRUE) +
  labs(
    title = "Interaction Between Work Hours and Income on Stress",
    x = "Work Hours per Week",
    y = "Perceived Stress",
    color = "Income Level"
  ) +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

summary(lm(stress ~ hrs2 * income_group, data = analysis_data))
## 
## Call:
## lm(formula = stress ~ hrs2 * income_group, data = analysis_data)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.4503 -0.7146  0.2291  0.5009  2.5369 
## 
## Coefficients:
##                                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                     3.858001   0.317430  12.154  < 2e-16 ***
## hrs2                           -0.027178   0.007131  -3.811  0.00016 ***
## income_groupLow Income         -0.640328   0.423126  -1.513  0.13098    
## income_groupMiddle Income      -0.649543   0.421007  -1.543  0.12366    
## hrs2:income_groupLow Income     0.014602   0.010157   1.438  0.15130    
## hrs2:income_groupMiddle Income  0.013971   0.009662   1.446  0.14896    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.056 on 403 degrees of freedom
## Multiple R-squared:  0.0519, Adjusted R-squared:  0.04014 
## F-statistic: 4.412 on 5 and 403 DF,  p-value: 0.0006355

Visual inspection of the interaction plot suggested slight differences in the relationship between work hours and stress across income groups, with a more negative association observed among higher-income individuals and flatter slopes among lower- and middle-income groups. However, these interaction effects were not statistically significant, indicating that the observed differences in slopes were not robust. Thus, there is no strong evidence that income meaningfully moderates the relationship between work hours and stress in this sample.

Discussion

4.1 Summary of Findings

The present study examined whether household income moderates the relationship between work hours and perceived stress. Contrary to a straightforward workload–stress assumption, results indicated a small but significant negative association between work hours and stress, such that individuals who reported working more hours also reported slightly lower levels of stress. Household income was not significantly related to stress, and no evidence was found to support the hypothesized moderating effect of income. Although visual inspection of the interaction suggested minor differences across income groups, these differences were not statistically reliable.

4.2 Interpretation of the Work Hours Effect

The observed negative relationship between work hours and stress may reflect underlying differences in employment conditions rather than a direct causal effect of workload. Individuals working longer hours may occupy more stable, higher-quality, or better-compensated positions, which could be associated with greater job security, autonomy, or access to resources that mitigate stress. Conversely, individuals working fewer hours may include those experiencing underemployment or financial strain, which could contribute to elevated stress levels. Thus, work hours in this context may function as a proxy for broader employment quality rather than solely representing workload demands.

4.3 Lack of Income Effects

Contrary to expectations, household income was not significantly associated with stress, nor did it moderate the relationship between work hours and stress. One explanation is that income, particularly when measured at the household level, may not directly capture the aspects of financial experience most relevant to stress, such as financial insecurity, perceived adequacy, or income volatility. Additionally, the structure of income measurement may limit the ability to detect nuanced relationships at higher income levels where variability is compressed.

4.4 Interpretation of the Income Interaction

Although the interaction between work hours and income was not statistically significant, visual patterns suggested slight differences in slopes across income groups. Specifically, the negative association between work hours and stress appeared somewhat stronger among higher-income individuals and weaker among lower-income individuals. However, these differences were small and inconsistent, indicating that income does not meaningfully alter the relationship between work hours and stress in this sample. This suggests that the factors linking work hours to stress may operate similarly across income levels or that other unmeasured variables play a more central moderating role.

4.5 Practical Implications

From an applied perspective, these findings suggest that increasing income alone may not be sufficient to buffer the relationship between work demands and stress. Instead, interventions aimed at improving employee well-being may benefit from focusing on job quality factors such as autonomy, workload manageability, and organizational support. Additionally, the results highlight the importance of considering employment context when evaluating the effects of work hours, as longer hours do not uniformly correspond to greater stress.

4.6 Limitations

Several limitations should be noted. First, the cross-sectional nature of the data precludes causal inference, and the observed relationships may reflect selection effects rather than direct causal mechanisms. Second, the use of self-reported measures introduces potential bias and limits precision, particularly for constructs such as stress. Third, the reliance on complete-case analysis reduced the sample size substantially, which may have limited statistical power to detect interaction effects. Finally, income was measured at the household level and may not fully capture individual financial strain.

4.7 Future Directions

Future research should incorporate more precise measures of individual income and financial strain, as well as additional job-related variables such as occupation, job control, and perceived workload. Longitudinal designs would be particularly valuable in disentangling causal relationships between work hours, income, and stress over time. Additionally, examining psychological and organizational moderators—such as autonomy, job demands, and boundary management—may provide a more comprehensive understanding of how work characteristics influence employee well-being.