diff --git a/Functiona_Enrichment.log b/Functiona_Enrichment.log deleted file mode 100644 index d43808f..0000000 --- a/Functiona_Enrichment.log +++ /dev/null @@ -1,982 +0,0 @@ -This is XeTeX, Version 3.141592653-2.6-0.999995 (TeX Live 2023) (preloaded format=xelatex 2023.9.25) 10 NOV 2025 16:56 -entering extended mode - restricted \write18 enabled. - %&-line parsing enabled. -**Functiona_Enrichment.tex -(./Functiona_Enrichment.tex -LaTeX2e <2022-11-01> patch level 1 -L3 programming layer <2023-02-22> (/usr/local/texlive/2023/texmf-dist/tex/latex -/base/book.cls -Document Class: book 2022/07/02 v1.4n Standard LaTeX document class -(/usr/local/texlive/2023/texmf-dist/tex/latex/base/bk10.clo -File: bk10.clo 2022/07/02 v1.4n Standard LaTeX file (size option) -) -\c@part=\count181 -\c@chapter=\count182 -\c@section=\count183 -\c@subsection=\count184 -\c@subsubsection=\count185 -\c@paragraph=\count186 -\c@subparagraph=\count187 -\c@figure=\count188 -\c@table=\count189 -\abovecaptionskip=\skip48 -\belowcaptionskip=\skip49 -\bibindent=\dimen140 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty -Package: amsmath 2022/04/08 v2.17n AMS math features -\@mathmargin=\skip50 -For additional information on amsmath, use the `?' option. -(/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty -Package: amstext 2021/08/26 v2.01 AMS text -(/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty -File: amsgen.sty 1999/11/30 v2.0 generic functions -\@emptytoks=\toks16 -\ex@=\dimen141 -)) (/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty -Package: amsbsy 1999/11/29 v1.2d Bold Symbols -\pmbraise@=\dimen142 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty -Package: amsopn 2022/04/08 v2.04 operator names -) -\inf@bad=\count190 -LaTeX Info: Redefining \frac on input line 234. -\uproot@=\count191 -\leftroot@=\count192 -LaTeX Info: Redefining \overline on input line 399. -LaTeX Info: Redefining \colon on input line 410. -\classnum@=\count193 -\DOTSCASE@=\count194 -LaTeX Info: Redefining \ldots on input line 496. -LaTeX Info: Redefining \dots on input line 499. -LaTeX Info: Redefining \cdots on input line 620. -\Mathstrutbox@=\box51 -\strutbox@=\box52 -LaTeX Info: Redefining \big on input line 722. -LaTeX Info: Redefining \Big on input line 723. -LaTeX Info: Redefining \bigg on input line 724. -LaTeX Info: Redefining \Bigg on input line 725. -\big@size=\dimen143 -LaTeX Font Info: Redeclaring font encoding OML on input line 743. -LaTeX Font Info: Redeclaring font encoding OMS on input line 744. -\macc@depth=\count195 -LaTeX Info: Redefining \bmod on input line 905. -LaTeX Info: Redefining \pmod on input line 910. -LaTeX Info: Redefining \smash on input line 940. -LaTeX Info: Redefining \relbar on input line 970. -LaTeX Info: Redefining \Relbar on input line 971. -\c@MaxMatrixCols=\count196 -\dotsspace@=\muskip16 -\c@parentequation=\count197 -\dspbrk@lvl=\count198 -\tag@help=\toks17 -\row@=\count199 -\column@=\count266 -\maxfields@=\count267 -\andhelp@=\toks18 -\eqnshift@=\dimen144 -\alignsep@=\dimen145 -\tagshift@=\dimen146 -\tagwidth@=\dimen147 -\totwidth@=\dimen148 -\lineht@=\dimen149 -\@envbody=\toks19 -\multlinegap=\skip51 -\multlinetaggap=\skip52 -\mathdisplay@stack=\toks20 -LaTeX Info: Redefining \[ on input line 2953. -LaTeX Info: Redefining \] on input line 2954. -) (/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty -Package: amssymb 2013/01/14 v3.01 AMS font symbols -(/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty -Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support -\symAMSa=\mathgroup4 -\symAMSb=\mathgroup5 -LaTeX Font Info: Redeclaring math symbol \hbar on input line 98. -LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' -(Font) U/euf/m/n --> U/euf/b/n on input line 106. -)) (/usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty -Package: iftex 2022/02/03 v1.0f TeX engine tests -) (/usr/local/texlive/2023/texmf-dist/tex/latex/unicode-math/unicode-math.sty ( -/usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty -Package: expl3 2023-02-22 L3 programming layer (loader) -(/usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-xetex.def -File: l3backend-xetex.def 2023-01-16 L3 backend support: XeTeX -\g__graphics_track_int=\count268 -\l__pdf_internal_box=\box53 -\g__pdf_backend_object_int=\count269 -\g__pdf_backend_annotation_int=\count270 -\g__pdf_backend_link_int=\count271 -)) -Package: unicode-math 2020/01/31 v0.8q Unicode maths in XeLaTeX and LuaLaTeX - -(/usr/local/texlive/2023/texmf-dist/tex/latex/unicode-math/unicode-math-xetex.s -ty -Package: unicode-math-xetex 2020/01/31 v0.8q Unicode maths in XeLaTeX and LuaLa -TeX -(/usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/xparse/xparse.sty -Package: xparse 2023-02-02 L3 Experimental document command parser -) (/usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.st -y -Package: l3keys2e 2023-02-02 LaTeX2e option processing using LaTeX3 keys -) (/usr/local/texlive/2023/texmf-dist/tex/latex/fontspec/fontspec.sty -Package: fontspec 2022/01/15 v2.8a Font selection for XeLaTeX and LuaLaTeX -(/usr/local/texlive/2023/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty -Package: fontspec-xetex 2022/01/15 v2.8a Font selection for XeLaTeX and LuaLaTe -X -\l__fontspec_script_int=\count272 -\l__fontspec_language_int=\count273 -\l__fontspec_strnum_int=\count274 -\l__fontspec_tmp_int=\count275 -\l__fontspec_tmpa_int=\count276 -\l__fontspec_tmpb_int=\count277 -\l__fontspec_tmpc_int=\count278 -\l__fontspec_em_int=\count279 -\l__fontspec_emdef_int=\count280 -\l__fontspec_strong_int=\count281 -\l__fontspec_strongdef_int=\count282 -\l__fontspec_tmpa_dim=\dimen150 -\l__fontspec_tmpb_dim=\dimen151 -\l__fontspec_tmpc_dim=\dimen152 -(/usr/local/texlive/2023/texmf-dist/tex/latex/base/fontenc.sty -Package: fontenc 2021/04/29 v2.0v Standard LaTeX package -) (/usr/local/texlive/2023/texmf-dist/tex/latex/fontspec/fontspec.cfg))) (/usr/ -local/texlive/2023/texmf-dist/tex/latex/base/fix-cm.sty -Package: fix-cm 2020/11/24 v1.1t fixes to LaTeX -(/usr/local/texlive/2023/texmf-dist/tex/latex/base/ts1enc.def -File: ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file -LaTeX Font Info: Redeclaring font encoding TS1 on input line 47. -)) -\g__um_fam_int=\count283 -\g__um_fonts_used_int=\count284 -\l__um_primecount_int=\count285 -\g__um_primekern_muskip=\muskip17 - -(/usr/local/texlive/2023/texmf-dist/tex/latex/unicode-math/unicode-math-table.t -ex))) (/usr/local/texlive/2023/texmf-dist/tex/latex/lm/lmodern.sty -Package: lmodern 2015/05/01 v1.6.1 Latin Modern Fonts -LaTeX Font Info: Overwriting symbol font `operators' in version `normal' -(Font) OT1/cmr/m/n --> OT1/lmr/m/n on input line 22. -LaTeX Font Info: Overwriting symbol font `letters' in version `normal' -(Font) OML/cmm/m/it --> OML/lmm/m/it on input line 23. -LaTeX Font Info: Overwriting symbol font `symbols' in version `normal' -(Font) OMS/cmsy/m/n --> OMS/lmsy/m/n on input line 24. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal' -(Font) OMX/cmex/m/n --> OMX/lmex/m/n on input line 25. -LaTeX Font Info: Overwriting symbol font `operators' in version `bold' -(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 26. -LaTeX Font Info: Overwriting symbol font `letters' in version `bold' -(Font) OML/cmm/b/it --> OML/lmm/b/it on input line 27. -LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' -(Font) OMS/cmsy/b/n --> OMS/lmsy/b/n on input line 28. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' -(Font) OMX/cmex/m/n --> OMX/lmex/m/n on input line 29. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' -(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 31. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' -(Font) OT1/cmss/m/n --> OT1/lmss/m/n on input line 32. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' -(Font) OT1/cmr/m/it --> OT1/lmr/m/it on input line 33. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' -(Font) OT1/cmtt/m/n --> OT1/lmtt/m/n on input line 34. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `bold' -(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 35. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' -(Font) OT1/cmss/bx/n --> OT1/lmss/bx/n on input line 36. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' -(Font) OT1/cmr/bx/it --> OT1/lmr/bx/it on input line 37. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' -(Font) OT1/cmtt/m/n --> OT1/lmtt/m/n on input line 38. -) (/usr/local/texlive/2023/texmf-dist/tex/latex/upquote/upquote.sty -Package: upquote 2012/04/19 v1.3 upright-quote and grave-accent glyphs in verba -tim -(/usr/local/texlive/2023/texmf-dist/tex/latex/base/textcomp.sty -Package: textcomp 2020/02/02 v2.0n Standard LaTeX package -)) (/usr/local/texlive/2023/texmf-dist/tex/latex/microtype/microtype.sty -Package: microtype 2023/03/13 v3.1a Micro-typographical refinements (RS) -(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty -Package: keyval 2022/05/29 v1.15 key=value parser (DPC) -\KV@toks@=\toks21 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty -Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW) -\etb@tempcnta=\count286 -) -\MT@toks=\toks22 -\MT@tempbox=\box54 -\MT@count=\count287 -LaTeX Info: Redefining \noprotrusionifhmode on input line 1059. -LaTeX Info: Redefining \leftprotrusion on input line 1060. -\MT@prot@toks=\toks23 -LaTeX Info: Redefining \rightprotrusion on input line 1078. -LaTeX Info: Redefining \textls on input line 1368. -\MT@outer@kern=\dimen153 -LaTeX Info: Redefining \textmicrotypecontext on input line 1988. -\MT@listname@count=\count288 -(/usr/local/texlive/2023/texmf-dist/tex/latex/microtype/microtype-xetex.def -File: microtype-xetex.def 2023/03/13 v3.1a Definitions specific to xetex (RS) -LaTeX Info: Redefining \lsstyle on input line 238. -) -Package microtype Info: Loading configuration file microtype.cfg. -(/usr/local/texlive/2023/texmf-dist/tex/latex/microtype/microtype.cfg -File: microtype.cfg 2023/03/13 v3.1a microtype main configuration file (RS) -)) (/usr/local/texlive/2023/texmf-dist/tex/latex/parskip/parskip.sty -Package: parskip 2021-03-14 v2.0h non-zero parskip adjustments -(/usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty -Package: kvoptions 2022-06-15 v3.15 Key value format for package options (HO) -(/usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty -Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) -) (/usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty -Package: kvsetkeys 2022-10-05 v1.19 Key value parser (HO) -))) (/usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty -Package: xcolor 2022/06/12 v2.14 LaTeX color extensions (UK) -(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/color.cfg -File: color.cfg 2016/01/02 v1.6 sample color configuration -) -Package xcolor Info: Driver file: xetex.def on input line 227. -(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-def/xetex.def -File: xetex.def 2022/09/22 v5.0n Graphics/color driver for xetex -) (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/mathcolor.ltx) -Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1353. -Package xcolor Info: Model `RGB' extended on input line 1369. -Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1371. -Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1372. -Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1373. -Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1374. -Package xcolor Info: Model `Gray' substituted by `gray' on input line 1375. -Package xcolor Info: Model `wave' substituted by `hsb' on input line 1376. -) (/usr/local/texlive/2023/texmf-dist/tex/latex/fancyvrb/fancyvrb.sty -Package: fancyvrb 2023/01/19 4.5a verbatim text (tvz,hv) -\FV@CodeLineNo=\count289 -\FV@InFile=\read2 -\FV@TabBox=\box55 -\c@FancyVerbLine=\count290 -\FV@StepNumber=\count291 -\FV@OutFile=\write3 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/framed/framed.sty -Package: framed 2011/10/22 v 0.96: framed or shaded text with page breaks -\OuterFrameSep=\skip53 -\fb@frw=\dimen154 -\fb@frh=\dimen155 -\FrameRule=\dimen156 -\FrameSep=\dimen157 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/tools/longtable.sty -Package: longtable 2021-09-01 v4.17 Multi-page Table package (DPC) -\LTleft=\skip54 -\LTright=\skip55 -\LTpre=\skip56 -\LTpost=\skip57 -\LTchunksize=\count292 -\LTcapwidth=\dimen158 -\LT@head=\box56 -\LT@firsthead=\box57 -\LT@foot=\box58 -\LT@lastfoot=\box59 -\LT@gbox=\box60 -\LT@cols=\count293 -\LT@rows=\count294 -\c@LT@tables=\count295 -\c@LT@chunks=\count296 -\LT@p@ftn=\toks24 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/booktabs/booktabs.sty -Package: booktabs 2020/01/12 v1.61803398 Publication quality tables -\heavyrulewidth=\dimen159 -\lightrulewidth=\dimen160 -\cmidrulewidth=\dimen161 -\belowrulesep=\dimen162 -\belowbottomsep=\dimen163 -\aboverulesep=\dimen164 -\abovetopsep=\dimen165 -\cmidrulesep=\dimen166 -\cmidrulekern=\dimen167 -\defaultaddspace=\dimen168 -\@cmidla=\count297 -\@cmidlb=\count298 -\@aboverulesep=\dimen169 -\@belowrulesep=\dimen170 -\@thisruleclass=\count299 -\@lastruleclass=\count300 -\@thisrulewidth=\dimen171 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/tools/array.sty -Package: array 2022/09/04 v2.5g Tabular extension package (FMi) -\col@sep=\dimen172 -\ar@mcellbox=\box61 -\extrarowheight=\dimen173 -\NC@list=\toks25 -\extratabsurround=\skip58 -\backup@length=\skip59 -\ar@cellbox=\box62 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty -Package: calc 2017/05/25 v4.3 Infix arithmetic (KKT,FJ) -\calc@Acount=\count301 -\calc@Bcount=\count302 -\calc@Adimen=\dimen174 -\calc@Bdimen=\dimen175 -\calc@Askip=\skip60 -\calc@Bskip=\skip61 -LaTeX Info: Redefining \setlength on input line 80. -LaTeX Info: Redefining \addtolength on input line 81. -\calc@Ccount=\count303 -\calc@Cskip=\skip62 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/footnotehyper/footnotehyper.sty -Package: footnotehyper 2021/08/13 v1.1e hyperref aware footnote.sty (JFB) -\FNH@notes=\box63 -\FNH@width=\dimen176 -\FNH@toks=\toks26 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty -Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR) -(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty -Package: graphics 2022/03/10 v1.4e Standard LaTeX Graphics (DPC,SPQR) -(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty -Package: trig 2021/08/11 v1.11 sin cos tan (DPC) -) (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/graphics.cfg -File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration -) -Package graphics Info: Driver file: xetex.def on input line 107. -) -\Gin@req@height=\dimen177 -\Gin@req@width=\dimen178 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/multirow/multirow.sty -Package: multirow 2021/03/15 v2.8 Span multiple rows of a table -\multirow@colwidth=\skip63 -\multirow@cntb=\count304 -\multirow@dima=\skip64 -\bigstrutjot=\dimen179 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/wrapfig/wrapfig.sty -\wrapoverhang=\dimen180 -\WF@size=\dimen181 -\c@WF@wrappedlines=\count305 -\WF@box=\box64 -\WF@everypar=\toks27 -Package: wrapfig 2003/01/31 v 3.6 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/float/float.sty -Package: float 2001/11/08 v1.3d Float enhancements (AL) -\c@float@type=\count306 -\float@exts=\toks28 -\float@box=\box65 -\@float@everytoks=\toks29 -\@floatcapt=\box66 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/colortbl/colortbl.sty -Package: colortbl 2022/06/20 v1.0f Color table columns (DPC) -\everycr=\toks30 -\minrowclearance=\skip65 -\rownum=\count307 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty -Package: pdflscape 2022-10-27 v0.13 Display of landscape pages in PDF - -(/usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.st -y -Package: pdflscape-nometadata 2022-10-28 v0.13 Display of landscape pages in PD -F (HO) -(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty -Package: lscape 2020/05/28 v3.02 Landscape Pages (DPC) -) -Package pdflscape Info: Auto-detected driver: dvipdfm (xetex) on input line 98. - -)) (/usr/local/texlive/2023/texmf-dist/tex/latex/tabu/tabu.sty -Package: tabu 2019/01/11 v2.9 - flexible LaTeX tabulars (FC+tabu-fixed) -(/usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty -Package: varwidth 2009/03/30 ver 0.92; Variable-width minipages -\@vwid@box=\box67 -\sift@deathcycles=\count308 -\@vwid@loff=\dimen182 -\@vwid@roff=\dimen183 -) -\c@taburow=\count309 -\tabu@nbcols=\count310 -\tabu@cnt=\count311 -\tabu@Xcol=\count312 -\tabu@alloc=\count313 -\tabu@nested=\count314 -\tabu@target=\dimen184 -\tabu@spreadtarget=\dimen185 -\tabu@naturalX=\dimen186 -\tabucolX=\dimen187 -\tabu@Xsum=\dimen188 -\extrarowdepth=\dimen189 -\abovetabulinesep=\dimen190 -\belowtabulinesep=\dimen191 -\tabustrutrule=\dimen192 -\tabu@thebody=\toks31 -\tabu@footnotes=\toks32 -\tabu@box=\box68 -\tabu@arstrutbox=\box69 -\tabu@hleads=\box70 -\tabu@vleads=\box71 -\tabu@cellskip=\skip66 -) -(/usr/local/texlive/2023/texmf-dist/tex/latex/threeparttable/threeparttable.sty -Package: threeparttable 2003/06/13 v 3.0 -\@tempboxb=\box72 -) -(/usr/local/texlive/2023/texmf-dist/tex/latex/threeparttablex/threeparttablex.s -ty -Package: threeparttablex 2013/07/23 v0.3 by daleif -(/usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty -Package: environ 2014/05/04 v0.3 A new way to define environments -(/usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty -Package: trimspaces 2009/09/17 v1.1 Trim spaces around a token list -)) -\TPTL@width=\skip67 -) (/usr/local/texlive/2023/texmf-dist/tex/generic/ulem/ulem.sty -\UL@box=\box73 -\UL@hyphenbox=\box74 -\UL@skip=\skip68 -\UL@hook=\toks33 -\UL@height=\dimen193 -\UL@pe=\count315 -\UL@pixel=\dimen194 -\ULC@box=\box75 -Package: ulem 2019/11/18 -\ULdepth=\dimen195 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/makecell/makecell.sty -Package: makecell 2009/08/03 V0.1e Managing of Tab Column Heads and Cells -\rotheadsize=\dimen196 -\c@nlinenum=\count316 -\TeXr@lab=\toks34 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty -Package: natbib 2010/09/13 8.31b (PWD, AO) -\bibhang=\skip69 -\bibsep=\skip70 -LaTeX Info: Redefining \cite on input line 694. -\c@NAT@ctr=\count317 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/bookmark/bookmark.sty -Package: bookmark 2020-11-06 v1.29 PDF bookmarks (HO) -(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty -Package: hyperref 2023-02-07 v7.00v Hypertext links for LaTeX -(/usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty -Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO -) -(/usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty -Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) -) -Package pdftexcmds Info: \pdf@primitive is available. -Package pdftexcmds Info: \pdf@ifprimitive is available. -Package pdftexcmds Info: \pdfdraftmode not found. -) (/usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty -Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) -) (/usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty -Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) -) (/usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty -Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) -) (/usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty -Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) -) (/usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty -Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) -) (/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty -Package: nameref 2022-05-17 v2.50 Cross-referencing by name of section -(/usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty -Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) -) -(/usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.s -ty -Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) -) -\c@section@level=\count318 -) -\@linkdim=\dimen197 -\Hy@linkcounter=\count319 -\Hy@pagecounter=\count320 -(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/pd1enc.def -File: pd1enc.def 2023-02-07 v7.00v Hyperref: PDFDocEncoding definition (HO) -) (/usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty -Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) -) (/usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty -Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) -) -\Hy@SavedSpaceFactor=\count321 -(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/puenc.def -File: puenc.def 2023-02-07 v7.00v Hyperref: PDF Unicode definition (HO) -) -Package hyperref Info: Option `unicode' set `true' on input line 4060. -Package hyperref Info: Hyper figures OFF on input line 4177. -Package hyperref Info: Link nesting OFF on input line 4182. -Package hyperref Info: Hyper index ON on input line 4185. -Package hyperref Info: Plain pages OFF on input line 4192. -Package hyperref Info: Backreferencing OFF on input line 4197. -Package hyperref Info: Implicit mode ON; LaTeX internals redefined. -Package hyperref Info: Bookmarks ON on input line 4425. -\c@Hy@tempcnt=\count322 -(/usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty -\Urlmuskip=\muskip18 -Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. -) -LaTeX Info: Redefining \url on input line 4763. -\XeTeXLinkMargin=\dimen198 -(/usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty -Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) -(/usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty -Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO -) -)) -\Fld@menulength=\count323 -\Field@Width=\dimen199 -\Fld@charsize=\dimen256 -Package hyperref Info: Hyper figures OFF on input line 6042. -Package hyperref Info: Link nesting OFF on input line 6047. -Package hyperref Info: Hyper index ON on input line 6050. -Package hyperref Info: backreferencing OFF on input line 6057. -Package hyperref Info: Link coloring OFF on input line 6062. -Package hyperref Info: Link coloring with OCG OFF on input line 6067. -Package hyperref Info: PDF/A mode OFF on input line 6072. -(/usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty -Package: atbegshi-ltx 2021/01/10 v1.0c Emulation of the original atbegshi -package with kernel methods -) -\Hy@abspage=\count324 -\c@Item=\count325 -\c@Hfootnote=\count326 -) -Package hyperref Info: Driver (autodetected): hxetex. -(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hxetex.def -File: hxetex.def 2023-02-07 v7.00v Hyperref driver for XeTeX -(/usr/local/texlive/2023/texmf-dist/tex/generic/stringenc/stringenc.sty -Package: stringenc 2019/11/29 v1.12 Convert strings between diff. encodings (HO -) -) -\pdfm@box=\box76 -\c@Hy@AnnotLevel=\count327 -\HyField@AnnotCount=\count328 -\Fld@listcount=\count329 -\c@bookmark@seq@number=\count330 - -(/usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty -Package: rerunfilecheck 2022-07-10 v1.10 Rerun checks for auxiliary files (HO) -(/usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty -Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atveryend pac -kage -with kernel methods -) -(/usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty -Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) -) -Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 -85. -) -\Hy@SectionHShift=\skip71 -) (/usr/local/texlive/2023/texmf-dist/tex/latex/bookmark/bkm-dvipdfm.def -File: bkm-dvipdfm.def 2020-11-06 v1.29 bookmark driver for dvipdfm (HO) -\BKM@id=\count331 -)) (/usr/local/texlive/2023/texmf-dist/tex/latex/xurl/xurl.sty -Package: xurl 2022/01/09 v 0.10 modify URL breaks -) -No file Functiona_Enrichment.aux. -\openout1 = `Functiona_Enrichment.aux'. - -LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for TU/lmr/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 139. -LaTeX Font Info: ... okay on input line 139. -LaTeX Font Info: Overwriting math alphabet `\mathrm' in version `normal' -(Font) OT1/lmr/m/n --> TU/lmr/m/n on input line 139. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' -(Font) OT1/lmr/m/it --> TU/lmr/m/it on input line 139. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' -(Font) OT1/lmr/bx/n --> TU/lmr/bx/n on input line 139. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' -(Font) OT1/lmss/m/n --> TU/lmss/m/n on input line 139. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' -(Font) OT1/lmss/bx/n --> TU/lmss/bx/n on input line 139. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' -(Font) OT1/lmtt/m/n --> TU/lmtt/m/n on input line 139. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' -(Font) OT1/lmtt/m/n --> TU/lmtt/bx/n on input line 139. - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: Font family 'latinmodern-math.otf(0)' created for font -(fontspec) 'latinmodern-math.otf' with options -(fontspec) [Scale=MatchLowercase,BoldItalicFont={},ItalicFont={},Sm -allCapsFont={},Script=Math,BoldFont={latinmodern-math.otf}]. -(fontspec) -(fontspec) This font family consists of the following NFSS -(fontspec) series/shapes: -(fontspec) -(fontspec) - 'normal' (m/n) with NFSS spec.: -(fontspec) <->s*[0.9999964596882403]"[latinmodern-math.otf]/OT:scri -pt=math;language=dflt;" -(fontspec) - 'small caps' (m/sc) with NFSS spec.: -(fontspec) - 'bold' (b/n) with NFSS spec.: -(fontspec) <->s*[0.9999964596882403]"[latinmodern-math.otf]/OT:scri -pt=math;language=dflt;" -(fontspec) - 'bold small caps' (b/sc) with NFSS spec.: - -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(0)/m/n' will be -(Font) scaled to size 10.0pt on input line 139. - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: Font family 'latinmodern-math.otf(1)' created for font -(fontspec) 'latinmodern-math.otf' with options -(fontspec) [Scale=MatchLowercase,BoldItalicFont={},ItalicFont={},Sm -allCapsFont={},Script=Math,SizeFeatures={{Size=8.5-},{Size=6-8.5,Font=latinmode -rn-math.otf,Style=MathScript},{Size=-6,Font=latinmodern-math.otf,Style=MathScri -ptScript}},BoldFont={latinmodern-math.otf}]. -(fontspec) -(fontspec) This font family consists of the following NFSS -(fontspec) series/shapes: -(fontspec) -(fontspec) - 'normal' (m/n) with NFSS spec.: -(fontspec) <8.5->s*[0.9999964596882403]"[latinmodern-math.otf]/OT:s -cript=math;language=dflt;"<6-8.5>s*[0.9999964596882403]"[latinmodern-math.otf]/ -OT:script=math;language=dflt;+ssty=0;"<-6>s*[0.9999964596882403]"[latinmodern-m -ath.otf]/OT:script=math;language=dflt;+ssty=1;" -(fontspec) - 'small caps' (m/sc) with NFSS spec.: -(fontspec) - 'bold' (b/n) with NFSS spec.: -(fontspec) <->s*[0.9999964596882403]"[latinmodern-math.otf]/OT:scri -pt=math;language=dflt;" -(fontspec) - 'bold small caps' (b/sc) with NFSS spec.: - -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(1)/m/n' will be -(Font) scaled to size 10.0pt on input line 139. -LaTeX Font Info: Encoding `OT1' has changed to `TU' for symbol font -(Font) `operators' in the math version `normal' on input line 139. - -LaTeX Font Info: Overwriting symbol font `operators' in version `normal' -(Font) OT1/lmr/m/n --> TU/latinmodern-math.otf(1)/m/n on input - line 139. -LaTeX Font Info: Encoding `OT1' has changed to `TU' for symbol font -(Font) `operators' in the math version `bold' on input line 139. -LaTeX Font Info: Overwriting symbol font `operators' in version `bold' -(Font) OT1/lmr/bx/n --> TU/latinmodern-math.otf(1)/b/n on inpu -t line 139. - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 1.000096459334209. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 1.000096459334209. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 1.000096459334209. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 1.000096459334209. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 1.000096459334209. - - -Package fontspec Info: Font family 'latinmodern-math.otf(2)' created for font -(fontspec) 'latinmodern-math.otf' with options -(fontspec) [Scale=MatchLowercase,BoldItalicFont={},ItalicFont={},Sm -allCapsFont={},Script=Math,SizeFeatures={{Size=8.5-},{Size=6-8.5,Font=latinmode -rn-math.otf,Style=MathScript},{Size=-6,Font=latinmodern-math.otf,Style=MathScri -ptScript}},BoldFont={latinmodern-math.otf},ScaleAgain=1.0001,FontAdjustment={\f -ontdimen -(fontspec) 8\font =6.77pt\relax \fontdimen 9\font =3.94pt\relax -(fontspec) \fontdimen 10\font =4.44pt\relax \fontdimen 11\font -(fontspec) =6.86pt\relax \fontdimen 12\font =3.45pt\relax -(fontspec) \fontdimen 13\font =3.63pt\relax \fontdimen 14\font -(fontspec) =3.63pt\relax \fontdimen 15\font =2.89pt\relax -(fontspec) \fontdimen 16\font =2.47pt\relax \fontdimen 17\font -(fontspec) =2.47pt\relax \fontdimen 18\font =2.5pt\relax -(fontspec) \fontdimen 19\font =2.0pt\relax \fontdimen 22\font -(fontspec) =2.5pt\relax \fontdimen 20\font =0pt\relax \fontdimen -(fontspec) 21\font =0pt\relax }]. -(fontspec) -(fontspec) This font family consists of the following NFSS -(fontspec) series/shapes: -(fontspec) -(fontspec) - 'normal' (m/n) with NFSS spec.: -(fontspec) <8.5->s*[1.000096459334209]"[latinmodern-math.otf]/OT:sc -ript=math;language=dflt;"<6-8.5>s*[1.000096459334209]"[latinmodern-math.otf]/OT -:script=math;language=dflt;+ssty=0;"<-6>s*[1.000096459334209]"[latinmodern-math -.otf]/OT:script=math;language=dflt;+ssty=1;" -(fontspec) - 'small caps' (m/sc) with NFSS spec.: -(fontspec) and font adjustment code: -(fontspec) \fontdimen 8\font =6.77pt\relax \fontdimen 9\font -(fontspec) =3.94pt\relax \fontdimen 10\font =4.44pt\relax -(fontspec) \fontdimen 11\font =6.86pt\relax \fontdimen 12\font -(fontspec) =3.45pt\relax \fontdimen 13\font =3.63pt\relax -(fontspec) \fontdimen 14\font =3.63pt\relax \fontdimen 15\font -(fontspec) =2.89pt\relax \fontdimen 16\font =2.47pt\relax -(fontspec) \fontdimen 17\font =2.47pt\relax \fontdimen 18\font -(fontspec) =2.5pt\relax \fontdimen 19\font =2.0pt\relax \fontdimen -(fontspec) 22\font =2.5pt\relax \fontdimen 20\font =0pt\relax -(fontspec) \fontdimen 21\font =0pt\relax -(fontspec) - 'bold' (b/n) with NFSS spec.: -(fontspec) <->s*[1.000096459334209]"[latinmodern-math.otf]/OT:scrip -t=math;language=dflt;" -(fontspec) - 'bold small caps' (b/sc) with NFSS spec.: -(fontspec) and font adjustment code: -(fontspec) \fontdimen 8\font =6.77pt\relax \fontdimen 9\font -(fontspec) =3.94pt\relax \fontdimen 10\font =4.44pt\relax -(fontspec) \fontdimen 11\font =6.86pt\relax \fontdimen 12\font -(fontspec) =3.45pt\relax \fontdimen 13\font =3.63pt\relax -(fontspec) \fontdimen 14\font =3.63pt\relax \fontdimen 15\font -(fontspec) =2.89pt\relax \fontdimen 16\font =2.47pt\relax -(fontspec) \fontdimen 17\font =2.47pt\relax \fontdimen 18\font -(fontspec) =2.5pt\relax \fontdimen 19\font =2.0pt\relax \fontdimen -(fontspec) 22\font =2.5pt\relax \fontdimen 20\font =0pt\relax -(fontspec) \fontdimen 21\font =0pt\relax - -LaTeX Font Info: Encoding `OMS' has changed to `TU' for symbol font -(Font) `symbols' in the math version `normal' on input line 139. -LaTeX Font Info: Overwriting symbol font `symbols' in version `normal' -(Font) OMS/lmsy/m/n --> TU/latinmodern-math.otf(2)/m/n on inpu -t line 139. -LaTeX Font Info: Encoding `OMS' has changed to `TU' for symbol font -(Font) `symbols' in the math version `bold' on input line 139. -LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' -(Font) OMS/lmsy/b/n --> TU/latinmodern-math.otf(2)/b/n on inpu -t line 139. - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9998964600422715. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9998964600422715. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9998964600422715. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9998964600422715. - - -Package fontspec Info: latinmodern-math scale = 0.9999964596882403. - - -Package fontspec Info: latinmodern-math scale = 0.9998964600422715. - - -Package fontspec Info: Font family 'latinmodern-math.otf(3)' created for font -(fontspec) 'latinmodern-math.otf' with options -(fontspec) [Scale=MatchLowercase,BoldItalicFont={},ItalicFont={},Sm -allCapsFont={},Script=Math,SizeFeatures={{Size=8.5-},{Size=6-8.5,Font=latinmode -rn-math.otf,Style=MathScript},{Size=-6,Font=latinmodern-math.otf,Style=MathScri -ptScript}},BoldFont={latinmodern-math.otf},ScaleAgain=0.9999,FontAdjustment={\f -ontdimen -(fontspec) 8\font =0.4pt\relax \fontdimen 9\font =2.0pt\relax -(fontspec) \fontdimen 10\font =1.67pt\relax \fontdimen 11\font -(fontspec) =1.11pt\relax \fontdimen 12\font =6.0pt\relax -(fontspec) \fontdimen 13\font =0pt\relax }]. -(fontspec) -(fontspec) This font family consists of the following NFSS -(fontspec) series/shapes: -(fontspec) -(fontspec) - 'normal' (m/n) with NFSS spec.: -(fontspec) <8.5->s*[0.9998964600422715]"[latinmodern-math.otf]/OT:s -cript=math;language=dflt;"<6-8.5>s*[0.9998964600422715]"[latinmodern-math.otf]/ -OT:script=math;language=dflt;+ssty=0;"<-6>s*[0.9998964600422715]"[latinmodern-m -ath.otf]/OT:script=math;language=dflt;+ssty=1;" -(fontspec) - 'small caps' (m/sc) with NFSS spec.: -(fontspec) and font adjustment code: -(fontspec) \fontdimen 8\font =0.4pt\relax \fontdimen 9\font -(fontspec) =2.0pt\relax \fontdimen 10\font =1.67pt\relax -(fontspec) \fontdimen 11\font =1.11pt\relax \fontdimen 12\font -(fontspec) =6.0pt\relax \fontdimen 13\font =0pt\relax -(fontspec) - 'bold' (b/n) with NFSS spec.: -(fontspec) <->s*[0.9998964600422715]"[latinmodern-math.otf]/OT:scri -pt=math;language=dflt;" -(fontspec) - 'bold small caps' (b/sc) with NFSS spec.: -(fontspec) and font adjustment code: -(fontspec) \fontdimen 8\font =0.4pt\relax \fontdimen 9\font -(fontspec) =2.0pt\relax \fontdimen 10\font =1.67pt\relax -(fontspec) \fontdimen 11\font =1.11pt\relax \fontdimen 12\font -(fontspec) =6.0pt\relax \fontdimen 13\font =0pt\relax - -LaTeX Font Info: Encoding `OMX' has changed to `TU' for symbol font -(Font) `largesymbols' in the math version `normal' on input line 1 -39. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal' -(Font) OMX/lmex/m/n --> TU/latinmodern-math.otf(3)/m/n on inpu -t line 139. -LaTeX Font Info: Encoding `OMX' has changed to `TU' for symbol font -(Font) `largesymbols' in the math version `bold' on input line 139 -. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' -(Font) OMX/lmex/m/n --> TU/latinmodern-math.otf(3)/b/n on inpu -t line 139. -LaTeX Info: Redefining \microtypecontext on input line 139. -Package microtype Info: Applying patch `item' on input line 139. -Package microtype Info: Applying patch `toc' on input line 139. -Package microtype Info: Applying patch `eqnum' on input line 139. -Package microtype Info: Applying patch `footnote' on input line 139. -Package microtype Info: Applying patch `verbatim' on input line 139. -Package microtype Info: Character protrusion enabled (level 2). -Package microtype Info: Using protrusion set `basicmath'. -Package microtype Info: No adjustment of tracking. -Package microtype Info: No adjustment of spacing. -Package microtype Info: No adjustment of kerning. - -(/usr/local/texlive/2023/texmf-dist/tex/latex/microtype/mt-LatinModernRoman.cfg -File: mt-LatinModernRoman.cfg 2021/02/21 v1.1 microtype config. file: Latin Mod -ern Roman (RS) -) -Package hyperref Info: Link coloring OFF on input line 139. - -Package hyperref Warning: Rerun to get /PageLabels entry. - -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(1)/m/n' will be -(Font) scaled to size 12.0pt on input line 141. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(1)/m/n' will be -(Font) scaled to size 8.0pt on input line 141. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(1)/m/n' will be -(Font) scaled to size 6.0pt on input line 141. -LaTeX Font Info: Trying to load font information for OML+lmm on input line 1 -41. -(/usr/local/texlive/2023/texmf-dist/tex/latex/lm/omllmm.fd -File: omllmm.fd 2015/05/01 v1.6.1 Font defs for Latin Modern -) -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be -(Font) scaled to size 12.0011pt on input line 141. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be -(Font) scaled to size 8.00073pt on input line 141. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be -(Font) scaled to size 6.00055pt on input line 141. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be -(Font) scaled to size 11.99872pt on input line 141. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be -(Font) scaled to size 7.99915pt on input line 141. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be -(Font) scaled to size 5.99936pt on input line 141. -LaTeX Font Info: Trying to load font information for U+msa on input line 141 -. -(/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsa.fd -File: umsa.fd 2013/01/14 v3.01 AMS symbols A -) (/usr/local/texlive/2023/texmf-dist/tex/latex/microtype/mt-msa.cfg -File: mt-msa.cfg 2006/02/04 v1.1 microtype config. file: AMS symbols (a) (RS) -) -LaTeX Font Info: Trying to load font information for U+msb on input line 141 -. -(/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsb.fd -File: umsb.fd 2013/01/14 v3.01 AMS symbols B -) (/usr/local/texlive/2023/texmf-dist/tex/latex/microtype/mt-msb.cfg -File: mt-msb.cfg 2005/06/01 v1.0 microtype config. file: AMS symbols (b) (RS) -) [1 - - -] [2 - -] -No file Functiona_Enrichment.toc. -\tf@toc=\write4 -\openout4 = `Functiona_Enrichment.toc'. - -[3] [4 - -] -Chapter 1. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(1)/m/n' will be -(Font) scaled to size 7.0pt on input line 160. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(1)/m/n' will be -(Font) scaled to size 5.0pt on input line 160. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be -(Font) scaled to size 10.00092pt on input line 160. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be -(Font) scaled to size 7.00064pt on input line 160. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be -(Font) scaled to size 5.00046pt on input line 160. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be -(Font) scaled to size 9.99893pt on input line 160. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be -(Font) scaled to size 6.99925pt on input line 160. -LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be -(Font) scaled to size 4.99947pt on input line 160. -[5] [6] -Chapter 2. -[7 - -] [8] [9] [10] -Chapter 3. - -Underfull \hbox (badness 2027) in paragraph at lines 376--377 -[]\TU/lmr/m/n/10 Functional enrichment analysis provides a solution by organisi -ng these - [] - -[11 - -] [12] [13] -File: images/fea_types.jpg Graphic file (type bmp) - -[14] [15] [16] -File: images/go_structure.png Graphic file (type bmp) - -[17] [18] -File: images/NOTCH_signaling_pathway_kegg.png Graphic file (type bmp) - -File: images/NOTCH_signaling_pathway_reactome.png Graphic file (type bmp) - -[19] - -! LaTeX Error: File `images/GSEA-homegraphic' not found. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.600 ...dth=1\linewidth]{images/GSEA-homegraphic} - -Here is how much of TeX's memory you used: - 21049 strings out of 476683 - 386618 string characters out of 5804047 - 1856018 words of memory out of 5000000 - 40938 multiletter control sequences out of 15000+600000 - 518844 words of font info for 86 fonts, out of 8000000 for 9000 - 1348 hyphenation exceptions out of 8191 - 86i,7n,121p,1017b,591s stack positions out of 10000i,1000n,20000p,200000b,200000s - -Output written on Functiona_Enrichment.pdf (19 pages). diff --git a/Functiona_Enrichment.pdf b/Functiona_Enrichment.pdf deleted file mode 100644 index d80fce6..0000000 Binary files a/Functiona_Enrichment.pdf and /dev/null differ diff --git a/Functiona_Enrichment.tex b/Functiona_Enrichment.tex deleted file mode 100644 index 5485d96..0000000 --- a/Functiona_Enrichment.tex +++ /dev/null @@ -1,2003 +0,0 @@ -% Options for packages loaded elsewhere -\PassOptionsToPackage{unicode}{hyperref} -\PassOptionsToPackage{hyphens}{url} -% -\documentclass[ -]{book} -\usepackage{amsmath,amssymb} -\usepackage{iftex} -\ifPDFTeX - \usepackage[T1]{fontenc} - \usepackage[utf8]{inputenc} - \usepackage{textcomp} % provide euro and other symbols -\else % if luatex or xetex - \usepackage{unicode-math} % this also loads fontspec - \defaultfontfeatures{Scale=MatchLowercase} - \defaultfontfeatures[\rmfamily]{Ligatures=TeX,Scale=1} -\fi -\usepackage{lmodern} -\ifPDFTeX\else - % xetex/luatex font selection -\fi -% Use upquote if available, for straight quotes in verbatim environments -\IfFileExists{upquote.sty}{\usepackage{upquote}}{} -\IfFileExists{microtype.sty}{% use microtype if available - \usepackage[]{microtype} - \UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts -}{} -\makeatletter -\@ifundefined{KOMAClassName}{% if non-KOMA class - \IfFileExists{parskip.sty}{% - \usepackage{parskip} - }{% else - \setlength{\parindent}{0pt} - \setlength{\parskip}{6pt plus 2pt minus 1pt}} -}{% if KOMA class - \KOMAoptions{parskip=half}} -\makeatother -\usepackage{xcolor} -\usepackage{color} -\usepackage{fancyvrb} -\newcommand{\VerbBar}{|} -\newcommand{\VERB}{\Verb[commandchars=\\\{\}]} -\DefineVerbatimEnvironment{Highlighting}{Verbatim}{commandchars=\\\{\}} -% Add ',fontsize=\small' for more characters per line -\usepackage{framed} -\definecolor{shadecolor}{RGB}{248,248,248} -\newenvironment{Shaded}{\begin{snugshade}}{\end{snugshade}} -\newcommand{\AlertTok}[1]{\textcolor[rgb]{0.94,0.16,0.16}{#1}} -\newcommand{\AnnotationTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}} -\newcommand{\AttributeTok}[1]{\textcolor[rgb]{0.13,0.29,0.53}{#1}} -\newcommand{\BaseNTok}[1]{\textcolor[rgb]{0.00,0.00,0.81}{#1}} -\newcommand{\BuiltInTok}[1]{#1} -\newcommand{\CharTok}[1]{\textcolor[rgb]{0.31,0.60,0.02}{#1}} -\newcommand{\CommentTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textit{#1}}} -\newcommand{\CommentVarTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}} -\newcommand{\ConstantTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{#1}} -\newcommand{\ControlFlowTok}[1]{\textcolor[rgb]{0.13,0.29,0.53}{\textbf{#1}}} -\newcommand{\DataTypeTok}[1]{\textcolor[rgb]{0.13,0.29,0.53}{#1}} -\newcommand{\DecValTok}[1]{\textcolor[rgb]{0.00,0.00,0.81}{#1}} -\newcommand{\DocumentationTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}} -\newcommand{\ErrorTok}[1]{\textcolor[rgb]{0.64,0.00,0.00}{\textbf{#1}}} -\newcommand{\ExtensionTok}[1]{#1} -\newcommand{\FloatTok}[1]{\textcolor[rgb]{0.00,0.00,0.81}{#1}} -\newcommand{\FunctionTok}[1]{\textcolor[rgb]{0.13,0.29,0.53}{\textbf{#1}}} -\newcommand{\ImportTok}[1]{#1} -\newcommand{\InformationTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}} -\newcommand{\KeywordTok}[1]{\textcolor[rgb]{0.13,0.29,0.53}{\textbf{#1}}} -\newcommand{\NormalTok}[1]{#1} -\newcommand{\OperatorTok}[1]{\textcolor[rgb]{0.81,0.36,0.00}{\textbf{#1}}} -\newcommand{\OtherTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{#1}} -\newcommand{\PreprocessorTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textit{#1}}} -\newcommand{\RegionMarkerTok}[1]{#1} -\newcommand{\SpecialCharTok}[1]{\textcolor[rgb]{0.81,0.36,0.00}{\textbf{#1}}} -\newcommand{\SpecialStringTok}[1]{\textcolor[rgb]{0.31,0.60,0.02}{#1}} -\newcommand{\StringTok}[1]{\textcolor[rgb]{0.31,0.60,0.02}{#1}} -\newcommand{\VariableTok}[1]{\textcolor[rgb]{0.00,0.00,0.00}{#1}} -\newcommand{\VerbatimStringTok}[1]{\textcolor[rgb]{0.31,0.60,0.02}{#1}} -\newcommand{\WarningTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}} -\usepackage{longtable,booktabs,array} -\usepackage{calc} % for calculating minipage widths -% Correct order of tables after \paragraph or \subparagraph -\usepackage{etoolbox} -\makeatletter -\patchcmd\longtable{\par}{\if@noskipsec\mbox{}\fi\par}{}{} -\makeatother -% Allow footnotes in longtable head/foot -\IfFileExists{footnotehyper.sty}{\usepackage{footnotehyper}}{\usepackage{footnote}} -\makesavenoteenv{longtable} -\usepackage{graphicx} -\makeatletter -\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi} -\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi} -\makeatother -% Scale images if necessary, so that they will not overflow the page -% margins by default, and it is still possible to overwrite the defaults -% using explicit options in \includegraphics[width, height, ...]{} -\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio} -% Set default figure placement to htbp -\makeatletter -\def\fps@figure{htbp} -\makeatother -\setlength{\emergencystretch}{3em} % prevent overfull lines -\providecommand{\tightlist}{% - \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}} -\setcounter{secnumdepth}{5} -\usepackage{booktabs} -\usepackage{booktabs} -\usepackage{longtable} -\usepackage{array} -\usepackage{multirow} -\usepackage{wrapfig} -\usepackage{float} -\usepackage{colortbl} -\usepackage{pdflscape} -\usepackage{tabu} -\usepackage{threeparttable} -\usepackage{threeparttablex} -\usepackage[normalem]{ulem} -\usepackage{makecell} -\usepackage{xcolor} -\ifLuaTeX - \usepackage{selnolig} % disable illegal ligatures -\fi -\usepackage[]{natbib} -\bibliographystyle{plainnat} -\usepackage{bookmark} -\IfFileExists{xurl.sty}{\usepackage{xurl}}{} % add URL line breaks if available -\urlstyle{same} -\hypersetup{ - pdftitle={Functional Enrichment Workshop}, - pdfauthor={Monash Genomics and Bioinformatics Platform (MGBP)}, - hidelinks, - pdfcreator={LaTeX via pandoc}} - -\title{Functional Enrichment Workshop} -\author{Monash Genomics and Bioinformatics Platform (MGBP)} -\date{{``November 10, 2025''}} - -\begin{document} -\maketitle - -{ -\setcounter{tocdepth}{1} -\tableofcontents -} -\chapter{Functional Enrichment Workshop}\label{functional-enrichment-workshop} - -\textbf{Welcome to the Functional Enrichment Workshop!} This resource is designed to guide you through the process of performing functional enrichment analysis using a variety of web-based tools. - -\subsection{Instructors}\label{instructors} - -\begin{itemize} -\tightlist -\item - \textbf{Hossein V Kahrood} - - \begin{itemize} - \tightlist - \item - \href{mailto:hossein.valipourkahrood@monash.edu}{\nolinkurl{hossein.valipourkahrood@monash.edu}} - \end{itemize} -\item - \textbf{Giulia Iacono} - - \begin{itemize} - \tightlist - \item - \href{mailto:giulia.iacono1@monash.edu}{\nolinkurl{giulia.iacono1@monash.edu}} - \end{itemize} -\item - \textbf{Stuart Archer} - - \begin{itemize} - \tightlist - \item - \href{mailto:stuart.archer@monash.edu}{\nolinkurl{stuart.archer@monash.edu}} - \end{itemize} -\end{itemize} - -\subsection{Important Links}\label{important-links} - -\begin{itemize} -\tightlist -\item - \textbf{Workshop Page:} \href{https://monashbioinformaticsplatform.github.io/Functional_Enrichment_Online_Tools/}{Functional Enrichment - Web-based Tools} -\item - \textbf{Related Publication:} \href{https://link.springer.com/article/10.1007\%2Fs10571-016-0403-y}{NeuroMolecular Medicine Article} -\item - \textbf{Degust Tool:} \href{https://degust.erc.monash.edu/degust/compare.html?code=5b2c7805ab8f8c5f2dc8c72e61b049b0\#/?plot=mds}{Degust Comparative Analysis} -\end{itemize} - -\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} - -\subsection{Getting Started}\label{getting-started} - -To begin, we recommend reviewing the \href{https://monashbioinformaticsplatform.github.io/Functional_Enrichment_Online_Tools/}{workshop page} for an overview of the content and tools covered. This workshop is structured to progressively build your skills, starting with the basics of functional enrichment analysis and moving towards more complex applications. - -Happy learning! - -\chapter{Overview}\label{overview} - -\section{Functional Analysis of -Omics Data}\label{functional-analysis-of--omics-data} - -\subsection{General Information}\label{general-information} - -The workshop covers the bioinformatics concepts and tools for interpreting a gene list using Gene Ontology and pathway information. The workshop focuses on the principles and concepts required for analysing and conducting functional and pathway analyses on a gene list from any organism, although the focus will be on human and model eukaryotic organisms. - -\subsection{Course Objectives}\label{course-objectives} - -Participants will gain practical experience and skills to be able to: - -\begin{itemize} -\tightlist -\item - Understand basic concepts of functional enrichment analysis; -\item - Interpret enrichment analysis results; -\item - Gain systems perspective of gene functions; -\item - Obtain more information about a gene list; -\item - Discover which pathways are enriched in a gene list (and use this information for hypothesis generation); -\item - Predict gene function and extend a gene list; -\item - Follow the workflow after the workshop to conduct their own analyses. -\end{itemize} - -\subsection{Target Audience}\label{target-audience} - -This workshop is intended for biologists working with `-Omics data' (e.g., RNA-seq, protein expression), who are interested in interpreting large gene/protein lists resulting from their experiments. - -\subsection{Setup Requirements}\label{setup-requirements} - -The workshop will be held \textbf{in person}. Participants are encouraged to bring a \textbf{laptop}; however, \textbf{no software installation is necessary}. - -Workshop materials and relevant links can be found on the \href{https://monashbioinformaticsplatform.github.io/Functional_Enrichment_Online_Tools/resources.html}{\textbf{Resources}} page. - -BYO coffee :) - -\subsection{Schedule}\label{schedule} - -Instructor - -Activity - -Time (mins) - -Start - -End - -LP - -Welcome and housekeeping - -10 - -10:00 AM - -10:10 AM - -HK - -Introduction to functional enrichment analysis - -30 - -10:10 AM - -10:40 AM - -HK - -Data acquisition \& filtering gene list - -15 - -10:40 AM - -10:55 AM - -HK - -Interactive Calculator - -15 - -10:55 AM - -11:10 AM - -Morning break - -10 - -11:10 AM - -11:20 AM - -HK - -gProfiler - -40 - -11:20 AM - -12:00 PM - -GI - -STRING - -40 - -12:00 PM - -12:40 PM - -Lunch break - -20 - -12:40 PM - -01:00 PM - -GI - -GSEA - -60 - -01:00 PM - -02:00 PM - -SA - -Reactome - -60 - -02:00 PM - -03:00 PM - -\subsection{Abbreviations}\label{abbreviations} - -\begin{itemize} -\tightlist -\item - \textbf{LP}: Laura Perlaza-Jiménez -\item - \textbf{HK}: Hossein Valipour Kahrood -\item - \textbf{GI}: Giulia Iacono -\item - \textbf{SA}: Stuart Archer -\end{itemize} - -\chapter{Introduction}\label{introduction} - -\section{Functional enrichment analysis}\label{functional-enrichment-analysis} - -Functional enrichment analysis (FEA) refers to a set of computational approaches designed to derive biological meaning from lists of biomolecules, such as genes, proteins, or metabolites. - -By focusing on the biological significance of biomolecular changes, functional enrichment analysis enables researchers to make sense of complex high-throughput data from large-scale studies, revealing the key cellular processes and signaling pathways involved in health and disease states. - -\subsection{Why Is It Important?}\label{why-is-it-important} - -Large-scale omics studies often yield vast datasets with hundreds or thousands of significantly regulated biomolecules. Manually investigating each feature, such as individual genes or proteins, can be overwhelming and inefficient. - -Functional enrichment analysis provides a solution by organising these biomolecules into meaningful categories, allowing for the identification of overarching biological patterns and mechanisms. This helps reduce data complexity and uncovers higher-level biological insights, such as discovering critical pathways involved in disease progression or identifying potential therapeutic targets. Thus, enrichment analysis is a crucial step in the interpretation of high-dimensional omics data, transforming lists of molecular entities into actionable biological knowledge. - -\subsection{When to Use Functional Enrichment Analysis?}\label{when-to-use-functional-enrichment-analysis} - -Functional enrichment analysis is typically applied after conducting a differential expression analysis or other comparative analyses in omics studies. This step is essential when attempting to derive biological insights from large lists of biomolecules that exhibit significant changes in expression, modification, or abundance between experimental groups. Below are common scenarios where functional enrichment analysis is particularly valuable: - -\begin{itemize} -\tightlist -\item - Transcriptomics (eg high-fat diet vs.~low-fat diet) -\item - Proteomics (eg tumor tissue vs.~healthy tissue) -\item - Metabolomics (eg diabetic vs.~non-diabetic patients) -\item - Lipidomics (eg disease vs.~healthy state) -\item - Epigenomics (eg smokers vs.~non-smokers) -\item - \ldots{} -\end{itemize} - -\subsection{What Are the Input Data?}\label{what-are-the-input-data} - -Functional enrichment analysis relies on carefully prepared input data derived from an -omics study. The data inputs typically consist of various components depending on the type of the enrichment analysis. These are list of features, ranked list, background set, gene sets and pathway topology. - -\subsection{Synonyms}\label{synonyms} - -It's important to note that the term ``functional enrichment analysis'' is often used in different ways across the field. The diversity in terminology can sometimes cause confusion, as the same concept is referred to by various synonymous terms. These include: - -\begin{itemize} -\tightlist -\item - Enrichment analysis -\item - Pathway analysis -\item - Pathway enrichment analysis -\item - Functional annotation analysis -\item - Annotation enrichment analysis -\item - Functional pathway analysis -\item - Functional enrichment analysis -\item - \ldots{} -\end{itemize} - -\section{Concepts}\label{concepts} - -Here we will explore key concepts that are essential to perform and interpret enrichment analysis, including gene lists, background sets, p-values, false discovery rates, and the role of annotation databases. These concepts form the foundation for making sense of the biological significance of experimental findings. - -\begin{itemize} -\item - {Gene List:} - A gene list is the collection of genes (or proteins) that are of particular interest in a biological experiment. This list typically arises from high-throughput experiments such as transcriptomics, proteomics, or genomics, where genes are differentially expressed, mutated, or otherwise identified as significant. In functional enrichment analysis, the gene list is used to assess whether certain biological pathways, gene ontologies, or functions are statistically overrepresented compared to a reference or background set. -\item - {Background Set:} - The background set, also referred to as the ``reference set,'' is the complete set of genes or proteins against which the gene list is compared. This background typically includes all genes that were analysed in the experiment (e.g., all genes in a microarray or RNA-seq dataset). The choice of background is crucial because it influences the statistical significance of the enrichment. For instance, using a background that includes only expressed genes will result in a different outcome compared to using all known genes in the genome. -\item - {P-value:} - The p-value is a measure of the probability that the observed result occurred by chance. At the feature level, it indicates whether a particular gene or protein shows significant differences (e.g., in expression or mutation) when compared to a control or baseline. For example, a p-value of 0.01 for a gene means there's only a 1\% chance that the observed change in that gene is due to random variation. At the enrichment level, the p-value evaluates whether the overlap between the identified genes and a particular biological term (such as a pathway) occurred by chance. A pathway with a p-value of 0.001, for instance, suggests that there's only a 0.1\% probability that the pathway's association with the gene list occurred randomly. -\item - {False Discovery Rate (FDR):} - The FDR corrects for multiple comparisons, as many tests are conducted both at the feature and enrichment levels. When analysing thousands of genes and numerous pathways, the likelihood of false positives increases, so FDR adjusts for this by controlling the proportion of false positives among the significant results. For example, an FDR threshold of 0.05 means that no more than 5\% of the features (e.g., genes) or enriched terms (e.g., pathways) identified as significant are expected to be false positives. -\item - {Regulation:} - In the context of enrichment analysis, regulation refers to the upregulation or downregulation of genes. Many enrichment tools allow users to analyse gene lists with regulation status included. This means pathways or biological functions may be enriched with genes that are specifically upregulated (increased activity) or downregulated (decreased activity). This additional layer of information helps in understanding whether certain pathways or processes are being activated or suppressed in the condition of interest. -\item - {ID Mapping:} - ID mapping refers to the process of converting different types of gene or protein identifiers into a unified format. This is necessary because different databases and platforms may use different types of identifiers (e.g., gene symbols, Entrez IDs, Ensembl IDs, Uniprot IDs). Accurate ID mapping ensures that the gene list aligns with the annotation database being used in the analysis. Tools and databases often provide built-in options for ID conversion to facilitate this step. -\item - {Annotation Databases:} - An annotation database is a curated collection of biological data that links genes or proteins to functional information such as pathways, molecular functions, cellular components, and biological processes. Examples include Gene Ontology (GO), KEGG, Reactome, and MSigDB. These databases provide the functional terms or pathways that are tested for enrichment. The choice of annotation database can significantly influence the results, as different databases may focus on different types of biological information or contain slightly different gene-function relationships. -\end{itemize} - -\section{Types of Enrichment Analysis}\label{types-of-enrichment-analysis} - -Khatri et al.~(2012) nicely explained different types of enrichment analysis, as shown below. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/fea_types} - -} - -\caption{Types of of functional enrichment analysis}\label{fig:unnamed-chunk-5} -\end{figure} - -\emph{Source: Figure adapted from Khatri P, Sirota M, Butte AJ. Ten years of pathway analysis: current approaches and outstanding challenges. PLoS Comput Biol. 2012;8(2):e1002375.} - -\subsection{Over Representation Analysis (ORA)}\label{over-representation-analysis-ora} - -Over Representation Analysis (ORA) is one of the simplest and most widely used methods for functional enrichment analysis. ORA aims to determine whether specific biological categories (e.g., pathways, Gene Ontology terms) are statistically overrepresented in a given list of features (like genes or proteins) compared to a background or reference set. This method focuses on counting the number of features from the list that are associated with a specific category and comparing this count to what would be expected by chance. - -\subsubsection{Input Data}\label{input-data} - -\begin{itemize} -\item - {List of Features:} This refers to the subset of biomolecules identified as significantly regulated or altered in the study. Features might include genes, proteins, lipids, or other biomolecules, depending on the type of -omics data. -\item - {Background Set:} The background set, or universe, consists of all the features that were measured in the study or a defined subset of the total genome, proteome, or metabolome being studied. The background is critical for enrichment analysis because it provides the context against which the significance of feature enrichment is assessed. -\end{itemize} - -\subsubsection{Workflow}\label{workflow} - -{How it works}: ORA uses a predefined feature list (e.g., from differentially expressed genes), calculates the number of features in the list that belong to a certain category (e.g., a pathway), and tests whether this number is significantly higher than expected using statistical tests like the hypergeometric test or Fisher's exact test. - -{Strengths}: Simple and easy to implement. Works well with a predefined list of significant features. - -{Limitations}: ORA does not take into account the full range of feature expression values and can miss subtle changes across a broader set of features. It relies heavily on selecting a predefined cut-off to create the feature list, which can be subjective. - -\subsection{Gene Set Enrichment Analysis (GSEA)}\label{gene-set-enrichment-analysis-gsea} - -Gene Set Enrichment Analysis (GSEA) also known as Functional Class Scoring (FCS) is a more sophisticated method that avoids the need to define a strict cut-off for selecting a list of significant features. Instead of using a discrete list of differentially expressed features, GSEA analyses ranked feature expression data. It evaluates whether predefined gene sets (such as pathways or functional categories) are enriched at the top or bottom of the ranked list, capturing subtle but coordinated changes in gene expression. - -\subsubsection{Input Data}\label{input-data-1} - -\begin{itemize} -\item - {Ranked List:} In some enrichment methods, such as Gene Set Enrichment Analysis (GSEA), a ranked list is used instead of a simple feature list. The ranking is typically based on a continuous metric such as the magnitude of gene expression changes or some sort of statistical test output. This ranked list helps prioritise features that exhibit the strongest biological relevance and facilitates more nuanced enrichment analyses that consider the direction and strength of biomolecular changes. -\item - {Gene Sets:} This refers to predefined groups of genes that share a common biological property, such as involvement in a specific biological pathway, functional category, or regulatory process. The most commonly used format for gene sets in MSigDB is the GMT format. This format is simple, human-readable, and widely supported by various GSEA tools. -\end{itemize} - -\subsubsection{Workflow}\label{workflow-1} - -{How it works}: GSEA first ranks all genes in the dataset according to their differential expression levels (e.g., from a control to a condition). Then, for each predefined gene set, it calculates an enrichment score (ES) that reflects the concentration of the gene set members at the extremes of the ranked list. Statistical significance is assessed through permutation testing, and the False Discovery Rate (FDR) is used to correct for multiple comparisons. - -{Strengths}: GSEA avoids arbitrary thresholds for feature selection and can detect coordinated changes across sets of genes, even if individual genes within the set do not show significant differential expression. - -{Limitations}: GSEA may miss smaller pathways or functional categories if their features are not highly ranked or uniformly expressed. It is also more computationally intensive than ORA. - -\subsection{Pathway Topology (PT)-Based Enrichment}\label{pathway-topology-pt-based-enrichment} - -Pathway Topology (PT)-based enrichment analysis extends beyond merely counting features and instead incorporates the topological structure of biological pathways. This method evaluates not only which features are part of a pathway but also their position and interactions within the pathway. By considering the connectivity and interaction strength between features, PT-based approaches provide a more biologically meaningful interpretation of pathway activation or suppression. - -\subsubsection{Input Data}\label{input-data-2} - -\begin{itemize} -\tightlist -\item - {List of Features or Ranked List:} Already explained. -\item - {Pathway Topology:} This refers to the structure of a biological pathway, which includes detailed information about the interactions and relationships between gene products (such as proteins or RNAs) within a pathway. -\end{itemize} - -\subsubsection{Workflow}\label{workflow-2} - -{How it works}: PT-based methods take into account the direction and magnitude of feature expression changes, as well as the structure of pathways (e.g., signaling cascades, metabolic pathways). They consider how biomolecule products interact with one another and the specific roles of each gene within the pathway. Topological factors like the number of connections a gene has or its centrality in the pathway are considered when assessing the enrichment. - -{Strengths}: Provides more biologically relevant insights by considering gene-gene interactions and the position of each gene within a pathway. It is particularly useful for complex pathways where the roles of genes differ based on their interactions with others. - -{Limitations}: Requires more detailed pathway annotations and higher computational complexity. Pathway databases may not have complete or accurate topological information for all pathways, limiting the analysis for certain datasets. - -PT-based enrichment will be covered in this workshop: -Given the focus of this workshop on more widely used and accessible enrichment methods, PT-based analysis will not be covered for its limited practical applications (primarily due to the insufficient availability of comprehensive and well-annotated pathway topology databases). Instead, we will focus on methods like ORA and GSEA, which are better supported by existing databases and easier to apply in typical omics studies. However, participants are encouraged to explore PT-based enrichment in the future as database resources improve. - -\section{Annotation Databses}\label{annotation-databses} - -Functional annotation databases are curated collections of biological data that systematically categorise and describe the functions, roles, interactions, and pathways of genes, proteins, or other biological molecules, enabling researchers to link experimental data to biological knowledge. - -\subsection{\texorpdfstring{\href{https://geneontology.org/}{GO: Gene Ontology}}{GO: Gene Ontology}}\label{go-gene-ontology} - -``The goal of the Gene Ontology Consortium is to produce a dynamic, controlled vocabulary that can be applied to all eukaryotes even as knowledge of gene and protein roles in cells is accumulating and changing.'' (Ashburner et al.~2000) - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/go_structure} - -} - -\caption{The structure of gene ontology.}\label{fig:unnamed-chunk-6} -\end{figure} - -\emph{Imagen source \href{https://link.springer.com/book/10.1007/978-1-4939-3743-1}{The Gene Ontology Handbook}} - -Gene Ontology (GO) is a structured framework used to describe the roles of genes and their products across all living organisms. It provides a controlled vocabulary that allows for consistent descriptions of gene functions, biological processes, and cellular locations, facilitating computational analysis and integration of biological data across different species. GO's structure comprises three main aspects: - -{1. Molecular Function:} -In the Gene Ontology (GO), molecular function refers to the specific biochemical activity that a gene product (such as a protein or RNA) performs. This activity typically involves direct physical interactions with other molecular entities, such as catalysis or binding. These functions are described based on their biochemical roles (e.g., enzyme activity) and their contribution as components within larger biological systems. For instance, protein kinase activity involves the phosphorylation of proteins, which is a specific molecular function. In GO, molecular function is concerned with the direct action of gene products, whether in terms of biochemical interactions or roles in larger biological systems. - -{2. Biological Process:} -Biological processes represent the larger objectives that gene products contribute to in an organism, often described by the outcome or result of a series of molecular events. These processes are broader, coordinated sequences of molecular activities that achieve a biological objective, such as cell division or DNA replication. A biological process in GO can encompass anything from simple enzymatic actions to complex, regulated systems like embryonic development or immune response. GO annotations aim to associate gene products not only with the processes they directly contribute to but also with processes they regulate or enable. - -{3. Cellular Component:} -This aspect of GO refers to the specific location within a cell where a gene product operates. Cellular components are described relative to structures within the cell, such as the mitochondrion or plasma membrane, and reflect where molecular functions occur as part of broader biological processes. These locations are vital to understanding where molecular activities take place, as cellular compartmentalisation often influences the function and regulation of gene products. Unlike molecular function and biological process, cellular components refer more to cellular anatomy, specifying where gene products perform their roles during biological activities. - -In practice, GO terms and annotations allow researchers to describe gene functions in a standardised way, helping in tasks such as gene function prediction, functional profiling, and comparing genes across species. GO's hierarchical organisation of terms provides a rich framework to model the complexity of biological systems and facilitates the computational study of gene functions. - -\subsection{\texorpdfstring{\href{https://www.genome.jp/kegg/}{KEGG: Kyoto Encyclopedia of Genes and Genomes}}{KEGG: Kyoto Encyclopedia of Genes and Genomes}}\label{kegg-kyoto-encyclopedia-of-genes-and-genomes} - -Kyoto Encyclopedia of Genes and Genomes (KEGG) is a curated database that integrates genomic, chemical, and systemic information to represent biological systems and their interactions. It allows users to map molecular data (such as genes, proteins, and small molecules) to biological pathways, enabling a better understanding of how different components interact within an organism. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/NOTCH_signaling_pathway_kegg} - -} - -\caption{NOTCH Signaling Pathway by KEGG}\label{fig:unnamed-chunk-7} -\end{figure} - -\subsection{\texorpdfstring{\href{https://reactome.org/}{Reactome}}{Reactome}}\label{reactome} - -Reactome pathway knowledgebase is an open-access, manually curated database that captures molecular details of biological processes such as signal transduction, DNA replication, metabolism, and more, using a consistent data model across different domains of biology. This makes it particularly well-suited for functional enrichment analysis, where understanding the relationships between gene expression data and biological pathways is crucial. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/NOTCH_signaling_pathway_reactome} - -} - -\caption{NOTCH Signaling Pathway by Reactome}\label{fig:unnamed-chunk-8} -\end{figure} - -\subsection{\texorpdfstring{\href{https://www.gsea-msigdb.org/}{MSigDB}}{MSigDB}}\label{msigdb} - -Molecular Signatures Database (MSigDB) is a comprehensive resource for gene set enrichment analysis. It offers a comprehensive collection of gene sets that represent biological processes, molecular pathways, and other biologically relevant information. MSigDB is integrated with the Gene Set Enrichment Analysis (GSEA) tool, which is commonly used to determine if predefined sets of genes show statistically significant differences between two biological states (e.g., diseased vs.~healthy samples). - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/GSEA-homegraphic} - -} - -\caption{GSEA Workflow}\label{fig:unnamed-chunk-9} -\end{figure} - -\section{Common Tools for Doing FEA}\label{common-tools-for-doing-fea} - -\chapter{Enrichment Statistics}\label{enrichment-statistics} - -Enrichment statistics are based on a contingency table, as shown below: - -..in term - -..not in term - -Total - -..in gene list - -30 - -270 - -300 - -..not in gene list (but in background) - -470 - -15230 - -15700 - -Total - -500 - -15500 - -16000 - -This is based on the 16,000 genes that were measured in your experiment. - -Note that some genes may not have been measured; these are excluded entirely from the calculations. -For example, there might have been an additional 5,000 genes (some of which could have been annotated with the term of interest), resulting in a total of \emph{21,250 annotated genes}. - -\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} - -\section{\texorpdfstring{{Fisher's Exact Test}}{Fisher's Exact Test}}\label{fishers-exact-test} - -Fisher's Exact Test is a statistical test used to determine whether there are non-random associations between the proportions of two categorical variables. It calculates the exact probability of observing the given distribution of counts in a 2x2 contingency table, under the null hypothesis of no association between the variables. - -\begin{quote} -\emph{Note:} This is just a toy calculator for this training and is quite limited. You can also use some online tools like \href{https://www.socscistatistics.com/tests/fisher/default2.aspx}{Social Science Statistics} to play with. -\end{quote} - -\emph{Formula}: -\[P = \frac{(a + b)!(c + d)!(a + c)!(b + d)!}{a!b!c!d!N!}\] - -Where: - -\begin{itemize} -\item - \(a\), \(b\), \(c\), and \(d\) are the observed counts in the 2x2 contingency table. -\item - \(N\) is the total number of observations, \(N = a + b + c + d\). -\end{itemize} - -Given this contingency table: - -\begin{longtable}[]{@{}llll@{}} -\toprule\noalign{} -& Category 1 & Category 2 & Total \\ -\midrule\noalign{} -\endhead -\bottomrule\noalign{} -\endlastfoot -\textbf{Group 1} & \(a\) & \(b\) & \(a + b\) \\ -\textbf{Group 2} & \(c\) & \(d\) & \(c + d\) \\ -\textbf{Total} & \(a + c\) & \(b + d\) & \(a + b + c + d\) \\ -\end{longtable} - -R syntax - -\begin{Shaded} -\begin{Highlighting}[] -\NormalTok{a }\OtherTok{=} \DecValTok{30} -\NormalTok{b }\OtherTok{=} \DecValTok{270} -\NormalTok{c }\OtherTok{=} \DecValTok{470} -\NormalTok{d }\OtherTok{=} \DecValTok{15230} - -\NormalTok{data }\OtherTok{\textless{}{-}} \FunctionTok{matrix}\NormalTok{(}\FunctionTok{c}\NormalTok{(a, b, c, d), }\AttributeTok{nrow =} \DecValTok{2}\NormalTok{, }\AttributeTok{byrow =} \ConstantTok{TRUE}\NormalTok{)} - -\CommentTok{\# One{-}tailed test} -\FunctionTok{fisher.test}\NormalTok{(data, }\AttributeTok{alternative =} \StringTok{"g"}\NormalTok{) }\CommentTok{\# greater or "less"} -\end{Highlighting} -\end{Shaded} - -\section{\texorpdfstring{{Hypergeometric Test}}{Hypergeometric Test}}\label{hypergeometric-test} - -The hypergeometric test calculates the probability of observing the given number of genes from a specific category (e.g., a pathway) in the gene list (differentially expressed genes) by chance; it models the situation where you draw a sample (the gene list) from a finite population (the background of all genes), and success is defined as a gene being in the category (e.g., belonging to the pathway). - -\begin{quote} -\emph{Note:} Here is a tool by \href{https://stattrek.com/online-calculator/hypergeometric}{Stat Trek} to experiment with the hypergeometric test. -\end{quote} - -\emph{Formula:} -\[P(X = k) = \frac{\binom{K}{k} \binom{N - K}{n - k}}{\binom{N}{n}}\] -Where: - -\begin{itemize} -\item - \(k\) = Number of success items in the sample (overlap). -\item - \(n\) = Number of items in the sample (DE genes). -\item - \(K\) = Number of success items in the population (in term). -\item - \(N\) = Total number of items in the population (background). -\end{itemize} - -The parameters in our example: -k=30; n=300; K=500; N=16000; - -Where: - -\texttt{k−1} is the number of observed successes minus 1 (for the ``at least'' scenario). -Setting \texttt{lower.tail\ =\ FALSE} gives the probability of obtaining at least 𝑘 successes (right-tail). - -R syntax - -\begin{Shaded} -\begin{Highlighting}[] -\CommentTok{\# Observed value} -\NormalTok{k }\OtherTok{\textless{}{-}}\NormalTok{ a} -\NormalTok{n }\OtherTok{\textless{}{-}}\NormalTok{ a }\SpecialCharTok{+}\NormalTok{ b} -\NormalTok{K }\OtherTok{\textless{}{-}}\NormalTok{ a }\SpecialCharTok{+}\NormalTok{ c} -\NormalTok{N }\OtherTok{\textless{}{-}}\NormalTok{ a }\SpecialCharTok{+}\NormalTok{ b }\SpecialCharTok{+}\NormalTok{ c }\SpecialCharTok{+}\NormalTok{ d} - -\CommentTok{\# (P[X \textgreater{}= k])} -\FunctionTok{phyper}\NormalTok{(k }\SpecialCharTok{{-}} \DecValTok{1}\NormalTok{, K, N }\SpecialCharTok{{-}}\NormalTok{ K, n, }\AttributeTok{lower.tail =} \ConstantTok{FALSE}\NormalTok{)} -\end{Highlighting} -\end{Shaded} - -\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} - -\subsubsection*{}\label{section} -\addcontentsline{toc}{subsubsection}{} - -\section{Activity}\label{activity} - -\subsection*{\texorpdfstring{\textbf{Challenge:} Interactive Calculator}{Challenge: Interactive Calculator}}\label{challenge-interactive-calculator} -\addcontentsline{toc}{subsection}{\textbf{Challenge:} Interactive Calculator} - -\href{https://bioinformatics3.erc.monash.edu/rsconnect/content/241/}{\emph{Link to open toy enrichment calculator}}. - -This calculates enrichment for a single hypothetical gene list (e.g.~your RNA-seq differentially expressed gene-list) against a single hypothetical `term' (a set of interesting genes, e.g., synaptic signalling genes). It makes a Venn diagram and a wordy description of what is being tested. - -You can adjust various factors and see their effect on the enrichment p-values. - -\subsubsection*{}\label{section-1} -\addcontentsline{toc}{subsubsection}{} - -\subsection*{\texorpdfstring{\textbf{Questions}}{Questions}}\label{questions} -\addcontentsline{toc}{subsection}{\textbf{Questions}} - -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\item - If 24 of the 300 differentially expressed genes are annotated with the 500-gene term of interest. Is it significant at p=0.05? - - Show - - No, corrected pval=0.087 - - ~ -\item - What about with a smaller background of 5000 genes (e.g.~proteomic datasets)? - - Show - - Even less so - corrected pval=1 - - ~ -\item - Or, testing against a smaller database of terms; 2000 terms instead of 10000? With the original 16000 gene background. - - Show - - Yes, now corrected pval=0.017 - - ~ -\item - 19 out of 200 differentially expressed genes (9.5\%), need to hit for a 500-gene term (3.1\% of all genes) to be significant at (p=0.048). How many hits would be needed for a more specific 30-gene term? - - Show - - 5 hits - 2.5\% of the differentially expressed genes vs 0.19\% of all genes -\end{enumerate} - -\subsubsection*{}\label{section-2} -\addcontentsline{toc}{subsubsection}{} - -\section{\texorpdfstring{{Kolmogorov--Smirnov (KS)--like Test}}{Kolmogorov--Smirnov (KS)--like Test}}\label{kolmogorovsmirnov-kslike-test} - -The Kolmogorov--Smirnov (KS)--like test is used in Functional Class Scoring approaches such as Gene Set Enrichment Analysis (GSEA) to test whether genes from a predefined set are non-randomly distributed near the top or bottom of a ranked list of all genes. - -This test computes a running-sum statistic as it walks down the ranked list: - -\begin{itemize} -\item - The running sum increases when a gene in the set is encountered (weighted by the strength of its rank statistic). -\item - It decreases when a gene not in the set is encountered. -\item - The maximum deviation from zero is the enrichment score (ES). -\end{itemize} - -The significance of the observed ES is then estimated by \emph{permutation testing}, generating a null distribution to calculate p-values, followed by FDR correction for multiple comparisons. - -\emph{Formula:} - -According to \href{https://www.pnas.org/doi/full/10.1073/pnas.0506580102}{Subramanian et al.~(2005)}, the enrichment score is defined as: - -\[ -P_{\text{hit}}(S,i) = \sum_{\substack{g_j \in S \\ j \le i}} \frac{|r_j|^{p}}{N_R} -\] - -\[ -P_{\text{miss}}(S,i) = \sum_{\substack{g_j \notin S \\ j \le i}} \frac{1}{N - N_H} -\] - -\[ -\mathrm{ES}(S) = \max_i \big[ P_{\text{hit}}(i) - P_{\text{miss}}(i) \big] -\] - -Explanation of the terms: - -\begin{longtable}[]{@{} - >{\raggedright\arraybackslash}p{(\columnwidth - 2\tabcolsep) * \real{0.3918}} - >{\raggedright\arraybackslash}p{(\columnwidth - 2\tabcolsep) * \real{0.6082}}@{}} -\toprule\noalign{} -\begin{minipage}[b]{\linewidth}\raggedright -Symbol -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright -Meaning -\end{minipage} \\ -\midrule\noalign{} -\endhead -\bottomrule\noalign{} -\endlastfoot -\(S\) & The gene set being tested (e.g., pathway or GO term). \\ -\(L = \{ g_1, g_2, \dots, g_N \}\) & The ranked list of all genes, ordered by correlation with the phenotype. \\ -\(g_j\) & The j-th gene in the ranked list. \\ -\(r_j\) & The ranking metric for gene \(g_j\) (e.g., signal-to-noise ratio, t-statistic, or correlation). \\ -\(p\) & The weighting parameter (usually \(p = 1\) in standard GSEA). Higher \(p\) values emphasize genes with stronger correlations. \\ -\(N_H = |S|\) & The number of genes in the gene set \(S\). \\ -\(N\) & The total number of genes in the ranked list. \\ -\(N_R = \sum_{g_j \in S} |r_j|^p\) & The normalisation constant for the ``hits'' in the gene set. \\ -\(P_{\text{hit}}(i)\) & The cumulative fraction of genes in \(S\) found up to position \(i\). \\ -\(P_{\text{miss}}(i)\) & The cumulative fraction of genes not in \(S\) found up to position \(i\). \\ -\(\mathrm{ES}(S)\) & The enrichment score, i.e., the maximum deviation between \(P_{\text{hit}}(i)\) and \(P_{\text{miss}}(i)\). A positive ES indicates enrichment at the top of the ranked list; a negative ES indicates enrichment at the bottom. \\ -\end{longtable} - -\emph{(Adapted from Subramanian et al., 2005, Proc. Natl. Acad. Sci. U.S.A. 102:15545--15550.)} - -\chapter{Example Analysis}\label{example-analysis} - -\section{SH-SY5Y Differentiation}\label{sh-sy5y-differentiation} - -SH-SY5Y is a commonly used neuroblastoma cell line. -With appropriate treatment, it can be induced to differentiate into a `more neuronal' form. -Differentiated cells look quite different, growing thin neurites out from the body of the cell. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/shsy5ydiff} - -} - -\caption{Morphological analysis of differentiated SH-SY5Y cells.
At 6-DIV stage, the cells exposed to RA showed an elongated morphology as compared to basal medium (NT). Cells subsequently treated in NBM for 3 days became more polarised, exhibited several neurites and branches and acquired a neuron-like shape

Image is derived from Figure 4 (Pezzini et al. 2017).}\label{fig:unnamed-chunk-14} -\end{figure} - -\section{The Question: What Pathways Are Involved in SH-SY5Y Differentiation?}\label{the-question-what-pathways-are-involved-in-sh-sy5y-differentiation} - -In their paper \href{https://link.springer.com/article/10.1007\%2Fs10571-016-0403-y}{\emph{Transcriptomic Profiling Discloses Molecular and Cellular Events Related to Neuronal Differentiation in SH-SY5Y Neuroblastoma Cells}}, Pezzini et al.~induced neuronal differentiation of the SH-SY5Y neuroblastoma cell line and measured transcriptomic changes using RNA sequencing (Pezzini et al.~2017). During the 9-day differentiation protocol, SH-SY5Y cells were initially pre-differentiated in a retinoic acid (RA) medium for 6 days, followed by a 3-day treatment with a neurobasal medium (NBM) enriched with neurotrophic factors. Control cells, which were not treated (NT), were maintained under basal conditions and served as a comparison group. The authors then performed functional enrichment analysis on the differentially expressed genes. - -\section{The data : Differentially Expressed Genes}\label{the-data-differentially-expressed-genes} - -The example dataset for today is the RNA-seq differential expression results. - -They can be accessed via this \href{http://degust.erc.monash.edu/degust/compare.html?code=5b2c7805ab8f8c5f2dc8c72e61b049b0\#?plot=mds}{Degust} link: - -This dataset has been re-analysed from the published raw data using the Degust tool. - -\begin{quote} -\textbf{Note:} Other tools and approaches may produce slightly different-looking results, but generally you will end up with a table of genes containing some measure of statistical confidence. The methods for functional enrichment analysis should remain similar. -\end{quote} - -\chapter{Defining the Gene List}\label{defining-the-gene-list} - -Starting from the differential expression results \href{http://degust.erc.monash.edu/degust/compare.html?code=5b2c7805ab8f8c5f2dc8c72e61b049b0\#?plot=mds}{here}, how do we obtain a gene list for enrichment analysis? - -\section{Activities}\label{activities} - -Today's exercise follows the process of getting the differentially expressed gene list using Excel. You could use another spreadsheet program, or you may prefer using a programming language like R. - -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\item - Download the full table of data from either Degust or the CSV file here: - \href{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/data/Pezzini2016_SHSY5Ycelldiff_DE_table.csv}{Pezzini2016\_SHSY5Ycelldiff\_DE\_table.csv}. Import into Excel. -\item - How many genes are differentially expressed? In these results, the FDR column contains the corrected p-value, and the `differentiated' column shows the log₂ fold change of differentiated cells versus untreated cells (log₂(diff) -- log₂(undiff)); 0 indicates no change, 1 represents a doubling, and --1 a halving. - - \begin{itemize} - \item - Significant at 0.01? - \item - That's a particularly large number of genes - perhaps not unexpected, given how much the cells are changed in this experiment. How many significant genes also have 2-fold change in expression? - \item - For this workshop, get the genes with a FDR\textless0.01 and 2x fold change (\texttt{log2(4)}). Note - most experiments yield far less differential expression, but the difference between these two cell conditions is pretty extreme! Typically you would only filter at p\textless0.01 (and occasionally 2-fold change) - you might see tens to hundreds of results. However, this arbitrary threshold produces a more typical number of differentially expressed genes for downstream analysis. An alternative approach could be to take the top 500 genes. - \end{itemize} -\end{enumerate} - -Show - -There are 4923 differentially expressed genes, 2149 of which have a 2-fold change in expression. With the aggressive filtering, there are 792 genes left. - -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\setcounter{enumi}{2} -\tightlist -\item - How many genes are \emph{tested}? This is your background. -\end{enumerate} - -Show - -14420 genes tested. - -\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} - -\section{Common gotcha}\label{common-gotcha} - -Can you find SEPT4? This highlights how \href{https://genomebiology.biomedcentral.com/articles/10.1186/s13059-016-1044-7}{\emph{Gene name errors are widespread in the scientific literature}} - -You can't revert gene names automatically (try converting them to text!). You have to avoid this issue in the first place by importing gene columns as `text' in Excel. See the video from HUGO : \url{https://www.genenames.org/help/faq/\#!/\#tocAnchor-1-25-1} - -\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} - -\section{Example}\label{example} - -An example Excel document showing this filtering process is available here:: \href{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/data/Pezzini2016_SHSY5Ycelldiff_DE_table_filtering.xlsx}{Pezzini2016\_SHSY5Ycelldiff\_DE\_table\_filtering.xlsx}. - -\chapter{Online Tools}\label{online-tools} - -Functional enrichment analysis can be performed using various web-based tools, each of which is designed to meet specific analytical needs. These tools often vary in the databases they use, their statistical approaches, and their capabilities to perform different types of analysis, such as Over-Representation Analysis (ORA) or Gene Set Enrichment Analysis (GSEA). - -In this workshop, we will explore several popular tools for functional enrichment analysis, including gProfiler, STRING, Reactome, and MSigDB GSEA. Each tool offers unique features and insights, providing flexibility in selecting the right method for diverse datasets and research questions. - -\section{}\label{section-3} - -\href{https://biit.cs.ut.ee/gprofiler/gost}{gProfiler} is known for its integration of numerous species and databases. It supports both ORA and GSEA, enabling users to assess Gene Ontology (GO), biological pathways, regulatory motifs and protein databases. With gProfiler one can - -\subsection{Steps to perform ORA in g:Profiler:}\label{steps-to-perform-ora-in-gprofiler} - -{- Prepare Input List:} Ensure your input is formatted as one gene per line or in a suitable format for g:Profiler. - -{- Input Gene List:} Paste your prepared gene list directly into the input box on the g:Profiler web page or upload a file containing your list. - -{- Select Organism:} Choose the appropriate organism from the \texttt{Organism} dropdown menu (e.g., \emph{Homo sapiens} for human data). - -{- Choose Statistical Domain Scope:} Under \texttt{Advanced\ options}, select your preferred statistical background from the \texttt{Statistical\ domain\ scope} menu. If you choose ``Custom'' background, provide your custom background list by pasting or uploading the relevant file. - -{- Set Significance Threshold:} Select the desired significance threshold method, such as \emph{g:SCS}, \emph{Bonferroni}, or \emph{Benjamini-Hochberg}. -- Specify the threshold value (e.g., 0.05, 0.1, etc.). - -{- Select Functional Annotation Databases: } Navigate to the \texttt{Data\ sources} tab and choose one or more databases for analysis. Available options include: - -\begin{itemize} -\tightlist -\item - \emph{Gene Ontology (GO)}: Biological Process, Molecular Function, and Cellular Component. -\item - \emph{KEGG Pathways} -\item - \emph{Reactome Pathways} -\item - \emph{WikiPathways} -\item - \emph{TRANSFAC} -\item - \emph{mirTarBase} -\item - \emph{Human Protein Atlas} -\item - \emph{CORUM} -\item - \emph{Human Phenotype Ontology (HP)} -\end{itemize} - -{- Run Query:} Run the analysis and review the enriched terms, pathways, and visual outputs. Download the results as needed for further exploration. - -\subsubsection{Browse the gProfiler Results}\label{browse-the-gprofiler-results} - -\begin{itemize} -\item - \textbf{Overview}: - The analysis provided a comprehensive list of enriched terms across selected databases, highlighting significant GO. The results give a high-level summary of pathways or terms most relevant to the input data. -\item - \textbf{Detailed Results}: - The detailed results section includes a tabulated format with enriched terms, adjusted p-values, and relevant statistics. Each entry provides information such as the enrichment score, associated genes, and functional annotations, allowing for an in-depth understanding of biological significance. -\item - \textbf{GO Context}: - The Gene Ontology (GO) context is divided into three main categories: Biological Process (BP), Molecular Function (MF), and Cellular Component (CC). The analysis identifies which GO terms are significantly enriched, offering insights into the broader biological implications of the gene set. This helps in pinpointing processes such as cellular responses, metabolic pathways, and molecular interactions. -\item - \textbf{Query Info}: - This section includes specifics about the input data, including the total number of queried genes and any identifiers not recognised or mapped. It also details the statistical background used, the chosen organism, and other analysis settings, ensuring transparency and reproducibility of the results. -\end{itemize} - -\subsubsection*{}\label{section-4} -\addcontentsline{toc}{subsubsection}{} - -\subsubsection{Different Backgrounds}\label{different-backgrounds} - -\subsubsection*{\texorpdfstring{\textbf{Challenge:} How different backgrounds impact the output?}{Challenge: How different backgrounds impact the output?}}\label{challenge-how-different-backgrounds-impact-the-output} -\addcontentsline{toc}{subsubsection}{\textbf{Challenge:} How different backgrounds impact the output?} - -Use `All known genes' in one analysis and `Custom' background in another. Download the results by clicking on CSV button. Browse the results in the spreadsheets and find out the difference between two. - -\subsubsection*{\texorpdfstring{\textbf{Questions }}{Questions }}\label{questions-1} -\addcontentsline{toc}{subsubsection}{\textbf{Questions }} - -Which background would you use in your analysis? - -How is multi-query support implemented in gProfiler? - -How can one perform Under Representation Analysis in gProfiler? - -\subsection{Steps to perform GSEA-style analysis in g:Profiler:}\label{steps-to-perform-gsea-style-analysis-in-gprofiler} - -{- Prepare Your Pre-ranked List:} Steps to provide a ranked gene list are given \href{degust.html}{here}. - -{- Input Gene List:} Paste your prepared gene list directly into the input box on the g:Profiler web page or upload a file containing your list. - -{- Select Organism:} Same as above. - -{- Select Ordered query:} The ``Ordered query'' option in g:Profiler is designed to work with pre-ranked gene lists. - -{- Set Significance Threshold:} Same as above. - -{- Provide a Custom GMT:} This GMT file can be downloaded from \href{https://www.gsea-msigdb.org/gsea/msigdb/index.jsp}{MSigDB}. - -{- Run Query:} Same as above. - -\subsubsection*{\texorpdfstring{\textbf{Challenge:} GSEA with gProfiler}{Challenge: GSEA with gProfiler}}\label{challenge-gsea-with-gprofiler} -\addcontentsline{toc}{subsubsection}{\textbf{Challenge:} GSEA with gProfiler} - -Download the Hallmark gene sets (\href{https://www.gsea-msigdb.org/}{h.all.v2024.1.Hs.symbols.gmt}) from MSigDB and use it as Custom GMT. - -\subsubsection*{\texorpdfstring{\textbf{Question }}{Question }}\label{question} -\addcontentsline{toc}{subsubsection}{\textbf{Question }} - -How can one use multi-GMT as custom background? - -\section{}\label{section-5} - -\href{https://string-db.org/}{STRING} (Search Tool for the Retrieval of Interacting Genes/Proteins) is a resource for exploring protein-protein interaction (PPI) networks. It combines experimental data, predictions, and curated information to build networks that highlight functional relationships, helping to reveal shared pathways or biological processes within gene or protein lists. - -\subsection{Steps to Perform ORA in STRING:}\label{steps-to-perform-ora-in-string} - -{- Select Multiple proteins tab.} - -{- Input Gene List:} Paste your prepared gene list directly into the input box on the STRING web page or upload a file containing your list. - -{- Select Organism:} Choose the appropriate organism from the \texttt{Organisms} dropdown menu (e.g., \emph{Homo sapiens} for human data). STRING would auto-detect the organism if ENSEMBL IDs provided. - -{- Modify Settings:} Under \texttt{Advanced\ Settings}, you can modify \texttt{Required\ score} from low (0.15) to highest (0.9) confidence. Similarly \texttt{FDR\ stringency} and \texttt{Network\ type} can be selected. - -NOTE: In cases where long list of features is provided, STRING may change some of its settings so that: - -\begin{itemize} -\tightlist -\item - the nodes will have a simplified (not 3D) design -\item - previews of protein structures are not shown -\item - the network edges show interaction confidence only -\end{itemize} - -\subsection{Browse the STRING ORA Results}\label{browse-the-string-ora-results} - -STRING generates multiple tabs as output, shown here: - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/string-results-tabs} - -} - -\caption{Results tabs in STRING}\label{fig:unnamed-chunk-17} -\end{figure} - -\subsubsection{Viewers}\label{viewers} - -Under the \texttt{Viewers} tab, various visualisation layouts are available, with the Network option being the most notable and widely used. - -\subsubsection{Legend}\label{legend} - -The \texttt{Legend} tab offers a guide to the colors of nodes and edges, along with annotations for each individual query in the input list. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/string-legend} - -} - -\caption{Nodes and edges colour-coded}\label{fig:unnamed-chunk-18} -\end{figure} - -\subsubsection{Settings}\label{settings} - -In the \texttt{Settings} tab of the STRING results, users have the flexibility to adjust existing settings and apply new filters to customise their data view and analysis. This tab you to switch between network types, strengths, data sources, interaction scores and more. - -\subsubsection{Analysis}\label{analysis} - -One of the most essential tabs is the \texttt{Analysis} tab, which offers comprehensive functional enrichment analysis from a range of databases. These include Gene Ontology (GO) for biological processes, molecular functions, and cellular components; Pathway enrichment from sources such as KEGG, Reactome, and WikiPathways; and other significant data sources such as Human Phenotype annotations and UniProt for protein function and structure. - -Columns of the STRING enrichment table are explained as following: - -{- Count In Network:} -The first number indicates how many proteins in your network are annotated with a particular term. The second number indicates how many proteins in total (in your network and in the background) have this term assigned. You can click on the numbers to see the network view of the gene sets behind them. - -{- Strength:} -Log10(observed / expected). This measure describes how large the enrichment effect is. It's the ratio between i) the number of proteins in your network that are annotated with a term and ii) the number of proteins that we expect to be annotated with this term in a random network of the same size. - -{- Signal:} -The signal is defined as a weighted harmonic mean between the observed/expected ratio and -log(FDR). FDR tends to emphasise larger terms due to their potential for achieving lower p-values, while the observed/expected ratio highlights smaller terms, which have a high foreground to background ratio but cannot achieve low FDR values due to their size. The signal measure seeks to balance both metrics for a more intuitive ordering of enriched terms. - -{- False Discovery Rate:} -This measure describes how significant the enrichment is. Shown are p-values corrected for multiple testing within each category using the Benjamini--Hochberg procedure. - -STRING visualises terms within each category using a bubble plot, effectively showcasing the significance and size of enriched terms. Additionally, it renders groups of related terms based on a user-defined similarity level, allowing users to identify clusters of functionally related terms within the data. This helps in interpreting complex enrichment results and highlighting key biological processes or pathways that are closely associated. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/string-enrichment_KEGG_sim0.7_graph_plus} - -} - -\caption{Functional enrichment visualisation with STRING}\label{fig:unnamed-chunk-19} -\end{figure} - -Towards the bottom of the \texttt{Analysis} page, one can change the background including adding one of their own. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/string-statistical-background} - -} - -\caption{Statistical background}\label{fig:unnamed-chunk-20} -\end{figure} - -Finally the enriched terms can be downloaded at the end of the \texttt{Analysis} page, either individually per category or all enriched terms together. - -\subsubsection{Exports}\label{exports} - -The network data can be exported with the \texttt{Exports} tab. Also Network data can be directly sent to \href{https://cytoscape.org/}{Cytoscape} \includegraphics{images/network-to-Cytoscape.png} for further networking. It is expected to have Cytoscape installed before exporting to it. - -\subsubsection{Clusters}\label{clusters} - -The \texttt{Clusters} tab essentially provides three different types of clustering algorithms: - -\begin{itemize} -\item - k-means clustering: Initialises \emph{k} centroids randomly, assigns each data point to the nearest centroid, recomputes the centroids as the mean of all points in a cluster until centroids do not change significantly. -\item - MCL clustering (Markov clustering): is a graph-based algorithm that uses flow simulation to detect clusters in a network by modelling random walks. -\item - DBSCAN clustering: is a density-based algorithm that groups points closely packed together while marking points in low-density regions as outliers or noise -\end{itemize} - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/string-clusters} - -} - -\caption{Network clustering in STRING}\label{fig:unnamed-chunk-21} -\end{figure} - -Clusters can be downloaded in \texttt{.tsv} format. - -\subsubsection*{\texorpdfstring{\textbf{Question}}{Question}}\label{question-1} -\addcontentsline{toc}{subsubsection}{\textbf{Question}} - -What was the overlap in enrichment terms between gProfiler and STRING at FDR ≤ 0.05? - -\subsection{Steps to Perform GSEA in STRING:}\label{steps-to-perform-gsea-in-string} - -{- Select Proteins with Values/Ranks.} - -{- Input Gene List:} Paste your gene list with a meaningful value for ranking (fold-change, log-pvalue, abundance, \ldots) directly into the input box on the STRING web page or upload a file containing your list of features and their corresponding values. - -{- Select Organism:} Same as above. - -{- Advanced Setting:} FDR stringency and the initial sort order can be set up in advance and hit the Search. - -\subsection{Browse the STRING GSEA Results}\label{browse-the-string-gsea-results} - -The output differs from ORA. For each gene set, the results include the enrichment score, its direction within the ranked list, the number of overlapping features with the gene set, and the associated FDR. - -When a user selects a gene set from the enriched table, - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/string-gsea-wikiPathways} - -} - -\caption{An example table of WikiPathway gene sets}\label{fig:unnamed-chunk-22} -\end{figure} - -the associated genes are displayed within the ranking list. A table showing these genes along with their original ranking values is also provided. - -\begin{figure} - -{\centering \includegraphics{images/string-gsea-ranking-n-table} - -} - -\caption{List of genes in the term (WP197) and their positions on the ranked list}\label{fig:unnamed-chunk-23} -\end{figure} - -Additionally, the locations of the corresponding proteins are highlighted in the proteome network: - -\begin{figure} - -{\centering \includegraphics{images/string-gsea-proteome-network} - -} - -\caption{Proteome network}\label{fig:unnamed-chunk-24} -\end{figure} - -A Functional enrichment visualisation (similar to that of ORA) is provided at below the enriched tables. - -Modify \texttt{Enrichment\ display\ settings} tab before downloading the enriched tables. It is recommended to merge terms with a certain level of similarity to reduce redundancy, especially if there are many overlapping terms. - -\begin{figure} - -{\centering \includegraphics{images/string-enrichement-display-settings} - -} - -\caption{Enrichment display settings}\label{fig:unnamed-chunk-25} -\end{figure} - -Here is an example output of \href{https://version-12-0.string-db.org/cgi/globalenrichment?networkId=bKhJ4fXp6sna}{GSEA on STRING} from a previous run (the link will expire in future). - -\section{\texorpdfstring{ or }{ or }}\label{or} - -\href{https://www.genepattern.org/}{GenePattern}, an online platform developed by the Broad Institute, offers a suite of tools for analyzing and visualizing genomic data, making bioinformatics accessible to researchers through a user-friendly, no-programming interface. Among its supported tools is Gene Set Enrichment Analysis (GSEA), which implements \href{https://www.gsea-msigdb.org/gsea/index.jsp}{MSigDB GSEA} analysis for identifying enriched gene sets in genomic data. - -\href{https://www.gsea-msigdb.org/gsea/index.jsp}{MSigDB} (Molecular Signatures Database) is a collection of gene sets for Gene Set Enrichment Analysis, representing pathways and gene signatures linked to biological states or diseases. It helps identify enriched gene sets, aiding the analysis of gene expression changes and key pathways in experimental data. - -\subsection{Steps to Locate GSEA Module in GenePattern:}\label{steps-to-locate-gsea-module-in-genepattern} - -\begin{itemize} -\tightlist -\item - Click on the Run button and then the Public Server -\end{itemize} - -\begin{figure} - -{\centering \includegraphics{images/GenePattern-Run} - -} - -\caption{Navigate to Public Server}\label{fig:unnamed-chunk-26} -\end{figure} - -\begin{itemize} -\item - Sign in to GenePattern or Enter as Guest -\item - Under \texttt{Modules} tab hit \texttt{Browse\ Modules} -\item - Find gsea in the Browse Modules by Category page and hit GSEA -\end{itemize} - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/Browse_Modules_gsea} - -} - -\caption{Browse GSEA module in GenePattern}\label{fig:unnamed-chunk-27} -\end{figure} - -\subsection{Steps to Perform GSEA:}\label{steps-to-perform-gsea} - -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\tightlist -\item - Basic Parameters -\end{enumerate} - -- Create both \texttt{.gct} and \texttt{.cls} files following \href{degust.html}{this scrit in R} - -- Load the \texttt{.gct} input file in the \texttt{expression\ dataset} tab and \texttt{.cls} file in the \texttt{phenotype\ labels} tab - -- Select a \texttt{.gmt} file (Gene Matrix Transposed) from the \texttt{gene\ sets\ database} tab - -- Set permutation under \texttt{number\ of\ permutations} tab - -- Type of the permutation to be set under \texttt{permutation\ type} tab - -- Select an appropriate DNA Chip annotation file from \texttt{chip\ platform\ file} tab - -- Name the output file in \texttt{output\ file\ name} tab - -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\setcounter{enumi}{1} -\tightlist -\item - Advanced Parameters -\end{enumerate} - -- Scoring Scheme: - -\begin{itemize} -\item - K-S: The score increment is the same for all genes in \emph{S} regardless of their ranking or correlation strength. -\item - Weighted: the score increment for each gene in \emph{S} is weighted by its correlation with the phenotype, typically the absolute value of the correlation or ranking metric. -\end{itemize} - -- Metric for ranking genes: Ranking metric of interest can be chosen from drop down menu. A detailed description of the metrics is given on \href{https://docs.gsea-msigdb.org/\#GSEA/GSEA_User_Guide/\#metrics-for-ranking-genes}{GSEA-MSigDB Documentation}. - -\begin{itemize} -\item - Categorical Phenotypes: Signal-to-Noise Ratio, t-Test, Ratio of Classes, Log2 Ratio of Classes -\item - Continuous Phenotypes: Pearson Correlation, Spearman Correlation -\end{itemize} - -- Minimum and Maximum size of gene sets can be set using \texttt{max\ gene\ set\ size} and \texttt{min\ gene\ set\ size} tabs - -\subsubsection{Browse the GSEA results}\label{browse-the-gsea-results} - -Once the job has been queued and successfully run, the output will be listed on the left panel under \texttt{Jobs} tab: - -\begin{figure} - -{\centering \includegraphics{images/GenePattern-Jobs} - -} - -\caption{Job status in GenePattern}\label{fig:unnamed-chunk-28} -\end{figure} - -Of the most important files is the \texttt{.zip} file that was earlier specified under \texttt{output\ file\ name} tab in Basic parameters section which includes all the results. The results can also be navigated using the single files listed under the job id. - -For Pezzini experiment, two \texttt{html} files generated for each of up- and down-regulated gene sets, something like: - -\begin{itemize} -\item - gsea\_report\_for\_Diff\_1731388275794.html -\item - gsea\_report\_for\_Nodiff\_1731388275794.html -\end{itemize} - -The tabulated versions of the results are given in \texttt{.tsv} format: - -\begin{itemize} -\item - gsea\_report\_for\_Diff\_1731388275794.tsv -\item - gsea\_report\_for\_Nodiff\_1731388275794.tsv -\end{itemize} - -The GSEA result tables have the following header and below is given details of one gene set: - -\begin{table} - -\caption{\label{tab:unnamed-chunk-29}Summary of GSEA Results for REACTOME_FRS_MEDIATED_FGFR2_SIGNALING Gene Set} -\centering -\begin{tabular}[t]{l|l} -\hline -Parameter & Value\\ -\hline -GS (follow link to MSigDB) & [REACTOME\_FRS\_MEDIATED\_FGFR2\_SIGNALING](https://www.gsea-msigdb.org/gsea/msigdb/human/geneset/REACTOME\_FRS\_MEDIATED\_FGFR2\_SIGNALING)\\ -\hline -GS DETAILS & Details ...\\ -\hline -SIZE & 16\\ -\hline -ES & 0.83905387\\ -\hline -NES & 1.7128055\\ -\hline -NOM p-val & 0\\ -\hline -FDR q-val & 0.03902518\\ -\hline -FWER p-val & 0.648\\ -\hline -RANK AT MAX & 995\\ -\hline -LEADING EDGE & tags=38\%, list=7\%, signal=40\%\\ -\hline -\end{tabular} -\end{table} - -The leading edge column has three values: - -\begin{itemize} -\tightlist -\item - tags: 38\% of the genes in the gene set are key to the enrichment result. -\item - list: These genes make up 7\% of the total gene list being analyzed. -\item - signal: They contribute 40\% of the enrichment signal, highlighting their importance in driving the association between this gene set and the biological phenotype being studied. -\end{itemize} - -\subsubsection*{\texorpdfstring{\textbf{Challenge:} How do different ranking metrics impact the output?}{Challenge: How do different ranking metrics impact the output?}}\label{challenge-how-do-different-ranking-metrics-impact-the-output} -\addcontentsline{toc}{subsubsection}{\textbf{Challenge:} How do different ranking metrics impact the output?} - -Run GSEA analysis using Hallmark gene sets with two metrics (tTest and Ratio\_of\_Classes). What are the upregulated terms (FDR \textless{} 0.1) in the \texttt{Diff} class, based on the t-test and Ratio of Classes metrics? - -\subsubsection*{\texorpdfstring{\textbf{Question }}{Question }}\label{question-2} -\addcontentsline{toc}{subsubsection}{\textbf{Question }} - -Why might the HALLMARK\_CHOLESTEROL\_HOMEOSTASIS gene set be upregulated specifically in the differentiation condition of SH-SY5Y cells in \href{https://pubmed.ncbi.nlm.nih.gov/27422411/}{Pezzini, et al 2016} experiment? - -Show - -\begin{itemize} -\tightlist -\item - Relevance: Cholesterol is essential for neuronal function and membrane fluidity, particularly in processes like axonal growth and synapse formation. Neurons have a high demand for cholesterol, especially during differentiation when they extend axons and dendrites. -\item - Possible Insight: Upregulation of genes in this set could signify that differentiating cells are actively producing or transporting cholesterol to support membrane synthesis and cellular remodeling required for mature neuronal structures. -\end{itemize} - -\subsubsection*{}\label{section-6} -\addcontentsline{toc}{subsubsection}{} - -\section{}\label{section-7} - -\href{https://reactome.org/}{Reactome} is an open-source database of curated biological pathways across species, offering pathway maps and enrichment tools to analyse gene lists in a pathway-focused context. It's ideal for visualising data within established biochemical and cellular processes. - -\subsection{Steps to perform ORA in Reactome:}\label{steps-to-perform-ora-in-reactome} - -\begin{itemize} -\tightlist -\item - Hit the \texttt{Analysis\ Tools} tab -\end{itemize} - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/reactome-tabs} - -} - -\caption{Analysis in Reactome}\label{fig:unnamed-chunk-30} -\end{figure} - -\begin{itemize} -\tightlist -\item - Choose \texttt{Analyse\ gene\ list} from the left panel -\end{itemize} - -\begin{figure} - -{\centering \includegraphics[width=0.2\linewidth]{images/reactome-analysis-tools} - -} - -\caption{Analysis Tools in Reactome}\label{fig:unnamed-chunk-31} -\end{figure} - -\begin{itemize} -\item - Upload list of features on the box or choose a file, hit continue -\item - Select preferred options: - - - Project to Human: This option will convert identifiers from non-human species into human equivalents, allowing you to analyse data across species. - - - Include interactors: This option integrates interactors from IntAct, a protein interaction database. Including interactors broadens the background network, potentially offering deeper insights. -\item - Hit Analyse! -\end{itemize} - -\subsection{Steps to perform GSA in Reactome:}\label{steps-to-perform-gsa-in-reactome} - -\begin{itemize} -\tightlist -\item - If \texttt{Analyse\ gene\ expression} was chosen instead, Reactome offers the following gene set analysis: -\end{itemize} - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/reactome-gsea-methods} - -} - -\caption{Reactome GSA }\label{fig:unnamed-chunk-32} -\end{figure} - -\begin{itemize} -\item - Let's try CAMERA as it represents the \texttt{camera()} function of \texttt{limma} package in \texttt{R} for a gene set analysis. -\item - Choose TMM normalisation to ensure consistency with the input data used in other tools within our workshop. -\item - Select data type and provide input data -\end{itemize} - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/reactome-gsea-select-data} - -} - -\caption{Ractome GSA - data type}\label{fig:unnamed-chunk-33} -\end{figure} - -\begin{itemize} -\tightlist -\item - Annotate columns by adding extra info as follows: -\end{itemize} - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/reactome-gsea-add-column} - -} - -\caption{Pathway diagram }\label{fig:unnamed-chunk-34} -\end{figure} - -\begin{itemize} -\item - Save dataset and Continue -\item - You can now browse the results -\end{itemize} - -\subsection{Browse the Reactome results}\label{browse-the-reactome-results} - -Results can be interactively browsed using the reactome pathway or voronoi visualisation modes: - -User can explore the pathway names listed in the table within the \texttt{Analysis} tab and they are displayed as popups on the pathway diagrams. - -One can also select a pathway of interest by navigating through the left panel or by simply searching for the term in the search box. - -The enriched table can be downloaded as shown below: - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/reactome-download-table} - -} - -\caption{Table of ORA with Reactome}\label{fig:unnamed-chunk-35} -\end{figure} - -The diagram can be downloaded using this icons: - -Here is a sample pathway diagram from Reactome GSA. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/reactome-PathwaysOverview-expression-data} - -} - -\caption{Pathway diagram - GSA}\label{fig:unnamed-chunk-36} -\end{figure} - -In case \texttt{ssGSEA} was selected, an overall output would look like below: - -\begin{figure} - -{\centering \includegraphics[width=0.7\linewidth]{images/reactome-ssGSEA} - -} - -\caption{Expression of top 30 pathways with ssGSEA}\label{fig:unnamed-chunk-37} -\end{figure} - -\subsubsection*{}\label{section-8} -\addcontentsline{toc}{subsubsection}{} - -\subsubsection*{\texorpdfstring{\textbf{Question }}{Question }}\label{question-3} -\addcontentsline{toc}{subsubsection}{\textbf{Question }} - -When running FEA in Reactome, how do you prefer the analysis methods? - -- PADOG (Pathway Analysis with Down-weighting of Overlapping Genes) - -- CAMERA (Correlation Adjusted Mean Rank) - -- ssGSEA (Single Sample Gene Set Enrichment Analysis) - -\subsubsection*{}\label{section-9} -\addcontentsline{toc}{subsubsection}{} - -\section{Uncertainties of a functional enrichment analsysis}\label{uncertainties-of-a-functional-enrichment-analsysis} - -This section provides a summary of the paper by \href{https://wires.onlinelibrary.wiley.com/doi/full/10.1002/wics.1643}{Wünsch et al.~(2023)}, which explores uncertainties inherent in functional enrichment analysis. The study critically examines the sources of variability and challenges in this analytical approach, offering insights into improving its reliability and robustness. - -\begin{figure} - -{\centering \includegraphics[width=1\linewidth]{images/Wunsch_et_al_2023} - -} - -\caption{From RNA sequencing measurements to the final results: A practical guide to navigating the choices and uncertainties of gene set analysis}\label{fig:unnamed-chunk-38} -\end{figure} - -\subsection{\texorpdfstring{{Types of FEA}}{Types of FEA}}\label{types-of-fea} - -Functional enrichment analysis (FEA) typically involves one of over representation analysis (ORA), gene set enrichment analysis (GSEA) also known as functional class scoring (FCS), and Pathway Topology (PT). - -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\tightlist -\item - \textbf{ORA} -\end{enumerate} - -- ORA methods are the least complex among the three approaches of FEA. - -- ORA methods requires a list of differentially expressed genes that are already analysed in differential expression analysis. - -- The background population, the universe, can be a more general set of genes, like those in the human genome or more specific from those observed in an experiment. - -- A contingency table is created and the null distribution is modelled using the hypergeometric distribution. - -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\setcounter{enumi}{1} -\tightlist -\item - \textbf{FCS} -\end{enumerate} - -- FCS methods aim to aggregate the values of the gene-level statistics (ranks) into gene set-level statistic (enrichment score, ES). - -- FCS can be classified as one of FCS I, those that take the expression data as input or FCS II that take a pre-ranked list of genes as input. With the latter, the information of the conditions (phenotypes) of the samples is lost, as such phenotype permutation cannot be performed leaving the choice of null hypothesis to gene set permutation. - -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\setcounter{enumi}{2} -\tightlist -\item - \textbf{PT} -\end{enumerate} - -- PT additionally models interactions between the genes. This approach generally scores considerably lower in terms of popularity in the reference database. - -\subsection{\texorpdfstring{{Considerations}}{Considerations}}\label{considerations} - -- Pre-filter expression data: Exclude lowly expressed genes to improve statistical power. - -- Handle gene IDs carefully: Convert gene IDs to the required format and remove any duplicates. - -- Normalise expression data: Address sample-specific biases to enable fair comparisons between samples. - -- Use appropriate methods for differential expression analysis: Recommended methods include limma (voom), DESeq2, and edgeR. - -- Select suitable gene-level statistics: For FCS II, choose metrics like moderated t-statistic to rank genes meaningfully. - -- Adjust for multiple testing: Ensure your analysis includes a correction for multiple hypothesis testing. Some methods require manual adjustments. - -- Choose gene set databases based on biological context: Ensure that the database aligns with the research question and the experimental system. - -\subsection{\texorpdfstring{{Recommendation}}{Recommendation}}\label{recommendation} - -\begin{itemize} -\item - Awareness of Uncertainties: - - - Recognise uncertainties in methods, parameter choices, and data preprocessing when conducting Gene Set Analysis (GSA). - - - Understand that the method's name alone does not capture the full analysis pipeline. -\item - Clearly document all analysis choices, including methods, parameters, and preprocessing steps. -\item - Select methods, parameters, and preprocessing steps before starting the analysis to minimise bias. -\item - Set Technical Parameters: - - - Fix technical parameters like the random seed and number of permutations before running the analysis to ensure reproducibility. - - - Avoid adjusting these parameters to obtain favourable results. -\item - Avoid Cherry-picking: - - - Refrain from selectively reporting results based on favourable outcomes, as this can lead to over-optimistic and non-reproducible findings. - - - Avoid excessive tweaking of the analysis strategy to fit the data post hoc. -\item - Use different pipelines or parameter configurations as part of sensitivity analysis to check the consistency of results. -\item - Share complete analysis workflows, including code and documentation, to allow others to replicate the findings accurately. -\end{itemize} - -\chapter{Reporting results}\label{reporting-results} - -Once we have performed an enrichment analysis, how should we communicate the results? As with everything, it depends on what you need to convey. Some examples are below. - -\section{In text}\label{in-text} - -If you just need to emphasise that the differential expression relates to a condition of interest, you don't need much: - -\begin{quote} -Genes differentially expressed after SH-SY5Y cell differentiation were enriched for the GO term ``regulation of neurogenesis'' (adjusted p-value \textless{} 0.01). -\end{quote} - -In the methods section: - -\begin{quote} -Enrichment was calculated for differentially expressed genes using the g:GOSt enrichment tool \href{https://academic.oup.com/nar/article/47/W1/W191/5486750}{(Raudvere et al, 2019)} using a background of tested genes. -\end{quote} - -\section{As a table}\label{as-a-table} - -For a more complete view, a table of the significant or top \emph{n} terms can be useful. e.g., in a supplementary figure. - -The top 10 enriched GO terms for the differentially expressed genes are shown below: - -\begin{longtable}[]{@{} - >{\raggedright\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.4118}} - >{\raggedright\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.1176}} - >{\raggedleft\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.1765}} - >{\raggedleft\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.1078}} - >{\raggedleft\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.1863}}@{}} -\toprule\noalign{} -\begin{minipage}[b]{\linewidth}\raggedright -\url{GO:BP} Term -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright -Term ID -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft -Adjusted p-value -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft -Term Size -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedleft -Num DE Genes -\end{minipage} \\ -\midrule\noalign{} -\endhead -\bottomrule\noalign{} -\endlastfoot -system process & \url{GO:0003008} & 2.90E-04 & 1243 & 45 \\ -nervous system development & \url{GO:0007399} & 4.19E-04 & 1985 & 60 \\ -regulation of cell development & \url{GO:0060284} & 1.98E-03 & 795 & 33 \\ -central nervous system development & \url{GO:0007417} & 2.67E-03 & 805 & 33 \\ -regulation of neurogenesis & \url{GO:0050767} & 5.59E-03 & 707 & 30 \\ -regulation of nervous system development & \url{GO:0051960} & 5.78E-03 & 790 & 32 \\ -regulation of cell differentiation & \url{GO:0045595} & 6.03E-03 & 1471 & 47 \\ -multicellular organismal process & \url{GO:0032501} & 2.04E-02 & 5300 & 111 \\ -system development & \url{GO:0048731} & 2.88E-02 & 3668 & 85 \\ -neurogenesis & \url{GO:0022008} & 4.36E-02 & 1375 & 43 \\ -\end{longtable} - -\section{As a figure}\label{as-a-figure} - -Plots of --log(p-value) are a popular option for figures. By taking the negative logarithm of the p-value, larger bars indicate greater significance. - -For instance, the following figure is taken from the \href{https://link.springer.com/article/10.1007\%2Fs10571-016-0403-y}{(Pezzini et al.~2017)} paper. -Note that this figure shows two specific categories from the IPA (Ingenuity Pathway Analysis) database using the IPA tool (not covered here), so the terms differ. - -\begin{center}\includegraphics[width=0.9\linewidth]{images/NegLogPvalPlot_Pezzini2017} \end{center} - -You can also enhance such plots by including the number of genes and other attributes. For an example, see the ``bubble'' chart produced by the R package \texttt{pathfindR}: \url{https://www.biostars.org/p/322415/} - -\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} - -There are also tools like ClueGO (a Cytoscape plugin) that build enriched terms into a network : \url{http://apps.cytoscape.org/apps/cluego} - -\chapter{Resources}\label{resources} - -\section{Links to data sets used in this workshop:}\label{links-to-data-sets-used-in-this-workshop} - -\subsection{\texorpdfstring{\textbf{gProfiler}}{gProfiler}}\label{gprofiler} - -\begin{itemize} -\tightlist -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/gProfiler/Bg_14420set_Enemble_IDs.txt}{Bg\_14420set\_Enemble\_IDs.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/gProfiler/Bg_14420set_Gene_Symbols.txt}{Bg\_14420set\_Gene\_Symbols.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/gProfiler/DE_198set_Enemble_IDs.txt}{DE\_198set\_Enemble\_IDs.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/gProfiler/DE_198set_Gene_Symbols.txt}{DE\_198set\_Gene\_Symbols.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/gProfiler/DE_378set_Enemble_IDs.txt}{DE\_378set\_Enemble\_IDs.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/gProfiler/DE_378set_Gene_Symbols.txt}{DE\_378set\_Gene\_Symbols.txt} -\end{itemize} - -\subsection{\texorpdfstring{\textbf{STRING}}{STRING}}\label{string} - -\begin{itemize} -\tightlist -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/STRING/DE_198set_Enemble_IDs.txt}{DE\_198set\_Enemble\_IDs.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/STRING/DE_198set_Gene_Symbols.txt}{DE\_198set\_Gene\_Symbols.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/STRING/Pre_Ranked_List_logFC_ENSEMBL}{Pre\_Ranked\_List\_logFC\_ENSEMBL} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/STRING/Pre_Ranked_List_logFC_SYMBOL}{Pre\_Ranked\_List\_logFC\_SYMBOL} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/STRING/Pre_Ranked_List_t_stat_ENSEMBL}{Pre\_Ranked\_List\_t\_stat\_ENSEMBL} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/STRING/Pre_Ranked_List_t_stat_SYMBOL}{Pre\_Ranked\_List\_t\_stat\_SYMBOL} -\end{itemize} - -\subsection{\texorpdfstring{\textbf{GSEA}}{GSEA}}\label{gsea} - -\begin{itemize} -\tightlist -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/GSEA/Expression_Data.gct}{Expression\_Data.gct} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/GSEA/Phenotype_Labels.cls}{Phenotype\_Labels.cls} -\end{itemize} - -\subsection{\texorpdfstring{\textbf{Reactome}}{Reactome}}\label{reactome-1} - -\begin{itemize} -\tightlist -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/Reactome/DE_378set_Enemble_IDs.txt}{DE\_378set\_Enemble\_IDs.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/Reactome/DE_378set_Gene_Symbols.txt}{DE\_378set\_Gene\_Symbols.txt} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/Reactome/TMM_normalized_data_Reactome.csv}{TMM\_normalized\_data\_Reactome.csv} -\end{itemize} - -\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} - -Here is the \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/datasets.R}{R scripts} used to create the data sets. - -Required input files for the datasets.R file: - -\begin{itemize} -\tightlist -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/Pezzini2016_SHSY5Ycelldiff_DE_table_filtering.xlsx}{Pezzini2016\_SHSY5Ycelldiff\_DE\_table\_filtering.xlsx} -\item - \href{https://github.com/MonashBioinformaticsPlatform/Functional_Enrichment_Online_Tools/blob/main/data/SHSY5Ycelldiff_Pezzini2016.tsv}{SHSY5Ycelldiff\_Pezzini2016.tsv} -\end{itemize} - -\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} - -\section{Web-based Tools}\label{web-based-tools} - -The following tools might be useful for downstream functional analysis; this includes some not covered in today's workshop. - -Note that most of these tools do more than just enrichment tests, and some include their own databases. - -\subsection{g:Profiler / g:GOSt}\label{gprofiler-ggost} - -\url{https://biit.cs.ut.ee/gprofiler/gost} - -The \texttt{g:GOSt} ``functional profiling'' tool of \texttt{gProfiler} calculates functional enrichment for gene lists, identifying enriched terms across various ontologies and pathways. -It features a clean, modern interface and provides a handy summary highlighting which genes contribute to the enrichment. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/gprofiler} \caption{The gProfiler front page}\label{fig:unnamed-chunk-42} -\end{figure} - -\subsection{PANTHER}\label{panther} - -\url{http://www.pantherdb.org/} - -PANTHER performs over-representation tests across multiple databases; Gene ontology, Reactome, PANTHER pathways and protein classes. It allows greater control over the statistical test used and clearly summarises what was performed. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/panther} \caption{PANTHER}\label{fig:unnamed-chunk-43} -\end{figure} - -\subsection{DAVID}\label{david} - -\url{https://david.ncifcrf.gov/} - -Via its `functional annotation' tool, DAVID allows you to calculate functional enrichment across a number of databases, including Gene Ontology, KEGG, Reactome, and others. Reliable, with a slightly clunky interface. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/david} \caption{DAVID}\label{fig:unnamed-chunk-44} -\end{figure} - -\subsection{Enrichr}\label{enrichr} - -\url{https://amp.pharm.mssm.edu/Enrichr/} - -Enrichr easily calculates enrichment across a wide range of databases. It currently allows for a background set. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/enrichr} \caption{Enrichr}\label{fig:unnamed-chunk-45} -\end{figure} - -\subsection{Reactome}\label{reactome-2} - -\url{https://reactome.org/} - -The core of Reactome is the Reactome Pathway Browser. Although other tools use the Reactome database, the Reactome website provides a means to browse enrichment within the pathway browser view. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/reactome} \caption{Reactome}\label{fig:unnamed-chunk-46} -\end{figure} - -\subsection{BioCyc}\label{biocyc} - -\url{https://biocyc.org/} - -BioCyc is another suite of tools for enrichment and pathway browsing, particularly useful for prokaryotic studies. It is a licensed resource, but Monash holds an institutional licence. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/biocyc} \caption{Biocyc}\label{fig:unnamed-chunk-47} -\end{figure} - -\subsection{STRING}\label{string-1} - -\url{https://string-db.org/} - -STRING was originally designed as a convenient tool to explore interactions within a gene list, visualised as an interaction network. While it is best suited for smaller gene lists, it now also includes functionality for performing functional enrichment analysis. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/string} \caption{STRING}\label{fig:unnamed-chunk-48} -\end{figure} - -\subsection{Gene Ontology}\label{gene-ontology} - -\url{http://geneontology.org/} - -Gene Ontology (GO) terms are the most widely used set of functional annotations, used by many enrichment tools. The Gene Ontology resource website itself provides several tools for browsing the GO term hierarchy. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/go} \caption{Gene Ontology}\label{fig:unnamed-chunk-49} -\end{figure} - -\subsection{KEGG}\label{kegg} - -\url{https://www.genome.jp/kegg/} - -A well-known curated pathway database. It is used by many other tools but with a caveat - KEGG moved to a subscription model in 2011, and so enrichment tools need to use the last open release from 2011. However, up-to-date KEGG pathways are browsable directly through their website. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/kegg} \caption{KEGG}\label{fig:unnamed-chunk-50} -\end{figure} - -\subsection{GSEA and MSigDB}\label{gsea-and-msigdb} - -\url{http://software.broadinstitute.org/gsea/index.jsp} - -The GSEA Desktop is (one of many) gene set enrichment approaches. It uses gene rankings across all genes rather than hypergeometric or Fisher's exact tests of gene list enrichment. MSigDB (Molecular signatures Database) is a suite of annotation databases suitable for GSEA analysis. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/gsea} \caption{MSigDB}\label{fig:unnamed-chunk-51} -\end{figure} - -\subsection{MetaboAnalyst}\label{metaboanalyst} - -MetaboAnalyst is popular among the metabolomics community for statistical, functional, and integrative analyses of metabolomics data. It has features such as \textbf{Enrichment Analysis}, \textbf{Pathway Analysis}, and \textbf{Network Analysis}, which perform metabolite set enrichment, metabolic pathway analysis, and pathway activity prediction from MS peaks. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/metaboanalyst} \caption{MetaboAnalyst}\label{fig:unnamed-chunk-52} -\end{figure} - -\subsection{Cytoscape}\label{cytoscape} - -\url{https://cytoscape.org/} - -Cytoscape is a desktop-based biological network analysis and visualisation tool, rather than a functional enrichment tool (although plugins can extend its functionality). It is mentioned here because it is often useful as a next step when you need to create custom figures showing the interactions of an interesting biological pathway. - -\begin{figure} -\includegraphics[width=1\linewidth]{https://monashbioinformaticsplatform.github.io/enrichment_analysis_workshop/img/cytoscape} \caption{Cytoscape}\label{fig:unnamed-chunk-53} -\end{figure} - - \bibliography{book.bib,packages.bib} - -\end{document} diff --git a/Sydney_informatics_hub_logo.png b/Sydney_informatics_hub_logo.png deleted file mode 100644 index 732c25e..0000000 Binary files a/Sydney_informatics_hub_logo.png and /dev/null differ diff --git a/slides_n_papers/workshop_slides/Functional_Enrichment_slides2026.pptx b/slides_n_papers/workshop_slides/Functional_Enrichment_slides2026.pptx new file mode 100644 index 0000000..5e448cb Binary files /dev/null and b/slides_n_papers/workshop_slides/Functional_Enrichment_slides2026.pptx differ diff --git a/slides_n_papers/workshop_slides/Functional_Enrichment_slides_2025.pdf b/slides_n_papers/workshop_slides/Functional_Enrichment_slides_2026.pdf similarity index 100% rename from slides_n_papers/workshop_slides/Functional_Enrichment_slides_2025.pdf rename to slides_n_papers/workshop_slides/Functional_Enrichment_slides_2026.pdf