-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.html
214 lines (196 loc) · 9.49 KB
/
README.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
<meta charset="utf-8">
<meta name="generator" content="quarto-1.2.269">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>readme</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
div.columns{display: flex; gap: min(4vw, 1.5em);}
div.column{flex: auto; overflow-x: auto;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
ul.task-list li input[type="checkbox"] {
width: 0.8em;
margin: 0 0.8em 0.2em -1.6em;
vertical-align: middle;
}
</style>
<script src="README_files/libs/clipboard/clipboard.min.js"></script>
<script src="README_files/libs/quarto-html/quarto.js"></script>
<script src="README_files/libs/quarto-html/popper.min.js"></script>
<script src="README_files/libs/quarto-html/tippy.umd.min.js"></script>
<script src="README_files/libs/quarto-html/anchor.min.js"></script>
<link href="README_files/libs/quarto-html/tippy.css" rel="stylesheet">
<link href="README_files/libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles">
<script src="README_files/libs/bootstrap/bootstrap.min.js"></script>
<link href="README_files/libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
<link href="README_files/libs/bootstrap/bootstrap.min.css" rel="stylesheet" id="quarto-bootstrap" data-mode="light">
</head>
<body class="fullcontent">
<div id="quarto-content" class="page-columns page-rows-contents page-layout-article">
<main class="content" id="quarto-document-content">
<section id="mediation-moderation-and-conditional-process-analysis" class="level1">
<h1>Mediation, Moderation, and Conditional Process Analysis</h1>
<p>This repository contains materials for my data analysis seminar focuses on linear regression analysis to explore questions about mediated and moderated effects. This material was first prepared for the Advanced Data Analysis class of the Master in Communication Science of the University of Vienna and can be accessed at this link: <a href="https://nicolarighetti.github.io/mediation-moderation-and-conditional-process-analysis-with-r/">Mediation, Moderation, and Conditional Process Analysis with R</a>.</p>
<p>Computer applications will focus on R statistical language, the Rstudio environment (<a href="https://www.rstudio.com/">https://www.rstudio.com),</a>,/) and the PROCESS software by Andrew F. Hayes (<a href="http://processmacro.org/">http://processmacro.org).</a>./)</p>
<p>The course is subdivided into the following learning units:</p>
<ul>
<li><p>The introductory part of the course is dedicated to a brief review of the basic principles of linear regression and the setup of R and PROCESS for statistical analysis. We discuss multiple regression analysis and its principles to understand how to fit, visualize, interpret, and evaluate multiple regression models in R. We also get a first overview of mediation, moderation, and conditional process models.</p></li>
<li><p>We then focus on mediation analysis, seeing how to fit, visualize, interpret, and evaluate mediation models using PROCESS in the R environment.</p></li>
<li><p>The following learning unit is dedicated to moderation analysis and explaining how to fit, visualize, interpret, and evaluate moderation models using PROCESS in the R environment.</p></li>
<li><p>The final learning unit is an overview of conditional process analysis and aims at explaining how to fit, visualize, interpret, and evaluate conditional process models using PROCESS in the R environment.</p></li>
</ul>
<p>The last part of the course is dedicated to the project work.</p>
<p>By the conclusion of this course, students should be proficient in:</p>
<ul>
<li><p>Executing and comprehending the outcomes of linear regression, moderation, mediation, and conditional process models.</p></li>
<li><p>Statistically testing competing theories of mechanisms through the evaluation of indirect effects in models that encompass multiple mediators.</p></li>
<li><p>Representing and investigating interactions in regression models to accurately interpret interaction effects.</p></li>
<li><p>Calculating and inferring about conditional indirect effects to estimate the contingencies of mechanisms.</p></li>
<li><p>Utilizing the R language and PROCESS to conduct, depict, and comprehend linear regression, moderation, mediation, and conditional process models.</p></li>
</ul>
<section id="reading-list" class="level3">
<h3 class="anchored" data-anchor-id="reading-list">Reading list</h3>
<p>The handbook of the course and the primary source of most of the material here presented is:</p>
<p>Andrew F. Hayes. <a href="https://books.google.at/books?id=6uk7DwAAQBAJ&printsec=frontcover&dq=introduction+to+Mediation,+Moderation,+and+Conditional+Process+Analysis.+A+Regression-Based+Approach.+2018+second+edition&hl=en&sa=X&ved=2ahUKEwjaoLSi6cf9AhV0S_EDHbngDwwQ6AF6BAgHEAI#v=onepage&q=introduction%20to%20Mediation%2C%20Moderation%2C%20and%20Conditional%20Process%20Analysis.%20A%20Regression-Based%20Approach.%202018%20second%20edition&f=false">Introduction to Mediation, Moderation, and Conditional Process Analysis. A Regression-Based Approach</a>. 2018. SECOND EDITION. THE GUILFORD PRESS, New York, London.</p>
</section>
</section>
</main>
<!-- /main column -->
<script id="quarto-html-after-body" type="application/javascript">
window.document.addEventListener("DOMContentLoaded", function (event) {
const toggleBodyColorMode = (bsSheetEl) => {
const mode = bsSheetEl.getAttribute("data-mode");
const bodyEl = window.document.querySelector("body");
if (mode === "dark") {
bodyEl.classList.add("quarto-dark");
bodyEl.classList.remove("quarto-light");
} else {
bodyEl.classList.add("quarto-light");
bodyEl.classList.remove("quarto-dark");
}
}
const toggleBodyColorPrimary = () => {
const bsSheetEl = window.document.querySelector("link#quarto-bootstrap");
if (bsSheetEl) {
toggleBodyColorMode(bsSheetEl);
}
}
toggleBodyColorPrimary();
const icon = "";
const anchorJS = new window.AnchorJS();
anchorJS.options = {
placement: 'right',
icon: icon
};
anchorJS.add('.anchored');
const clipboard = new window.ClipboardJS('.code-copy-button', {
target: function(trigger) {
return trigger.previousElementSibling;
}
});
clipboard.on('success', function(e) {
// button target
const button = e.trigger;
// don't keep focus
button.blur();
// flash "checked"
button.classList.add('code-copy-button-checked');
var currentTitle = button.getAttribute("title");
button.setAttribute("title", "Copied!");
let tooltip;
if (window.bootstrap) {
button.setAttribute("data-bs-toggle", "tooltip");
button.setAttribute("data-bs-placement", "left");
button.setAttribute("data-bs-title", "Copied!");
tooltip = new bootstrap.Tooltip(button,
{ trigger: "manual",
customClass: "code-copy-button-tooltip",
offset: [0, -8]});
tooltip.show();
}
setTimeout(function() {
if (tooltip) {
tooltip.hide();
button.removeAttribute("data-bs-title");
button.removeAttribute("data-bs-toggle");
button.removeAttribute("data-bs-placement");
}
button.setAttribute("title", currentTitle);
button.classList.remove('code-copy-button-checked');
}, 1000);
// clear code selection
e.clearSelection();
});
function tippyHover(el, contentFn) {
const config = {
allowHTML: true,
content: contentFn,
maxWidth: 500,
delay: 100,
arrow: false,
appendTo: function(el) {
return el.parentElement;
},
interactive: true,
interactiveBorder: 10,
theme: 'quarto',
placement: 'bottom-start'
};
window.tippy(el, config);
}
const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
for (var i=0; i<noterefs.length; i++) {
const ref = noterefs[i];
tippyHover(ref, function() {
// use id or data attribute instead here
let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href');
try { href = new URL(href).hash; } catch {}
const id = href.replace(/^#\/?/, "");
const note = window.document.getElementById(id);
return note.innerHTML;
});
}
const findCites = (el) => {
const parentEl = el.parentElement;
if (parentEl) {
const cites = parentEl.dataset.cites;
if (cites) {
return {
el,
cites: cites.split(' ')
};
} else {
return findCites(el.parentElement)
}
} else {
return undefined;
}
};
var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
for (var i=0; i<bibliorefs.length; i++) {
const ref = bibliorefs[i];
const citeInfo = findCites(ref);
if (citeInfo) {
tippyHover(citeInfo.el, function() {
var popup = window.document.createElement('div');
citeInfo.cites.forEach(function(cite) {
var citeDiv = window.document.createElement('div');
citeDiv.classList.add('hanging-indent');
citeDiv.classList.add('csl-entry');
var biblioDiv = window.document.getElementById('ref-' + cite);
if (biblioDiv) {
citeDiv.innerHTML = biblioDiv.innerHTML;
}
popup.appendChild(citeDiv);
});
return popup.innerHTML;
});
}
}
});
</script>
</div> <!-- /content -->
</body></html>