From 5a6481d0784869871c9108793c8fec82889bc8d8 Mon Sep 17 00:00:00 2001 From: Will Bradshaw Date: Thu, 12 Oct 2023 17:31:53 -0400 Subject: [PATCH] Adapter removal test notebook --- docs/img/2023-10-12_cc-fastqc-adapters-ar.png | Bin 0 -> 58215 bytes .../2023-10-12_cc-fastqc-adapters-fastp.png | Bin 0 -> 56877 bytes .../img/2023-10-12_cc-fastqc-adapters-raw.png | Bin 0 -> 58536 bytes .../2023-10-12_rothman-fastqc-adapters-ar.png | Bin 0 -> 39540 bytes ...23-10-12_rothman-fastqc-adapters-fastp.png | Bin 0 -> 39480 bytes ...2023-10-12_rothman-fastqc-adapters-raw.png | Bin 0 -> 42246 bytes docs/index.html | 24 +- docs/listings.json | 1 + .../2023-10-12_fastp-vs-adapterremoval.html | 934 ++++++++++++++++++ .../figure-html/unnamed-chunk-2-1.png | Bin 0 -> 51332 bytes .../figure-html/unnamed-chunk-3-1.png | Bin 0 -> 51516 bytes .../figure-html/unnamed-chunk-4-1.png | Bin 0 -> 54968 bytes docs/search.json | 9 +- img/2023-10-12_cc-fastqc-adapters-ar.png | Bin 0 -> 58215 bytes img/2023-10-12_cc-fastqc-adapters-fastp.png | Bin 0 -> 56877 bytes img/2023-10-12_cc-fastqc-adapters-raw.png | Bin 0 -> 58536 bytes img/2023-10-12_rothman-fastqc-adapters-ar.png | Bin 0 -> 39540 bytes ...23-10-12_rothman-fastqc-adapters-fastp.png | Bin 0 -> 39480 bytes ...2023-10-12_rothman-fastqc-adapters-raw.png | Bin 0 -> 42246 bytes .../2023-10-12_fastp-vs-adapterremoval.qmd | 264 +++++ 20 files changed, 1230 insertions(+), 2 deletions(-) create mode 100644 docs/img/2023-10-12_cc-fastqc-adapters-ar.png create mode 100644 docs/img/2023-10-12_cc-fastqc-adapters-fastp.png create mode 100644 docs/img/2023-10-12_cc-fastqc-adapters-raw.png create mode 100644 docs/img/2023-10-12_rothman-fastqc-adapters-ar.png create mode 100644 docs/img/2023-10-12_rothman-fastqc-adapters-fastp.png create mode 100644 docs/img/2023-10-12_rothman-fastqc-adapters-raw.png create mode 100644 docs/notebooks/2023-10-12_fastp-vs-adapterremoval.html create mode 100644 docs/notebooks/2023-10-12_fastp-vs-adapterremoval_files/figure-html/unnamed-chunk-2-1.png create mode 100644 docs/notebooks/2023-10-12_fastp-vs-adapterremoval_files/figure-html/unnamed-chunk-3-1.png create mode 100644 docs/notebooks/2023-10-12_fastp-vs-adapterremoval_files/figure-html/unnamed-chunk-4-1.png create mode 100644 img/2023-10-12_cc-fastqc-adapters-ar.png create mode 100644 img/2023-10-12_cc-fastqc-adapters-fastp.png create mode 100644 img/2023-10-12_cc-fastqc-adapters-raw.png create mode 100644 img/2023-10-12_rothman-fastqc-adapters-ar.png create mode 100644 img/2023-10-12_rothman-fastqc-adapters-fastp.png create mode 100644 img/2023-10-12_rothman-fastqc-adapters-raw.png create mode 100644 notebooks/2023-10-12_fastp-vs-adapterremoval.qmd diff --git a/docs/img/2023-10-12_cc-fastqc-adapters-ar.png b/docs/img/2023-10-12_cc-fastqc-adapters-ar.png new file mode 100644 index 0000000000000000000000000000000000000000..b5128d17096491b13bf30f1af8c8dd0cb52570c7 GIT binary patch literal 58215 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 ReP6U_)9aD1Rs4C^{{sglzC-{3 literal 0 HcmV?d00001 diff --git a/docs/img/2023-10-12_cc-fastqc-adapters-raw.png b/docs/img/2023-10-12_cc-fastqc-adapters-raw.png new file mode 100644 index 0000000000000000000000000000000000000000..7adc8e68c815f4e55fa148bbec43b92a1650347a GIT binary patch literal 58536 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 literal 0 HcmV?d00001 diff --git a/docs/img/2023-10-12_rothman-fastqc-adapters-ar.png b/docs/img/2023-10-12_rothman-fastqc-adapters-ar.png new file mode 100644 index 0000000000000000000000000000000000000000..0c8be2f21ff9b66029ad786e57703d4911ff27f3 GIT binary patch literal 39540 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 BE>Zvh literal 0 HcmV?d00001 diff --git a/docs/img/2023-10-12_rothman-fastqc-adapters-raw.png b/docs/img/2023-10-12_rothman-fastqc-adapters-raw.png new file mode 100644 index 0000000000000000000000000000000000000000..ab3f01da678798c9b039ec306faee9abed55c1ad GIT binary patch literal 42246 zcmeHw2V9fq+P9XYv?|a#7_xe5)wUp%Qbk#*rLLk-C!3%YQ5gXd2!tdmR;sLH6;K&* z6j4?f5=KZOB19QU6-j^)0z^Q_B0x4tz6Y$co>PK;@Atm%7m^?3d7f~O>;7N=Yu!(B z<|mgeS__shm@{XN*0!xb?3y!2w$AErI& zi1d3HwbA1Kyy{Q&8g;9`(`%duZ<}NAwM7fB>Y>wD_YO_WA6=}ub+cY#G}_(sPJR7@ z7TvNikJbh-!q`8_s!^XYqNmrWKlReu+AkS6;U8CSP%?c6-?_;B*?WTL7fxMCf~?b^ zOuyGAb8gVoe={>%kFTA&!f!ozXZh5d#RvbdHiPsdOn!s>HQ5UB!+2nuKGO*yffNS2 ziiDMZ@W?)4vVT%|!{jH{jp9?H@5({$7lC2&b&e>0HSmwSizt>Jy|;lTxm?quP1Vt3 zuw-cs{jx`}@FXkzx5%H9tQ`9suGDTxXZSeYUBhE?qt>e$UjLZ zM#oGR@5FPaIj})k`Dl+BD=SAp)b|fjumQ<+!D_m4`up$IvnwhXB@T2nGmNJ1@BJ+@ z3TXTY2y3KmMLxnqB1Pro67_%*L zE*k*Z{yg0_DYme)7<)Ujv(4It0?s-r*9+O2|tixX!qNspd0^7)Si$ zTBJLVE$Y(Q9C*I1Q`&cUfVX=_BlvTC-2tr1E`8H-#8TsUZO!YJ3Hfp#S=v2D-V7)5 zteIvCq{7Pap!^HPy7}@kSf&F3dn`a6c}Deyv>8W`QmQf%YF`W!lR14H<*(YN4V7E` z|G2xzz4CA6`sZ*kkP4BroTga_IWrmixD(Cx=^W?if+s99blt%C?vl|bJ)l1pxnG*; za%~#4khL5a_y`#-hyl$~aigyWTe-T4k54VUlA_to*@O@mm+7wi_;~A6r(bywE`)zzKmt zI~DRqhKCJOJ|e7GEpq%;HO_Lh_JivkOoT{!@Qcc-oMcPkWMC3NEIAs+>{Ql+x-fm};H zBv$#eJdA(FpyZpG!ETE6eT2yxls>+q_iGYgF@f8wJrQ3%#Z*^A z0{coHi0PJsFj39u7Z#RmEPIi`t_k^`s%h=y#-fh;eAu(Mel61K)wfh&?wX@lqK=GxR1r$~pliKAUi> z-WeU=px`vY!m)V9xQg!06eE&HXvEpFy$8VdAQia{)efM*U(NQ@@xqIU;J-iHTPpdG z1R^LG#Y>QD%D`vFMQIIaPUsk%zT+C=OwyR zFgMZ75=L?icBF+tBVoh1x?ClOY_eI~GDKt~6rJPL^$SIA8(I`yRHOq0Php@eE#cK- zntU}YA<^~JTvkT18EYXm+GI@h3F?`g9Dv`C zl?D>3Qh9DYBnrbwP4H!eXPE6}0sW%M{)1bA#+aoT z@zZqd7u^}H<<4Tt>-vT%ow-z)TpnW?YGY)=Y=%`P%Ftp@MrcQIR)~95*%0;oU?-I> z8%vktsL_r~=NGn0hkuF;KU!18Nm4bYm9N*J5GD~R`-iU9v-`y*NQ^Qp9M0@?vB;Jj zC3~DV6fqiwfbDjmBX#r^lI2z!6cmu7NFv0W9=X%y&7b&Vzp!aaK0{%Ab|W>AP$sWM zo79x;SH_?rmBuCzS8`}4Qit7LjGfr7UxIOJub<26$5<;g(^U(3A03YbOmIY0EvN%! zA%z6Ov*+9z7%vLWW|lA0)v*cY*o4Ut;e^%3glza#MpRrvfd&Qasu+x%^!=GE zoM>qX37mwVojDZsE@9cy;{w|r1WCvSa1of7ATO%da!Uc{$!K~qvM$&xfiLIN5CawW zMG=ExI$-|SkvUWctr4RQn$gK>-OJr3|THTB3Fc&}Ou@L@qt@AuIC<^9FJis1OL0ARm2QkYS^+w(o<_C}w!2NpXe)n=7!r!5igE#!zdwQ8mn&b8saM?Xas<}g zDXo7D;}?#9qgr^Nt3eU2fr>ZB#eh9)!Q{}uaQIolV8d`fuv&~sA<^EO;Ti1CTa9>_ zMkC`nA<9#9{z^}CJsl`%qk;;ke}Q9FG9j>yPwXWtC;in-%Ymv z<>@Mpvr>Ul(sHdrRnJ<500o0f>EdAg-O@x@aj>ECiE8*Y(4edu9=@6gJJ`4!d|9<5 zyPjrYIe`+JU4|!|Yp@ck)^TU&@rvwAB*1eEOf(`NUrSN(-}?#i6+TGQh#C}%#0`Ki zQjsId33XjH>-}&k)v;AENjTLEXjJ$e+syMqqHJy=SvI2YrJ_9pJlGtR(5W3klTE+{ zVF5{%Ds~@mM=B5@^%|s|!-(;qb7@wplUBNs%N~F4+lZyAr;dNSRNS~^HfdSTwR$9M z{pPaSbo&1yU#$pTBn@CTN$(1>6I2aTUQi^&{}05?E>o~+W--tH$!x2WIyb&>AycRp zp?1vKHlYNHc7KM7&okuOt`J&7tF9~AyF02;d1vv=jqFrbKw2csRZfZ|4E%D2zx)e? z!`AE~v=7jds^JXa-4eDt$E^eRbu>8K+Mw9bs*=6`W`5z0M{Q1EZuLVWWmb;1JB`Wm zZ=1!MvHOol3f+D}@1`(_GP!?NwXL6A@bfGIzz)9CMcN!lM7NbUaO(8IK-_6_S%q55 zOMc76h|12hRc0ABqy%H3?T%*F7bL3A5Djx#!NFaoOS2o)D=l|F;_FYu-I0z1l{c$K*Vf@crk|&$>mDE@l1L-1|911t z_A0&ANI$c>x$#zq9CrF-Wle>A??VDc@xpkZT9h`kZB4JO#>YCYo*nG!7FR`UbI{7G`>`T`|60|HS$zP6tC`QQG-Jbj#oYJ*X+9* z9BOc=!SVOL|CF&+o0b2TW+i1KVX_t2(=)x5Gf<^{d#^a9FImx9dl&0@t>%5i5_L=G zQOKCSsqKv0UyJ!)W1hFBHUAp2hCZ0fLMk@(J_Lh}b8;lFgnH5Ok73Y$F)k1pI|%fp zo&4^74YLThY`wr(V8lq5} z<@)|bE-N()EC1XH{665L&Z@t%BhApD^tH!J+bEm2Ub*`C_CK6h z7B^Nc&giUO+?KoTda0F_N73ya*vsjcPg?mr#CY1Y2j_g@85aN9Z^@2>hYz+!v^WsD zQR9W5_Ss+5v!+IlRaf=Es{=2-rU$QhZ^@X0fAlUY4EVPw`Fr81n|SGvt7Y+uEOJmA zUG2G)OTk)g4tShu z9}n|3t+J7h5kB)abSE1T!+~eqrU-fW(U>*#9`_&(R+GOd{5{kVAL6W^zMIl+8r&=* zU9m1n|F?;&|3H;5_`}cv6d&q(jYjya7S57(9+N*vd>;}VYrADg^)~fJj(x^Z>9*3h z2B>PCd_^bKbpJwU)wodO;?-pAbHY>OLX8VGE?&t$z9j@u>xf!M)H?G2i;h^dTv?5O z%1y&kHL0lD`_b=SAH2TM`YHEcH4^^&3mT5jcUZo;a_Ax4KPYOTR3>(L5v9DfLOFx0 zp~qtEIXZ=bDa`f26MwB55n64ZBh;j%5xLAmNv~$%-$If985~nruQxl5;CVa+6lIo5 zC%zA<5>GD;EoNj@%b4(D`zX`*5j&P2Q@y4NAN7Oo^){!@q;*CSKj=Z8HCYc*uyN|XC>IADT z$FgU$qw=-7OZQWW!LjH)bh+aF1$Q;k^XWGE#ojJ%CfL;XQS$?eU#%wuEmIXbBcj{4 zRPvhQTuViEyE0PNR3!T|Bzvg;PSvrgxO1w?*6LdFzM?U1_QpWJH8cF+^S6h%HZ>z| zCq&6b?`yU1?~G(#X2r8yeV^F9p=Gl;d`MZeJnKY-3g1icmszTtc$tk*%R()Sw{7iF z<3f!KH7;Ik1$e8WQtOCXN7Oo^){&Q5@IOKp{?<>=cokQ_zYUjDTl_x5JZ=?H$v57Y zmk;b;#P5t8I9l_b_FMw-VTktYmAcw=3k71dKUGu>^kMWK?&LeRe|~G?NYlWv_f%bc zvZ%%`iF7Cbo$83m#mikqatBK9dn(UOOfHJ;Pf4r{wIIE(?X_Okhr;GlRQOJ)zgXkV z>Ly-%^`%-C&-dv8$rUv&)VO%d?hZ9B)H?FE%&i(1YFzvk7Y<{+b(V4_QhF|0KB@yJ z?%mPQsK*#U$32{euh#!$wTzzIZAg!UXc}6X4~c6< z%dV&5O+pKareghf?a5~dDNj{OZlx*`kz*5}$+`@A8i6k($SVkZ!%*G!>u8(W-j%#b zCfX6@2akDMQ2U=ln^&%K`3z+nQZk?e5}mUl@Z^>-xfhbr3?65JkHK8z1B}sYHu4;h zJQ^>tR6Gq*QnoNeO9+z-2~YgFeg5yLfmr@8mXqB&aZiW!5L7$xL_R^$&S=uy!w_XE zI_wmGL@P$k7?Vp}74#v*lR!s4L{UU%iT`-VOb&kZ7fn-H21qePQ0^eGXrY$*1gV$r zWHCfsZYu4Go-7wBo**ZOl-zNYy!$$H@EQ>%4+w6(QfJ`a{F-+^yfb3+oH?J@Z~I~6 zp1%U|FMjVcI879!Ib%oAxL&UuL|?R$z1vhwMosGI=-3M%TUzN|G7Nc3Pcv>E06*PF zaDyR#WU5@~3aUjgZq~H={TzCGZT$RMmzt>1(OxD}1Bn|eAOwWC(MycpZKU13 z)KEA2=qKl@-)TANk%!$JBz6RW219-$fl7^P*Fr73G<73ej`%mPXj~+pyXl=bxnlXf zb*==t+*N)8f~7S+6Ez{E1zU z@HaOCw-PTt=!WA~!rOLR#t7|}z@^+3EwRPQ@3i#h87%vVVR-V)*Xd1bv zOjTD&SFrWKosdm0?b_=U{2!@K3&8;-XZi`CE6G_KqZ1w)%<@B2v8+eMH4^3CAneF# z^3>*NU|fmyPY3%OuzEi4b`xWFMx3G?1>@2|!Us3njOQYaNe~HyHkcnNzza-Q7TU4iW3UJg4L&eBI~_>C;~Q=%${c+Di!?+dr{*1 zWRNUFA*2zw%WSTX^ijQ#yk@*IwRVijixF~*YxY0eM=<-%83po!Aq0OlV=O+-T`(#m zC_@;cZY*emp^&4+zdI*A`}E#f^M{ReVl_xm8t6FLQqVI-LBk~+oq`@kBpNDQ%bUDM zR!k0oWE)Js9-BK|l%73@`iwoT&yU85VPH`vfq!t1!=yqJKTP&f?r-1Z`0S3@*$c^1 zGBpdfA!A&KR;Jh>TAfX0&H2D&G{J)ORQVqXrY7PRWqBU>!IW0nbY0#UKb!l6AD`AK zaGXpRDOjn>&xTqzJ^pH%Jq`uU*CO5VoZ%PRztm>9D)Vr5N=&}($M#(1qY7JrbM7u&O~LMh*qdp^-|S7h@NiN3s+C<QR&AD&!r^HZnv#+1z=&FlHnJ8AU@MuZSAf|1JC1RyCM z9wKfZj0+RT!F<3biz8=4kT;^5vjJ=+erOg}7cwOf7hPt%g+ z{?Cq8`OUov!pjslI-7^GkG3ZfHh|*F7ZA$NZa5R2cJci5!}&<$q95;T7B>EQ{Os(E ze&2lzgVYN8$CAy^1h_ET!c?+4ufH|Fi{a6bb?S1%JIi;1lEVn~xh<``x*Nh#y0kw9 z$@y&FqHK}8pt4)CwO_B$dbQQ_N5wjpOU}`uT}@f{us^nJ`}47~!gl`3CmQ?wUz~Y<FUh;p&Fxuk zedyhm#b=ZQY%B?XSnxZx5`-V_JrQ3RU2pg5Ld>?iNF&<`VGtUU70b&8)gBaryw^#C z@)8pAy_AEKnh7rSnnMCFn0q-Cd}hOoNA>Ufh*wU<-8qu<^4ttw-C81gInbUyJG`_NE zeNOc^=zO}_sL9^&9g>27Mk{(R+aZs&ww0&L`E*eX^?Jv1I(!#WOoRr=NUhFpXrr|} zZk>&*+;k{etV2X3e?R1qPg78T5rMx}JQ#Kc!zZgnO0p?5^TVFa?*XaB%-*_eaxm;k z`i4rBJzIGGw9AMRDKZRyLj9s!D9SL$hq24YO*#pZTpfn;IK5{S|B}Y0Ud@KecC9|@ z$50rv)}b>iCh%sf7<{=IQSLz?oV!ug2#5bjq{vW{1_9 zz(bZG$DPR}IFvunKU5}MDP|oy8`KZZfy=hJbtA?~wrp;pSI5vGIuxb$yr`9LFw1Nh z=Q9N_6A2aYhjOy;6ZnOVtzybA?WWf*3qfS8EYJp6Y{>Ydb~Lx+0quv;b*~F{cB0)< ztCU4+2X{)uRoEd^EGHXOb)?BAp;s&aAyUe;Qw*O?D9*yij@<>&4dtXcu!W~>(%&%O zvyiWC;H@E^4>q)$E&{LLPuf=BsFYk<@3PFzs;c)kYacy~IPOeQa2s$a#N>nH-8f~! zwKr_7>NZ$UG_nwjajXfKvt=eV`ziEz$R&wRMhZ)5=8$TfhYzP@@qA)L1~w#+piAq# z9s$P_;GGhn%oR|b7nJmzepDxl>J`AGHPM6+;g|J;il-yRfwuzmcDUPcxg3!r!mpWx zgt2^jR;2tzyyq{fEZ|rq_z0V-**ZyV*43`gb(h>@%MyKHzTK@^_jF#Tfhn`4s=>D? zCZaOFBJUb^!NmfzF{wcu95Qb(G_8YeeZ?|8HybLNjGOSWzAZc>F}-dLHma!mw)95z zLWQITi#X~;EnnJ`(eKb77M=Kf9bW!bZAGeY$7_meZ^MX7$d1@x&XQ)v^CH;tho4DK3QWpTH7;_kBM;;dMr2wB~m z)HhD9LQtYDGACQ>+QG3YK@(ILl#n{q;vi{iaN2BPV1EFxVMT@!ZvBDe@VCr3HyRjBEawz0Ibk|C#) z;INzy41BmIFBFUH+}j2KD}bbfzN{!3CvHaEv9E2EORgLk=r;AijSj6ii*sdQ3ZJs+ zC7f0t+1YO(R4tJHn_4v7mI{)O(m{Bo6vku6utb)4eq*|ZrVTqLq@9~#+QDbv69ien zdmk9Oh2)fQZ)KXo`n$GJd=+={$1@y{3a<_1Syu6$Y)Dih2Cosa&*9Hn>p~2AHP6r7 zLBFc2So+xChU5{}MX*qG-fxKCG9~rHNVp5N^2*tH=Ls92Q!4{HBtB_<&jUaHxXz-fXd6E(O%GGHBpNJfTxSI>DIYhblXe{zq$HvcQ*-_b!Ere=R@!xQi2E zLoCj_QJn0Ps)H0SjMF(RXm3u$q6q;F=@QpapUD>CfS0d#MaYoU*b-D8K^{l5Y4R>0 zE|c84Aii~BrflmddCJu3L7>;;Ypa96;VGTi{j}mOHk>L5J$;^;o40lO`u=WYop?(z zKBTi@Num?k2V~$Vx&S8G@_*~s|F+MPG!pBV@2er({nG=b`}kIVQ7C6LA)gW7Tp-QH z)~-wTY~#`O~PNRl;PIte2Fr4nL1>yr&v8xi+g|w># zv;wObIK9$o^BU~WyPhG^&D(C=hTvPx#7AOH=(nTmF$~8_Su0(}*dQL%gb+jzwwN-l zW5O6G9B95Vhv_LprX6GVE^bMLM50)B20jY^)_IAhph*iL$DH9Nu#1ifS&oYeX@-mw z$LZsrtWKG-E!Cf!l#E^}O`nI@{-(S2^7v7P^w+krA8QkCkKTuEb+*i|ijq1s1YQ?s zEk#`lDaeW2&rGKiI(No3o+TTC(hes`9pi@LL2QYfMKu)K>@nN4IiTVD=VAQu!T{oK>qpK~9^{}h5 z><&w>3@;&NduQ85?Tz1p_NSTcCKewVeVWG0;hEs_>#kD?8CX+~4P(EN)4h& zSbn~$QIAHx=&0y^(0AEsvz^DO%|I{a z$8G)Aq?##k9&+lB_^~u}oUsmd5}6fF(+S+J|1EPc;-GiLaFR3nQaGvAnq&lGKK2TX zi|$Dx_*_884X_exNnWF7Ii9~kr60xlY8IY);C~|(AMDKxx*Kyo)FHx?PnZ%@tpfxS z2H%7MJBCgSFt_L!gKk9lSoM_$b(|`#U)5NAhH%k4*iunx+uj`M4FLfa+l_6F-nQZ5 z`{C5>2G+rpr_Kn6v1`BJd_jc3CzqTXmnprnM+TZ`cmNpNLAnD4%(%C$9k%Yk(rp4Nu>J_g#SnIC&CF+{(7nOfHr23zl2 zP;-Nb>njTj2)4iA4!mKnj{%!&}w;Pl?UUCP)yX;y;Nu1)M?pL*_8FhKRm_%0o-W7nMz*p!rSY96(UG4E^IgEo zHQ9M}KkK#Q9C{qq85-&|P$m!}ykcQ2qx}k10n z%i4lrfo}0QEzBv;P@T0~8x$v4JDWKlweN}i{6xp%Y-q6gzG6g=C;s!w*zYVYrg_-m;KQ{JkNxa0 z9p6t6NAl&!o#30ciRVU6UOXD0%oN>r==QSf+3WtH0KC@{cbve)DX?3-`C~Gb{Mvd9{vJT#=xzhErA6Q3l5mo zdl50Kg_M-arK~+f7;&p$5vLiYuv@( z^GsfWk~9A}1ml=~r=jKhT~%(Ka93vXN>bz!?vZ`JZp(Wl%6C}{%PtMTExkKW$jx3` z8gS+oz6RIVHqnFc4IrkkTu=dPr#qLXmGXaLrwrq8h3tUZ4B|&;*7_{GxHp<-zSW#% z`^&t(-P<=>n!yZs1L4kqOpR8w&&%!D!-0x73Q)rqxRvWN73`Haq*C(f>|^D*T}Pp; z5kF2_aremF{on(8W#6MxKX)9~0>lX#+*O{;;UVts%qC`q<_G0_e~h2A{g=A|6$?Mb z-N@1^Z|@BI-Fshl@|hxYV!ipP_`b5P2IG#!Efc$48p=8hz0!5PJW>)oKGduas7SQ? zdKqxEx~#A5UYY0c+JWGUMWoX!2FgZ)Zw2LDH*)>CKJQGxAI(ii?Y)!o`g%H`hSP%| zXdB(Te?dMI$Nq6^@V4!OwXuA7ZKR>He1bW(9_A(?kF4cDHX?_LvU--m=s5 z6hRbhOSum`EjiiFcui$O&5gwi7w1!mQ{p6H(!RQ3Pb70xa6 zYSZiVGQ)f`1=TajqP;f`m<17OY^@59e_b5eYJO;3N@Eu-^D>yyv3re0?s>L7%)DGn z$Gyg&s~;?Ubb#g0%)NKAV^47HTu`E2jon2bEOqt1{d7>!#RFFUOQy#lw6q+<~oi@Wb*_D%fy193rXu3iGH3mqA?9 zu&aVufjXPt5gc5*!ojN`%9&bMj}q0aHLlq0qZy>P=)y6h@`1LAV$WD7!)(y$#d+8| zVfs9hK`W-R7AE5uebdFj@q0Y$n)k0;=et19ZwJS3Z%HOANYknB1M`BEd;h?)z@SE_ z(zO-whfBY=JlD|^RzfL-{jfkE5Y=OC%7PCB^O6z{1Rc=~YM>agHtS9ZN-~x#BXU29 zk^lLYvjBn$cIS4S?0{MaXtj2%zj2qptLjtlC4jUWgBniir|w9LzZ$l&YCf}K_rU!- z3%CZjg^k!^*FOxWEkkqJ?UzPEay)I?Dy+LRHrH(0gajWS(AYO+CjvU>G(Wd1bJKO) zr;SH|hPi3Uvu5VIJNiAdC|V_NG$_2(!8rYiVv|AXTB}yYZ^`D(c=lKZJlz_BYBOTs3U@0@V!!Kf=yE!04LJpX^Om%Va+1byv z-B={kgE(th>uw(ii44uO6)xHT0c4>VTQ}Cgs-AxjB^L)Z~nE{Rd_2f;Gt2 zz)t==#&C09U+J7wJDt14cFlHvajKnbGqJtSM9+T*CyEW+|6F#|$Tg_)o=L`vzBXW} zV`J1fV5qhXnR6esB%krg=SD=oRBTNORXe`{XTJt+Qu%8#)v>jVZDu*$#Y$neWB8}* z`)-Z|2WJ?gjrSxr=Y5>{m1gt2_PmPt(!5fBR~|6CfdRAxnB6^mo9O7LH%(R@z_Ov7 zE1ur6+e^K44P6&C<}@}2p$>Wo(=rHyr zS%A(HT6J*xn54F`@bm!UnaKcD05Rj9jf_+}Cm}w}-sn~~Aff{s1z*l@?+^PumJwDv zUS;b`+9xP;T-S4H0nksB{e7?ySXG}r
-
+
+ + + +
+
diff --git a/docs/listings.json b/docs/listings.json index 6a25062..32c6c28 100644 --- a/docs/listings.json +++ b/docs/listings.json @@ -2,6 +2,7 @@ { "listing": "/index.html", "items": [ + "/notebooks/2023-10-12_fastp-vs-adapterremoval.html", "/notebooks/2023-09-12_settled-solids-extraction-test.html" ] } diff --git a/docs/notebooks/2023-10-12_fastp-vs-adapterremoval.html b/docs/notebooks/2023-10-12_fastp-vs-adapterremoval.html new file mode 100644 index 0000000..7893087 --- /dev/null +++ b/docs/notebooks/2023-10-12_fastp-vs-adapterremoval.html @@ -0,0 +1,934 @@ + + + + + + + + +Will’s Public NAO Notebook - Comparing FASTP and AdapterRemoval for MGS pre-processing + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+

Comparing FASTP and AdapterRemoval for MGS pre-processing

+

Two tools – how do they perform?

+
+
+ + +
+ +
+
Author
+
+

Will Bradshaw

+
+
+ +
+
Published
+
+

October 21, 2023

+
+
+ + +
+ + +
+ + + + +

See also:

+
    +
  • […]
  • +
+

The first major step in our current MGS pipeline uses AdapterRemoval to automatically identify and remove sequencing adapters, as well as trimming low-quality bases and collapsing overlapping read pairs (it can also discard low-quality reads entirely, but our current pipeline doesn’t use this). An alternative tool, that can do all of this as well as read deduplication, is fastp. I asked the pipeline’s current primary maintainer if there was a good reason we were using one tool instead of the other, and he said that there wasn’t. So I decided to do a shallow investigation of their relative behavior on some example MGS datasets to see how they compare.

+

The data

+

To carry out this test, I selected three pairs of raw Illumina FASTQC files, corresponding to one sample each from two different published studies as well as one dataset provided to us by Marc Johnson:

+ + + + + + + + + + + + + + + + + + + + + + + +
StudyBioprojectSample
Rothman et al. (2021)PRJNA729801SRR19607374
Crits-Cristoph et al. (2021)PRJNA661613SRR23998357
Johnson (2023)N/ACOMO4
+

For each sample, I generated FASTQC report files for the raw data, then ran FASTP and AdapterRemoval independently on the FASTQ files and tabulated the results

+

The commands

+

For processing with FASTP, I ran the following command:

+
fastp -i <raw-reads-1> -I <raw-reads-2> -o <output-path-1> -O <output-path-2> --failed_out <output-path-failed-reads> --cut_tail --correction
+

(I didn’t run deduplication for this test, as AdapterRemoval doesn’t have that functionality.)

+

For processing with AdapterRemoval, I first ran the following command to identify adapters:

+
AdapterRemoval --file1 <raw-reads-1> --file2 <raw-reads-2> --identify-adapters --threads 4 > adapter_report.txt
+

I then ran the following command to actually carry out pre-processing, using the adapter sequences identified in the previous step (NB the minlength: and maxns values are chosen to match the FASTP defaults):

+
AdapterRemoval --file1 <raw-reads-1> --file2 <raw-reads-2> --basename <output-prefix> --adapter1 <adapter1> --adapter2 <adapter2> --gzip --trimns --trimqualities --minlength 15 --maxns 5
+

1. Rothman et al. (SRR19607374)

+

This sample from Rothman et al. contains 11.58M read pairs in the raw FASTQ files.

+

FASTP:

+
    +
  • Running FASTP took a total of 39 seconds.

  • +
  • FASTP detected and trimmed adapters on 3.88M reads (note: not read pairs).

  • +
  • A total of 133 Mb of sequence was trimmed due to adapter trimming, and 55 Mb due to other trimming processes, for a total of 188 Mb of trimmed sequence.

  • +
  • A total of 367,938 read pairs were discarded due to failing various filters, leaving 11.21M read pairs remaining.

  • +
+

AdapterRemoval:

+
    +
  • Running AdapterRemoval took a total of 323.9 seconds (a bit under 5.5 minutes).

  • +
  • AdapterRemoval detected and trimmed adapters on 3.96M reads (note: again, not read pairs).

  • +
  • A total of 135 Mb of sequence was trimmed across all reads; the information isn’t provided to distinguish trimmed adapter sequences vs other trimming.

  • +
  • Only 2,347 read pairs were discarded due to failing various filters, leaving the final read number almost unchanged.

  • +
+
+
Code
# Calculate read allocations for Rothman
+status = c("raw", "fastp", "AdapterRemoval")
+bp_passed = c(1748896043+1748896043,1627794563+1627794563,1681118328+1681115431)
+bp_discarded = c(0,54014538,276107+271850)
+bp_trimmed = c(0,bp_passed[1]-bp_passed[2]-bp_discarded[2],bp_passed[1]-bp_passed[3]-bp_discarded[3])
+# Tabulate
+tab_rothman <- tibble(status = status, bp_passed = bp_passed, bp_discarded = bp_discarded, bp_trimmed = bp_trimmed)
+tab_rothman
+
+ +
+ +
+
+
Code
# Visualize
+tab_rothman_gathered <- gather(tab_rothman, key = sequence_group, value = bp, -status) |>
+  mutate(sequence_group = sub("bp_", "", sequence_group),
+         sequence_group = factor(sequence_group, 
+                                 levels = c("passed", "trimmed", "discarded")),
+         status = factor(status, levels = c("raw", "fastp", "AdapterRemoval")))
+g_rothman <- ggplot(tab_rothman_gathered, aes(x=status, y=bp, fill = sequence_group)) +
+  geom_col(position = "stack") + scale_fill_brewer(palette = "Dark2") + 
+  theme_base + theme(axis.title.x = element_blank())
+g_rothman
+
+

+
+
+

FASTQC results:

+
    +
  • Prior to adapter removal with either tool, the sequencing reads appear good quality, with a consistent average quality score of 30 across all bases in the forward read and ~29 in the reverse read. FASTP successfully raises the average quality score in the reverse read to 30 through trimming and read filtering, while AdapterRemoval leaves it unchanged.

  • +
  • FASTQC judges the data to have iffy sequence composition (%A/C/G/T); neither tool affects this much.

  • +
  • All reads in the raw data are 151bp long; unsurprisingly, trimming by both tools results in a left tail in the sequencing length distribution that was absent in the raw data.

  • +
  • As previously observed, the raw data has very high duplicate levels, with only ~26% of sequences estimated by FASTQC to remain after deduplication. Increasing the comparison window to 100bp (from a default of 50bp) increases this to ~35%. Neither tool has much effect on this number – unsurprisingly, since neither carried out deduplication.

  • +
  • Finally, adapter removal. Unsurprisingly, the raw data shows substantial adapter content. AdapterRemoval does a good job of removing adapters, resulting in a “pass” grade from FASTQC. Surprisingly, despite trimming adapters from fewer reads, fastp does even better (according to FASTQC) at removing adapters.

  • +
  • +

    The images below show raw, fastp, and AR adapter content:

    +
      +
    • +
    • +
    • +
    +
  • +

2. Crits-Christoph et al. (SRR23998357)

+

This sample from Rothman et al. contains 48.46M read pairs in the raw FASTQ files.

+

FASTP:

+
    +
  • Running FASTP took a total of 99 seconds.

  • +
  • FASTP detected and trimmed adapters on 13.41M reads (note: not read pairs).

  • +
  • A total of 270 Mb of sequence was trimmed due to adapter trimming, and 43 Mb due to other trimming processes, for a total of 313 Mb of trimmed sequence.

  • +
  • A total of 1.99M read pairs were discarded due to failing various filters, leaving 47.47M read pairs remaining.

  • +
+

AdapterRemoval:

+
    +
  • Running AdapterRemoval took a total of 1041.3 seconds (a bit over 17 minutes).

  • +
  • AdapterRemoval detected and trimmed adapters on 8.22M reads (note: again, not read pairs).

  • +
  • A total of 93.7 Mb of sequence was trimmed across all reads; the information isn’t provided to distinguish trimmed adapter sequences vs other trimming.

  • +
  • Only 32,381 read pairs were discarded due to failing various filters, leaving the final read number (again) almost unchanged.

  • +
+
+
Code
# Calculate read allocations for CritsCristoph
+status = c("raw", "fastp", "AdapterRemoval")
+bp_passed_cc = c(3683175308+3683175308,3465517525+3467624847,3634186441+3634143668)
+bp_discarded_cc = c(0,120701257,2057612+2224529)
+bp_trimmed_cc = c(0,bp_passed_cc[1]-bp_passed_cc[2]-bp_discarded_cc[2],bp_passed_cc[1]-bp_passed_cc[3]-bp_discarded_cc[3])
+# Tabulate
+tab_cc <- tibble(status = status, bp_passed = bp_passed_cc, bp_discarded = bp_discarded_cc, bp_trimmed = bp_trimmed_cc)
+tab_cc
+
+ +
+ +
+
+
Code
# Visualize
+tab_cc_gathered <- gather(tab_cc, key = sequence_group, value = bp, -status) |>
+  mutate(sequence_group = sub("bp_", "", sequence_group),
+         sequence_group = factor(sequence_group, 
+                                 levels = c("passed", "trimmed", "discarded")),
+         status = factor(status, levels = c("raw", "fastp", "AdapterRemoval")))
+g_cc <- ggplot(tab_cc_gathered, aes(x=status, y=bp, fill = sequence_group)) +
+  geom_col(position = "stack") + scale_fill_brewer(palette = "Dark2") + 
+  theme_base + theme(axis.title.x = element_blank())
+g_cc
+
+

+
+
+

FASTQC results:

+
    +
  • As with Rothman, the raw data shows good sequence quality (though with some tailing off at later read positions), poor sequence composition, uniform read length (76bp in this case) and high numbers of duplicates. They also, unsurprisingly, have high adaptor content.

  • +
  • As with Rothman, fastp successfully improves read quality scores, while AdapterRemoval has little effect. Also as with Rothman, neither tool (as configured) has much effect on sequence composition or duplicates.

  • +
  • +

    In this case, fastp is highly effective at removing adapter sequences, while AdapterRemoval is only weakly effective. I wonder if I misconfigured AR somehow, because I’m surprised at how many adapter sequences remain in this case. The images below show raw, fastp, and AR adapter content:

    +
      +
    • +
    • +
    • +
    +
  • +

3. Johnson (COMO4)

+

This sample from Johnson contains 15.58M read pairs in the raw FASTQ files.

+

FASTP:

+
    +
  • Running FASTP took a total of 33 seconds.

  • +
  • FASTP detected and trimmed adapters on 158,114 reads (note: not read pairs).

  • +
  • A total of 1.3 Mb of sequence was trimmed due to adapter trimming, and 14.6 Mb due to other trimming processes, for a total of 15.9 Mb of trimmed sequence.

  • +
  • A total of 0.33M read pairs were discarded due to failing various filters, leaving 15.25M read pairs remaining.

  • +
+

AdapterRemoval:

+
    +
  • Running AdapterRemoval took a total of 311.4 seconds (a bit over 5 minutes).

  • +
  • AdapterRemoval detected and trimmed adapters on 155,360 reads (note: again, not read pairs).

  • +
  • A total of 93.7 Mb of sequence was trimmed across all reads; the information isn’t provided to distinguish trimmed adapter sequences vs other trimming.

  • +
  • Only 5,512 read pairs were discarded due to failing various filters, leaving the final read number (again) almost unchanged.

  • +
+

FASTQC results:

+
    +
  • As with previous samples, the raw data shows good sequence quality (though with some tailing off at later read positions), poor sequence composition, uniform read length (76bp again) and high numbers of duplicates.

  • +
  • Unlike previous samples, the raw data for this sample shows very low adapter content – plausibly they underwent adapter trimming before they were sent to us?

  • +
  • Neither tool achieves much visible improvement on adapter content – unsurprisingly, given the very low levels in the raw data.

  • +
+
+
Code
# Calculate read allocations for Johnson
+status = c("raw", "fastp", "AdapterRemoval")
+bp_passed_como = c(1183987584+1183987584,1157539804+1157540364,1182999562+1182970312)
+bp_discarded_como = c(0,36950446,418230+257734)
+bp_trimmed_como = c(0,bp_passed_como[1]-bp_passed_como[2]-bp_discarded_como[2],bp_passed_como[1]-bp_passed_como[3]-bp_discarded_como[3])
+# Tabulate
+tab_como <- tibble(status = status, bp_passed = bp_passed_como, bp_discarded = bp_discarded_como, bp_trimmed = bp_trimmed_como)
+tab_como
+
+ +
+ +
+
+
Code
# Visualize
+tab_como_gathered <- gather(tab_como, key = sequence_group, value = bp, -status) |>
+  mutate(sequence_group = sub("bp_", "", sequence_group),
+         sequence_group = factor(sequence_group, 
+                                 levels = c("passed", "trimmed", "discarded")),
+         status = factor(status, levels = c("raw", "fastp", "AdapterRemoval")))
+g_cc <- ggplot(tab_como_gathered, aes(x=status, y=bp, fill = sequence_group)) +
+  geom_col(position = "stack") + scale_fill_brewer(palette = "Dark2") + 
+  theme_base + theme(axis.title.x = element_blank())
+g_cc
+
+

+
+
+

Deduplication with fastp

+

Given that all three of these samples contain high levels of sequence duplicates, I was curious to see to what degree fastp was able to improve on this metric. To test this, I reran fastp on all three samples, with the --dedup option enabled. I observed the following:

+
    +
  • Runtimes were consistently very slightly longer than without deduplication.

  • +
  • The number of successful output reads declined from 11.21M to 9.29M for the Rothman sample, from 47.47M to 31.47M, and from 15.25M to 11.03M for the Johnson sample.

  • +
  • Relative to the raw data, and using the default FASTQC settings, the predicted fraction of reads surviving deduplication rose from 26% to 29% for the Rothman sample, from 45% to 64% for the Crits-Cristoph sample, and from 26% to 32% for the Johnson sample, following fastp deduplication. That is to say, by this metric, deduplication was mildly but not very effective.

  • +
  • This relative lack of efficacy may simply be because FASTP identifies duplicates as read pairs that are entirely identical in sequence, while FASTQC only looks at the first 50 base pairs of each read in isolation.

  • +
  • I think I need to learn more about read duplicates and deduplication before I have strong takeaways here.

  • +

Conclusions

+

Taken together, I think these data make a decent case for using FASTP, rather than AdapterRemoval, for pre-processing and adapter trimming.

+
    +
  • FASTP is much faster than AdapterRemoval.

  • +
  • For those samples with high adapter content, FASTP appeared more effective than AdapterRemoval at removing adapters, at least for those adapter sequences that could be detected by FASTQC.

  • +
  • FASTP provides substantially more functionality than AdapterRemoval, making it easier for us to add additional preprocessing steps like read filtering and (some) deduplication down the line.

  • +
+ + + + +
+
+ + + + \ No newline at end of file diff --git a/docs/notebooks/2023-10-12_fastp-vs-adapterremoval_files/figure-html/unnamed-chunk-2-1.png b/docs/notebooks/2023-10-12_fastp-vs-adapterremoval_files/figure-html/unnamed-chunk-2-1.png new file mode 100644 index 0000000000000000000000000000000000000000..d3d13cd0c07282acc7dd4932d9a43833d6495db6 GIT binary patch literal 51332 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 z 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 literal 0 HcmV?d00001 diff --git a/docs/notebooks/2023-10-12_fastp-vs-adapterremoval_files/figure-html/unnamed-chunk-3-1.png b/docs/notebooks/2023-10-12_fastp-vs-adapterremoval_files/figure-html/unnamed-chunk-3-1.png new file mode 100644 index 0000000000000000000000000000000000000000..eef62bf987b2ad41cb2c3a46e8f675315089b0af GIT binary patch literal 51516 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�gNJiqs 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 ReP6U_)9aD1Rs4C^{{sglzC-{3 literal 0 HcmV?d00001 diff --git a/img/2023-10-12_cc-fastqc-adapters-raw.png b/img/2023-10-12_cc-fastqc-adapters-raw.png new file mode 100644 index 0000000000000000000000000000000000000000..7adc8e68c815f4e55fa148bbec43b92a1650347a GIT binary patch literal 58536 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 literal 0 HcmV?d00001 diff --git a/img/2023-10-12_rothman-fastqc-adapters-ar.png b/img/2023-10-12_rothman-fastqc-adapters-ar.png new file mode 100644 index 0000000000000000000000000000000000000000..0c8be2f21ff9b66029ad786e57703d4911ff27f3 GIT binary patch literal 39540 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 BE>Zvh literal 0 HcmV?d00001 diff --git a/img/2023-10-12_rothman-fastqc-adapters-raw.png b/img/2023-10-12_rothman-fastqc-adapters-raw.png new file mode 100644 index 0000000000000000000000000000000000000000..ab3f01da678798c9b039ec306faee9abed55c1ad GIT binary patch literal 42246 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 -I -o -O --failed_out --cut_tail --correction +``` + +(I didn't run deduplication for this test, as AdapterRemoval doesn't have that functionality.) + +For processing with AdapterRemoval, I first ran the following command to identify adapters: + +``` +AdapterRemoval --file1 --file2 --identify-adapters --threads 4 > adapter_report.txt +``` + +I then ran the following command to actually carry out pre-processing, using the adapter sequences identified in the previous step (NB the `minlength`: and `maxns` values are chosen to match the FASTP defaults): + +``` +AdapterRemoval --file1 --file2 --basename --adapter1 --adapter2 --gzip --trimns --trimqualities --minlength 15 --maxns 5 +``` + +# 1. Rothman et al. (SRR19607374) + +This sample from Rothman et al. contains **11.58M** read pairs in the raw FASTQ files. + +**FASTP:** + +- Running FASTP took a total of **39 seconds**. + +- FASTP detected and trimmed adapters on **3.88M reads** (note: *not* read pairs). + +- A total of 133 Mb of sequence was trimmed due to adapter trimming, and 55 Mb due to other trimming processes, for a total of **188 Mb of trimmed sequence**. + +- A total of **367,938 read pairs** were discarded due to failing various filters, leaving **11.21M read pairs** remaining. + +**AdapterRemoval:** + +- Running AdapterRemoval took a total of **323.9 seconds** (a bit under 5.5 minutes). + +- AdapterRemoval detected and trimmed adapters on **3.96M reads** (note: again, not read pairs). + +- A total of **135 Mb** of sequence was trimmed across all reads; the information isn't provided to distinguish trimmed adapter sequences vs other trimming. + +- Only 2,347 read pairs were discarded due to failing various filters, leaving the final read number almost unchanged. + +```{r} +# Calculate read allocations for Rothman +status = c("raw", "fastp", "AdapterRemoval") +bp_passed = c(1748896043+1748896043,1627794563+1627794563,1681118328+1681115431) +bp_discarded = c(0,54014538,276107+271850) +bp_trimmed = c(0,bp_passed[1]-bp_passed[2]-bp_discarded[2],bp_passed[1]-bp_passed[3]-bp_discarded[3]) +# Tabulate +tab_rothman <- tibble(status = status, bp_passed = bp_passed, bp_discarded = bp_discarded, bp_trimmed = bp_trimmed) +tab_rothman +# Visualize +tab_rothman_gathered <- gather(tab_rothman, key = sequence_group, value = bp, -status) |> + mutate(sequence_group = sub("bp_", "", sequence_group), + sequence_group = factor(sequence_group, + levels = c("passed", "trimmed", "discarded")), + status = factor(status, levels = c("raw", "fastp", "AdapterRemoval"))) +g_rothman <- ggplot(tab_rothman_gathered, aes(x=status, y=bp, fill = sequence_group)) + + geom_col(position = "stack") + scale_fill_brewer(palette = "Dark2") + + theme_base + theme(axis.title.x = element_blank()) +g_rothman +``` + +**FASTQC results:** + +- Prior to adapter removal with either tool, the sequencing reads appear good quality, with a consistent average quality score of 30 across all bases in the forward read and \~29 in the reverse read. FASTP successfully raises the average quality score in the reverse read to 30 through trimming and read filtering, while AdapterRemoval leaves it unchanged. + +- FASTQC judges the data to have iffy sequence composition (%A/C/G/T); neither tool affects this much. + +- All reads in the raw data are 151bp long; unsurprisingly, trimming by both tools results in a left tail in the sequencing length distribution that was absent in the raw data. + +- As previously observed, the raw data has very high duplicate levels, with only \~26% of sequences estimated by FASTQC to remain after deduplication. Increasing the comparison window to 100bp (from a default of 50bp) increases this to \~35%. Neither tool has much effect on this number -- unsurprisingly, since neither carried out deduplication. + +- Finally, adapter removal. Unsurprisingly, the raw data shows substantial adapter content. AdapterRemoval does a good job of removing adapters, resulting in a "pass" grade from FASTQC. Surprisingly, despite trimming adapters from fewer reads, fastp does even better (according to FASTQC) at removing adapters. + +- The images below show raw, fastp, and AR adapter content: + + - ![](/img/2023-10-12_rothman-fastqc-adapters-raw.png) + + - ![](/img/2023-10-12_rothman-fastqc-adapters-fastp.png) + + - ![](/img/2023-10-12_rothman-fastqc-adapters-ar.png) + +# 2. Crits-Christoph et al. (SRR23998357) + +This sample from Rothman et al. contains **48.46M** read pairs in the raw FASTQ files. + +**FASTP:** + +- Running FASTP took a total of **99 seconds**. + +- FASTP detected and trimmed adapters on **13.41M reads** (note: *not* read pairs). + +- A total of 270 Mb of sequence was trimmed due to adapter trimming, and 43 Mb due to other trimming processes, for a total of **313 Mb of trimmed sequence**. + +- A total of **1.99M read pairs** were discarded due to failing various filters, leaving **47.47M read pairs** remaining. + +**AdapterRemoval:** + +- Running AdapterRemoval took a total of **1041.3 seconds** (a bit over 17 minutes). + +- AdapterRemoval detected and trimmed adapters on **8.22M reads** (note: again, not read pairs). + +- A total of **93.7 Mb** of sequence was trimmed across all reads; the information isn't provided to distinguish trimmed adapter sequences vs other trimming. + +- Only **32,381** read pairs were discarded due to failing various filters, leaving the final read number (again) almost unchanged. + +```{r} +# Calculate read allocations for CritsCristoph +status = c("raw", "fastp", "AdapterRemoval") +bp_passed_cc = c(3683175308+3683175308,3465517525+3467624847,3634186441+3634143668) +bp_discarded_cc = c(0,120701257,2057612+2224529) +bp_trimmed_cc = c(0,bp_passed_cc[1]-bp_passed_cc[2]-bp_discarded_cc[2],bp_passed_cc[1]-bp_passed_cc[3]-bp_discarded_cc[3]) +# Tabulate +tab_cc <- tibble(status = status, bp_passed = bp_passed_cc, bp_discarded = bp_discarded_cc, bp_trimmed = bp_trimmed_cc) +tab_cc +# Visualize +tab_cc_gathered <- gather(tab_cc, key = sequence_group, value = bp, -status) |> + mutate(sequence_group = sub("bp_", "", sequence_group), + sequence_group = factor(sequence_group, + levels = c("passed", "trimmed", "discarded")), + status = factor(status, levels = c("raw", "fastp", "AdapterRemoval"))) +g_cc <- ggplot(tab_cc_gathered, aes(x=status, y=bp, fill = sequence_group)) + + geom_col(position = "stack") + scale_fill_brewer(palette = "Dark2") + + theme_base + theme(axis.title.x = element_blank()) +g_cc +``` + +**FASTQC results:** + +- As with Rothman, the raw data shows good sequence quality (though with some tailing off at later read positions), poor sequence composition, uniform read length (76bp in this case) and high numbers of duplicates. They also, unsurprisingly, have high adaptor content. + +- As with Rothman, fastp successfully improves read quality scores, while AdapterRemoval has little effect. Also as with Rothman, neither tool (as configured) has much effect on sequence composition or duplicates. + +- In this case, fastp is highly effective at removing adapter sequences, while AdapterRemoval is only weakly effective. I wonder if I misconfigured AR somehow, because I'm surprised at how many adapter sequences remain in this case. The images below show raw, fastp, and AR adapter content: + + - ![](/img/2023-10-12_cc-fastqc-adapters-raw.png) + + - ![](/img/2023-10-12_cc-fastqc-adapters-fastp.png) + + - ![](/img/2023-10-12_cc-fastqc-adapters-ar.png) + +# 3. Johnson (COMO4) + +This sample from Johnson contains **15.58M** read pairs in the raw FASTQ files. + +**FASTP:** + +- Running FASTP took a total of **33 seconds**. + +- FASTP detected and trimmed adapters on **158,114 reads** (note: *not* read pairs). + +- A total of 1.3 Mb of sequence was trimmed due to adapter trimming, and 14.6 Mb due to other trimming processes, for a total of **15.9 Mb of trimmed sequence**. + +- A total of **0.33M read pairs** were discarded due to failing various filters, leaving **15.25M read pairs** remaining. + +**AdapterRemoval:** + +- Running AdapterRemoval took a total of **311.4 seconds** (a bit over 5 minutes). + +- AdapterRemoval detected and trimmed adapters on **155,360 reads** (note: again, not read pairs). + +- A total of **93.7 Mb** of sequence was trimmed across all reads; the information isn't provided to distinguish trimmed adapter sequences vs other trimming. + +- Only **5,512** read pairs were discarded due to failing various filters, leaving the final read number (again) almost unchanged. + +**FASTQC results:** + +- As with previous samples, the raw data shows good sequence quality (though with some tailing off at later read positions), poor sequence composition, uniform read length (76bp again) and high numbers of duplicates. + +- Unlike previous samples, the raw data for this sample shows very low adapter content -- plausibly they underwent adapter trimming before they were sent to us? + +- Neither tool achieves much visible improvement on adapter content -- unsurprisingly, given the very low levels in the raw data. + +```{r} +# Calculate read allocations for Johnson +status = c("raw", "fastp", "AdapterRemoval") +bp_passed_como = c(1183987584+1183987584,1157539804+1157540364,1182999562+1182970312) +bp_discarded_como = c(0,36950446,418230+257734) +bp_trimmed_como = c(0,bp_passed_como[1]-bp_passed_como[2]-bp_discarded_como[2],bp_passed_como[1]-bp_passed_como[3]-bp_discarded_como[3]) +# Tabulate +tab_como <- tibble(status = status, bp_passed = bp_passed_como, bp_discarded = bp_discarded_como, bp_trimmed = bp_trimmed_como) +tab_como +# Visualize +tab_como_gathered <- gather(tab_como, key = sequence_group, value = bp, -status) |> + mutate(sequence_group = sub("bp_", "", sequence_group), + sequence_group = factor(sequence_group, + levels = c("passed", "trimmed", "discarded")), + status = factor(status, levels = c("raw", "fastp", "AdapterRemoval"))) +g_cc <- ggplot(tab_como_gathered, aes(x=status, y=bp, fill = sequence_group)) + + geom_col(position = "stack") + scale_fill_brewer(palette = "Dark2") + + theme_base + theme(axis.title.x = element_blank()) +g_cc +``` + +# Deduplication with fastp + +Given that all three of these samples contain high levels of sequence duplicates, I was curious to see to what degree fastp was able to improve on this metric. To test this, I reran fastp on all three samples, with the `--dedup` option enabled. I observed the following: + +- Runtimes were consistently very slightly longer than without deduplication. + +- The number of successful output reads declined from 11.21M to 9.29M for the Rothman sample, from 47.47M to 31.47M, and from 15.25M to 11.03M for the Johnson sample. + +- Relative to the raw data, and using the default FASTQC settings, the predicted fraction of reads surviving deduplication rose from 26% to 29% for the Rothman sample, from 45% to 64% for the Crits-Cristoph sample, and from 26% to 32% for the Johnson sample, following fastp deduplication. That is to say, by this metric, deduplication was mildly but not very effective. + +- This relative lack of efficacy may simply be because FASTP identifies duplicates as read pairs that are entirely identical in sequence, while FASTQC only looks at the first 50 base pairs of each read in isolation. + +- I think I need to learn more about read duplicates and deduplication before I have strong takeaways here. + +# Conclusions + +Taken together, I think these data make a decent case for using FASTP, rather than AdapterRemoval, for pre-processing and adapter trimming. + +- FASTP is much faster than AdapterRemoval. + +- For those samples with high adapter content, FASTP appeared more effective than AdapterRemoval at removing adapters, at least for those adapter sequences that could be detected by FASTQC. + +- FASTP provides substantially more functionality than AdapterRemoval, making it easier for us to add additional preprocessing steps like read filtering and (some) deduplication down the line.