From 8ebefab1d70c12f0eefde97d448a9c0e40672368 Mon Sep 17 00:00:00 2001 From: Saskia Hiltemann <saskia.hiltemann@pharmazie.uni-freiburg.de> Date: Wed, 11 Oct 2023 15:30:17 +0200 Subject: [PATCH] add code --- ...ur_methods_noiseqbio_hoecker_20210527.html | 1064 +++++++++++++++++ ...aseqhoecker 3d_pca_plot_hoecker_20210527.r | 308 +++++ 2 files changed, 1372 insertions(+) create mode 100644 workflows/personal haasf 2021 madland new_deg_pipe_four_methods_noiseqbio_hoecker_20210527.html create mode 100644 workflows/personal haasf 2021 madland rnaseqhoecker 3d_pca_plot_hoecker_20210527.r diff --git a/workflows/personal haasf 2021 madland new_deg_pipe_four_methods_noiseqbio_hoecker_20210527.html b/workflows/personal haasf 2021 madland new_deg_pipe_four_methods_noiseqbio_hoecker_20210527.html new file mode 100644 index 0000000..0a44557 --- /dev/null +++ b/workflows/personal haasf 2021 madland new_deg_pipe_four_methods_noiseqbio_hoecker_20210527.html @@ -0,0 +1,1064 @@ +<!DOCTYPE html> +<html lang="en" dir="ltr" class="no-js"> +<head> + <meta charset="utf-8" /> + <title>personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527 [DataWiki]</title> + <script>(function(H){H.className=H.className.replace(/\bno-js\b/,'js')})(document.documentElement)</script> + <meta name="generator" content="DokuWiki"/> +<meta name="theme-color" content="#008800"/> +<meta name="robots" content="index,follow"/> +<meta name="keywords" content="personal,haasf,2021,madland,new_deg_pipe_four_methods_noiseqbio_hoecker_20210527"/> +<link rel="search" type="application/opensearchdescription+xml" href="/lab/wiki/lib/exe/opensearch.php" title="DataWiki"/> +<link rel="start" href="/lab/wiki/"/> +<link rel="contents" href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=index" title="Sitemap"/> +<link rel="manifest" href="/lab/wiki/lib/exe/manifest.php"/> +<link rel="alternate" type="application/rss+xml" title="Recent Changes" href="/lab/wiki/feed.php"/> +<link rel="alternate" type="application/rss+xml" title="Current namespace" href="/lab/wiki/feed.php?mode=list&ns=personal:haasf:2021:madland"/> +<link rel="edit" title="Edit this page" href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=edit"/> +<link rel="alternate" type="text/html" title="Plain HTML" href="/lab/wiki/_export/xhtml/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527"/> +<link rel="alternate" type="text/plain" title="Wiki Markup" href="/lab/wiki/_export/raw/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527"/> +<link rel="canonical" href="https://plantcode.cup.uni-freiburg.de/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527"/> +<link rel="stylesheet" href="/lab/wiki/lib/exe/css.php?t=dokuwiki&tseed=a9de8a0d5a8e7168381d427189602bc9"/> +<!--[if gte IE 9]><!--> +<script >/*<![CDATA[*/var NS='personal:haasf:2021:madland';var SIG=" --- \/\/[[saskiahiltemann@gmail.com|Saskia Hiltemann]] 2023\/10\/11 13:15\/\/";var JSINFO = {"plugins":{"edittable":{"default columnwidth":""}},"id":"personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527","namespace":"personal:haasf:2021:madland","ACT":"show","useHeadingNavigation":1,"useHeadingContent":1}; +/*!]]>*/</script> +<script charset="utf-8" src="/lab/wiki/lib/exe/jquery.php?tseed=34a552433bc33cc9c3bc32527289a0b2" defer="defer"></script> +<script charset="utf-8" src="/lab/wiki/lib/exe/js.php?t=dokuwiki&tseed=a9de8a0d5a8e7168381d427189602bc9" defer="defer"></script> +<!--<![endif]--> + <meta name="viewport" content="width=device-width,initial-scale=1" /> + <link rel="shortcut icon" href="/lab/wiki/lib/tpl/dokuwiki/images/favicon.ico" /> +<link rel="apple-touch-icon" href="/lab/wiki/lib/tpl/dokuwiki/images/apple-touch-icon.png" /> + </head> + +<body> + <div id="dokuwiki__site"><div id="dokuwiki__top" class="site dokuwiki mode_show tpl_dokuwiki loggedIn "> + + +<!-- ********** HEADER ********** --> +<div id="dokuwiki__header"><div class="pad group"> + + + <div class="headings group"> + <ul class="a11y skip"> + <li><a href="#dokuwiki__content">skip to content</a></li> + </ul> + + <h1><a href="/lab/wiki/start" accesskey="h" title="[H]"><img src="/lab/wiki/lib/tpl/dokuwiki/images/logo.png" width="64" height="64" alt="" /> <span>DataWiki</span></a></h1> + </div> + + <div class="tools group"> + <!-- USER TOOLS --> + <div id="dokuwiki__usertools"> + <h3 class="a11y">User Tools</h3> + <ul> + <li class="user">Logged in as: <bdi>Saskia Hiltemann</bdi> (<bdi>saskia</bdi>)</li><li class="action profile"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=profile" title="Update Profile" rel="nofollow"><span>Update Profile</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M2 3h20c1.05 0 2 .95 2 2v14c0 1.05-.95 2-2 2H2c-1.05 0-2-.95-2-2V5c0-1.05.95-2 2-2m12 3v1h8V6h-8m0 2v1h8V8h-8m0 2v1h7v-1h-7m-6 3.91C6 13.91 2 15 2 17v1h12v-1c0-2-4-3.09-6-3.09M8 6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3z"/></svg></a></li><li class="action admin"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=admin" title="Admin" rel="nofollow"><span>Admin</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 15.5A3.5 3.5 0 0 1 8.5 12 3.5 3.5 0 0 1 12 8.5a3.5 3.5 0 0 1 3.5 3.5 3.5 3.5 0 0 1-3.5 3.5m7.43-2.53c.04-.32.07-.64.07-.97 0-.33-.03-.66-.07-1l2.11-1.63c.19-.15.24-.42.12-.64l-2-3.46c-.12-.22-.39-.31-.61-.22l-2.49 1c-.52-.39-1.06-.73-1.69-.98l-.37-2.65A.506.506 0 0 0 14 2h-4c-.25 0-.46.18-.5.42l-.37 2.65c-.63.25-1.17.59-1.69.98l-2.49-1c-.22-.09-.49 0-.61.22l-2 3.46c-.13.22-.07.49.12.64L4.57 11c-.04.34-.07.67-.07 1 0 .33.03.65.07.97l-2.11 1.66c-.19.15-.25.42-.12.64l2 3.46c.12.22.39.3.61.22l2.49-1.01c.52.4 1.06.74 1.69.99l.37 2.65c.04.24.25.42.5.42h4c.25 0 .46-.18.5-.42l.37-2.65c.63-.26 1.17-.59 1.69-.99l2.49 1.01c.22.08.49 0 .61-.22l2-3.46c.12-.22.07-.49-.12-.64l-2.11-1.66z"/></svg></a></li><li class="action logout"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=logout&sectok=82d4f55b849f74a21b9e52ddbd99f445" title="Log Out" rel="nofollow"><span>Log Out</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M17 17.25V14h-7v-4h7V6.75L22.25 12 17 17.25M13 2a2 2 0 0 1 2 2v4h-2V4H4v16h9v-4h2v4a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9z"/></svg></a></li> </ul> + </div> + + <!-- SITE TOOLS --> + <div id="dokuwiki__sitetools"> + <h3 class="a11y">Site Tools</h3> + <form action="/lab/wiki/start" method="get" role="search" class="search doku_form" id="dw__search" accept-charset="utf-8"><input type="hidden" name="do" value="search" /><input type="hidden" name="id" value="personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527" /><div class="no"><input name="q" type="text" class="edit" title="[F]" accesskey="f" placeholder="Search" autocomplete="on" id="qsearch__in" value="" /><button value="1" type="submit" title="Search">Search</button><div id="qsearch__out" class="ajax_qsearch JSpopup"></div></div></form> <div class="mobileTools"> + <form action="/lab/wiki/doku.php" method="get" accept-charset="utf-8"><div class="no"><input type="hidden" name="id" value="personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527" /><input type="hidden" name="sectok" value="82d4f55b849f74a21b9e52ddbd99f445" /><select name="do" class="edit quickselect" title="Tools"><option value="">Tools</option><optgroup label="Page Tools"><option value="edit">Edit this page</option><option value="revisions">Old revisions</option><option value="export_pdf">Export to PDF</option><option value="backlink">Backlinks</option></optgroup><optgroup label="Site Tools"><option value="recent">Recent Changes</option><option value="media">Media Manager</option><option value="index">Sitemap</option></optgroup><optgroup label="User Tools"><option value="profile">Update Profile</option><option value="admin">Admin</option><option value="logout">Log Out</option></optgroup></select><button type="submit">></button></div></form> </div> + <ul> + <li class="action recent"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=recent" title="Recent Changes [r]" rel="nofollow" accesskey="r">Recent Changes</a></li><li class="action media"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=media&ns=personal%3Ahaasf%3A2021%3Amadland" title="Media Manager" rel="nofollow">Media Manager</a></li><li class="action index"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=index" title="Sitemap [x]" rel="nofollow" accesskey="x">Sitemap</a></li> </ul> + </div> + + </div> + + <!-- BREADCRUMBS --> + <div class="breadcrumbs"> + <div class="youarehere"><span class="bchead">You are here: </span><span class="home"><bdi><a href="/lab/wiki/start" class="wikilink1" title="start" data-wiki-id="start">Data</a></bdi></span> » <bdi><a href="/lab/wiki/personal:start" class="wikilink2" title="personal:start" rel="nofollow" data-wiki-id="personal:start">personal</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:start" class="wikilink1" title="personal:haasf:start" data-wiki-id="personal:haasf:start">Personal page - Fabian Haas</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:2021" class="wikilink1" title="personal:haasf:2021" data-wiki-id="personal:haasf:2021">Labbook Fabian Haas</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:2021:madland:start" class="wikilink2" title="personal:haasf:2021:madland:start" rel="nofollow" data-wiki-id="personal:haasf:2021:madland:start">madland</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527" class="wikilink1" title="personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527" data-wiki-id="personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527">new_deg_pipe_four_methods_noiseqbio_hoecker_20210527</a></bdi></div> + <div class="trace"><span class="bchead">Trace:</span> <span class="bcsep">•</span> <bdi><a href="/lab/wiki/personal:saskia:2023:10_2023_diary" class="breadcrumbs" title="personal:saskia:2023:10_2023_diary">Friday 13 October</a></bdi> <span class="bcsep">•</span> <bdi><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker" class="breadcrumbs" title="personal:haasf:2021:madland:rnaseqhoecker">RNA-seq Höcker Lab</a></bdi> <span class="bcsep">•</span> <bdi><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r" class="breadcrumbs" title="personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r">3d_pca_plot_hoecker_20210527.r</a></bdi> <span class="bcsep">•</span> <span class="curid"><bdi><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527" class="breadcrumbs" title="personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527">new_deg_pipe_four_methods_noiseqbio_hoecker_20210527</a></bdi></span></div> + </div> + + + + <hr class="a11y" /> +</div></div><!-- /header --> + + <div class="wrapper group"> + + + <!-- ********** CONTENT ********** --> + <div id="dokuwiki__content"><div class="pad group"> + <div class="notify">Hotfix release available: 2023-04-04a "Jack Jackrum". + <a href="http://download.dokuwiki.org">upgrade now!</a> [54.1] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">New release available: 2023-04-04 "Jack Jackrum". + <a href="http://download.dokuwiki.org">upgrade now!</a> [54] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">Hotfix release available: 2022-07-31b "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [53.1] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">Hotfix release available: 2022-07-31a "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [53] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">New release available: 2022-07-31 "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [52.2] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">New release candidate 2 available: rc2022-06-26 "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [52.1] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">New release candidate available: 2022-06-26 "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [52] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">Hotfix release available: 2020-07-29a "Hogfather". + <a href="http://download.dokuwiki.org">upgrade now!</a> [51.4] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div> + <div class="pageId"><span>personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527</span></div> + + <div class="page group"> + <!-- wikipage start --> + <dl class="code"> +<dt><a href="/lab/wiki/_export/code/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?codeblock=0" title="Download Snippet" class="mediafile mf_r">:personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527.r</a></dt> +<dd><pre class="code rsplus"><span class="co1">###############################################################</span> +<span class="co1">## DEG pipeline with edgeR, DESeq2 and NOISeq #</span> +<span class="co1">## Modified from the template of Dr. Kristian Ullrich 2014 #</span> +<span class="co1">## @fabianhaas, AG Rensing, Marburg, Jan 2016 #</span> +<span class="co1">###############################################################</span> +<span class="co1"># The pipeline expects sample triplicates.</span> +<span class="co1"># If you don't have three samples of one condition, use face files with zero counts.</span> +<span class="co1"># RPKM calculation is optional.</span> +<span class="co1"># Additional program to sum up the tsv files: /mnt/nas_temp/home/haasf/Program/sumup_htseq_counts.pl folder file_prefix</span> + +<span class="co1">###########################################</span> +<span class="co1">## please define your variables #</span> +<span class="co1">###########################################</span> + +saveat <span class="sy0"><-</span> <span class="st0">"/mnt/NAS_coruscant_datashare/haasf/madland_RNA-seq_Hoecker/DEGs_0.9"</span> + +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0"><-</span> <span class="st0">'/mnt/NAS_coruscant_datashare/haasf/madland_RNA-seq_Hoecker/31315.p.sort.counts'</span> + +<span class="co1"># Table with the length and the GC content</span> +LenGCTable <span class="sy0"><-</span> <span class="st0">"/mnt/NAS_coruscant_datashare/haasf/GeneAtlas_RNASeq/DEG_2nd_round/cosmoss_V3.3.release_2016-07-22.IsoformV31.fasta.length_GC_Contig_Daten_for_34840_1nd.csv"</span> + +<span class="co1"># Column position of the gene name and the width/gc content (first column is gene name!)</span> +myLenPos <span class="sy0"><-</span> <span class="nu0">1</span> +myGCPos <span class="sy0"><-</span> <span class="nu0">2</span> + +<span class="co1"># </span> +<span class="co1"># hoo <- c("","")</span> +<span class="co1"># sampleLists <- c()</span> +<span class="co1"># for(a in hoo) {</span> +<span class="co1"># for(b in hoo) {</span> +<span class="co1"># if(a!=b) {</span> +<span class="co1"># tmp <- c(a,b)</span> +<span class="co1"># sampleLists <- c(sampleLists, list(tmp))</span> +<span class="co1"># }</span> +<span class="co1"># }</span> +<span class="co1"># }</span> + + +sampleLists <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/list.html"><span class="kw2">list</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_D"</span>, <span class="st0">"cop_L"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_D"</span>, <span class="st0">"spa_D"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_D"</span>, <span class="st0">"spa_L"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_D"</span>, <span class="st0">"WT_D"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_D"</span>, <span class="st0">"WT_L"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_L"</span>, <span class="st0">"spa_D"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_L"</span>, <span class="st0">"spa_L"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_L"</span>, <span class="st0">"WT_D"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_L"</span>, <span class="st0">"WT_L"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"spa_D"</span>, <span class="st0">"spa_L"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"spa_D"</span>, <span class="st0">"WT_D"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"spa_D"</span>, <span class="st0">"WT_L"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"spa_L"</span>, <span class="st0">"WT_D"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"spa_L"</span>, <span class="st0">"WT_L"</span><span class="br0">)</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"WT_D"</span>, <span class="st0">"WT_L"</span><span class="br0">)</span> + <span class="br0">)</span> + + +<span class="co1"># Do you want a RPKM value table (1/0)</span> +<span class="co1"># Be warned, it takes a while to do this. approx. 10 minutes for 35000 genes and 6 samples.</span> +rpkm <span class="sy0"><-</span> <span class="nu0">0</span> +<span class="co1"># Are the data original HTSeq files? yes <- 1 ; no <- 0</span> +htseq <span class="sy0"><-</span> <span class="nu0">0</span> + +<span class="co1"># threshold settings for the R packages</span> +<span class="co1">#edgeR</span> +pvtedgeR <span class="sy0"><-</span> <span class="nu0">0.001</span> +<span class="co1">#DESeq2</span> +pvtDESeq2 <span class="sy0"><-</span> <span class="nu0">0.001</span> +<span class="co1">#NOISeq</span> +pvtNOISeq <span class="sy0"><-</span> <span class="nu0">0.9</span> + +<span class="co1"># Output folder names</span> +edgeRDir <span class="sy0"><-</span> <span class="st0">"edgeR"</span> +DESeq2Dir <span class="sy0"><-</span> <span class="st0">"DESeq2"</span> +NOISeqDir <span class="sy0"><-</span> <span class="st0">"NOISeq"</span> + +<span class="co1">#########################</span> +<span class="co1">## stop editing here!! ##</span> +<span class="co1">#########################</span> + + +<span class="co1">###########################################</span> +<span class="co1">## executiv function #</span> +<span class="co1">###########################################</span> + +workflow <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a>, saveat, SampleNames, LenGCTable, myLenPos, myGCPos, rpkm, pvtedgeR, pvtDESeq2, pvtNOISeq, edgeRDir, DESeq2Dir, NOISeqDir, htseq<span class="br0">)</span> +<span class="br0">{</span> + <span class="co1"># setwd(workingFolder) # set workspace</span> + + sampleNameI <span class="sy0"><-</span> SampleNames<span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span> + sampleNameII <span class="sy0"><-</span> SampleNames<span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span> + + <span class="co1"># Comparison name</span> + cName <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/paste.html"><span class="kw2">paste</span></a><span class="br0">(</span>sampleNameI, sampleNameII, sep <span class="sy0">=</span> <span class="st0">" vs. "</span><span class="br0">)</span> + + filename <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/strsplit.html"><span class="kw2">strsplit</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a>, <span class="st0">"/"</span><span class="br0">)</span> + filename <span class="sy0"><-</span> filename<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>filename<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">)</span><span class="br0">]</span> <span class="co1"># long but it's working</span> + sampleName <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/gsub.html"><span class="kw2">gsub</span></a><span class="br0">(</span><span class="st0">", "</span>,<span class="st0">"_"</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/toString.html"><span class="kw2">toString</span></a><span class="br0">(</span>SampleNames<span class="br0">)</span><span class="br0">)</span> + samples <span class="sy0"><-</span> SampleNames + <span class="co1"># create output dir</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.create.html"><span class="kw2">dir.<span class="me1">create</span></span></a><span class="br0">(</span>saveat, showWarnings <span class="sy0">=</span> FALSE<span class="br0">)</span> + outdir <span class="sy0"><-</span> paste0<span class="br0">(</span>saveat,<span class="st0">"/"</span>,sampleName<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.create.html"><span class="kw2">dir.<span class="me1">create</span></span></a><span class="br0">(</span>outdir<span class="br0">)</span> + + <span class="co1"># Start the log file</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/sink.html"><span class="kw2">sink</span></a><span class="br0">(</span>paste0<span class="br0">(</span>outdir, <span class="st0">"/DEGpipe_"</span>,cName, <span class="st0">".log"</span><span class="br0">)</span><span class="br0">)</span> + + <span class="co1"># print parameter into the log file</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"set parameters:"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"Counts file:"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"Results stored at:"</span>, saveat<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"SampleNames: "</span>,SampleNames<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"LenGCTable: "</span>,LenGCTable<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"myLenPos: "</span>,myLenPos<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"myGCPos: "</span>,myGCPos<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"rpkm: "</span>,rpkm<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"htseq: "</span>,htseq<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"pvtedgeR: "</span>,pvtedgeR<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"pvtDESeq2: "</span>,pvtDESeq2<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"pvtNOISeq: "</span>,pvtNOISeq<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"edgeRDir: "</span>,edgeRDir<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"DESeq2Dir: "</span>,DESeq2Dir<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"NOISeqDir: "</span>,NOISeqDir<span class="br0">)</span><span class="br0">)</span> + <span class="co1"># session and package infos for the log file</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/sessionInfo.html"><span class="kw8">sessionInfo</span></a><span class="br0">(</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/Sys.info.html"><span class="kw2">Sys.<span class="me1">info</span></span></a><span class="br0">(</span><span class="br0">)</span><span class="br0">)</span> + + <span class="co1"># load spike-in count tables</span> + data0 <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a>, header<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a>, sep<span class="sy0">=</span><span class="st0">"<span class="es0">\t</span>"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + <span class="co1"># just if the gene ids not ending with .1 (it is nessessery for NOISeqbio iteration step)</span> + <span class="co1">#row.names(data0) <- paste0(row.names(data0), ".1")</span> + + <span class="co1"># remove HTSeq rows like "__no_feature"</span> + data0 <span class="sy0"><-</span> data0<span class="br0">[</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/with.html"><span class="kw2">with</span></a><span class="br0">(</span>data0, <span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/grepl.html"><span class="kw2">grepl</span></a><span class="br0">(</span><span class="st0">'__'</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>data0<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> , <span class="br0">]</span> + data0 <span class="sy0"><-</span> data0<span class="br0">[</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/with.html"><span class="kw2">with</span></a><span class="br0">(</span>data0, <span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/grepl.html"><span class="kw2">grepl</span></a><span class="br0">(</span><span class="st0">'ERCC'</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>data0<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> , <span class="br0">]</span> + <span class="co1">#data0 <- data0[ , with(data0, !grepl('X.1', colnames(data0)))]</span> + <span class="co1">#rename col names (library name to roman number)</span> + + <span class="co1"># librariesName <- c("56754_WT_Naturally_3.bam.sort.fastq.unmapped.sam.sort.bam", "56753_WT_Naturally_2.bam.sort.fastq.unmapped.sam.sort.bam", "56752_WT_Naturally_1.bam.sort.fastq.unmapped.sam.sort.bam", "56751_tt_6_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56750_tt_6_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56749_tt_6_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56748_tt_0_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56747_tt_0_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56746_tt_0_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56745_WT_10_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56744_WT_10_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56743_WT_10_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56742_WT_6_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56741_WT_6_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56740_WT_6_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56739_WT_0_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56738_WT_0_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56737_WT_0_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56736_tt_T1_tt_6d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56735_tt_T1_tt_6d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56734_tt_T1_tt_6d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56733_tt_T1_tt_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56732_tt_T1_tt_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56731_tt_T1_tt_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56730_tt_T1_tt_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56729_tt_T1_tt_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56728_tt_T1_tt_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56727_WT_T1_NA_3.bam.sort.fastq.unmapped.sam.sort.bam", "56726_WT_T1_NA_2.bam.sort.fastq.unmapped.sam.sort.bam", "56725_WT_T1_NA_1.bam.sort.fastq.unmapped.sam.sort.bam", "56724_WT_T1_WT_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56723_WT_T1_WT_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56722_WT_T1_WT_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56721_WT_T1_WT_10d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56720_WT_T1_WT_10d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56719_WT_T1_WT_10d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56718_WT_T1_WT_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56717_WT_T1_WT_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56716_WT_T1_WT_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56715_WT_T1_WT_6d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56714_WT_T1_WT_6d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56713_WT_T1_WT_6d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56712_WT_T1_WT_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56711_WT_T1_WT_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56710_WT_T1_WT_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56709_WT_T1_WT_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56708_WT_T1_WT_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56707_WT_T1_WT_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56706_WT_T1_tt_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56705_WT_T1_tt_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56704_WT_T1_tt_0d_1.bam.sort.fastq.unmapped.sam.sort.bam")</span> + <span class="co1"># #librariesName <- c("80484_Celery_3_day_imbibed_embryo_20C_rep_3_3.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80483_Celery_3_day_imbibed_embryo_20C_rep_2_2.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80482_Celery_3_day_imbibed_embryo_20C_rep_1_1.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80481_Celery_1_day_imbibed_embryo_20C_rep_3_3.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80480_Celery_1_day_imbibed_embryo_20C_rep_2_2.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80479_Celery_1_day_imbibed_embryo_20C_rep_1_1.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80478_Celery_5_day_imbibed_whole_fruit_29C_rep_3_3.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80477_Celery_5_day_imbibed_whole_fruit_29C_rep_2_2.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80460_Celery_3_day_imbibed_whole_fruit_20C_rep_2_2.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80459_Celery_3_day_imbibed_whole_fruit_20C_rep_1_1.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80458_Celery_1_day_imbibed_whole_fruit_20C_rep_3_3.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80457_Celery_1_day_imbibed_whole_fruit_20C_rep_2_2.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80456_Celery_1_day_imbibed_whole_fruit_20C_rep_1_1.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80455_Celery_Dry_whole_fruit_rep_3_3.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80454_Celery_Dry_whole_fruit_rep_2_2.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80453_Celery_Dry_whole_fruit_rep_1_1.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80452_Celery_5_day_imbibed_whole_fruit_29C_rep_1_1.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80451_Celery_5_day_imbibed_whole_fruit_100uM_ABA_20C_rep_3_3.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80450_Celery_5_day_imbibed_whole_fruit_100uM_ABA_20C_rep_2_2.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80449_Celery_5_day_imbibed_whole_fruit_100uM_ABA_20C_rep_1_1.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80448_Celery_5_day_imbibed_whole_fruit_20C_rep_3_3.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80447_Celery_5_day_imbibed_whole_fruit_20C_rep_2_2.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80446_Celery_5_day_imbibed_whole_fruit_20C_rep_1_1.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam", "80445_Celery_3_day_imbibed_whole_fruit_20C_rep_3_3.bam.sort.fastq.unmapped.concordant_uniqsort.bam_reads.Celery_genome_GG_trinity.500bp_new.sam.sort.bam.featureCounts.p.txt")</span> + <span class="co1"># romanNumber <- c("T17_Dry_Naturally_Freezedryseed", "T17_Dry_Naturally_Freezedryseed.1", "T17_Dry_Naturally_Freezedryseed.2", "T16_Dry_6days_Freezeafter6dageing", "T16_Dry_6days_Freezeafter6dageing.1", "T16_Dry_6days_Freezeafter6dageing.2", "T15_Dry_0days_Freezedryseed", "T15_Dry_0days_Freezedryseed.1", "T15_Dry_0days_Freezedryseed.2", "T14_Dry_10days_Freezeafter10dageing", "T14_Dry_10days_Freezeafter10dageing.1", "T14_Dry_10days_Freezeafter10dageing.2", "T13_Dry_6days_Freezeafter6dageing", "T13_Dry_6days_Freezeafter6dageing.1", "T13_Dry_6days_Freezeafter6dageing.2", "T12_Dry_0days_Freezedryseed", "T12_Dry_0days_Freezedryseed.1", "T12_Dry_0days_Freezedryseed.2", "T11_Imbibe_6days_12h", "T11_Imbibe_6days_12h.1", "T11_Imbibe_6days_12h.2", "T10_Imbibe_6days_5h", "T10_Imbibe_6days_5h.1", "T10_Imbibe_6days_5h.2", "T9_Imbibe_0dyas_5h", "T9_Imbibe_0dyas_5h.1", "T9_Imbibe_0dyas_5h.2", "T8_Imbibe_Naturally_47h", "T8_Imbibe_Naturally_47h.1", "T8_Imbibe_Naturally_47h.2", "T7_Imbibe_Naturally_24h", "T7_Imbibe_Naturally_24h.1", "T7_Imbibe_Naturally_24h.2", "T6_Imbibe_10days_72h", "T6_Imbibe_10days_72h.1", "T6_Imbibe_10days_72h.2", "T5_Imbibe_10days_24h", "T5_Imbibe_10days_24h.1", "T5_Imbibe_10days_24h.2", "T4_Imbibe_6days_47h", "T4_Imbibe_6days_47h.1", "T4_Imbibe_6days_47h.2", "T3_Imbibe_6days_24h", "T3_Imbibe_6days_24h.1", "T3_Imbibe_6days_24h.2", "T2_Imbibe_0days_24h", "T2_Imbibe_0days_24h.1", "T2_Imbibe_0days_24h.2", "T1_Imbibe_0days_5h", "T1_Imbibe_0days_5h.1", "T1_Imbibe_0days_5h.2")</span> + <span class="co1"># #romanNumber <- c("emb_3d_20.2", "emb_3d_20.1", "emb_3d_20", "emb_1d_20.2", "emb_1d_20.1", "emb_1d_20", "wf_5d_29.2", "wf_5d_29.1", "wf_3d_20.1", "wf_3d_20", "wf_1d_20.2", "wf_1d_20.1", "wf_1d_20", "wf_dry.2", "wf_dry.1", "wf_dry", "wf_5d_29", "wf_5d_ABA_20.2", "wf_5d_ABA_20.1", "wf_5d_ABA_20", "wf_5d_20.2", "wf_5d_20.1", "wf_5d_20", "wf_3d_20.2")</span> + <span class="co1"># </span> + <span class="co1"># </span> + <span class="co1"># for(i in 1:length(librariesName)) {</span> + <span class="co1"># colnames(data0)[colnames(data0)==grep(librariesName[i], names(data0), value = TRUE)] <- romanNumber[i]</span> + <span class="co1"># }</span> + + <span class="co1"># creats a list of the column names/samples you would like to compare</span> + SampleNames <span class="sy0"><-</span> makeSampleList<span class="br0">(</span>sampleNameI, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/grep.html"><span class="kw2">grep</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"^"</span>,sampleNameI,<span class="st0">"[^A-Z]"</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>data0<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> <span class="sy0">+</span> <span class="nu0">1</span>, + sampleNameII, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/grep.html"><span class="kw2">grep</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"^"</span>,sampleNameII,<span class="st0">"[^A-Z]"</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>data0<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> <span class="sy0">+</span> <span class="nu0">1</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>SampleNames<span class="br0">)</span> + + <span class="co1">## mal anschauen als ersatz für das darüber ##</span> + <span class="co1">## newenw <- table.new[, grepl(paste(LIST,collapse="|"), colnames(table.new))]</span> + + + <span class="co1"># exctract the samples from the data0 if needed</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>SampleNames<span class="br0">)</span> <span class="sy0">></span> <span class="nu0">0</span><span class="br0">)</span> <span class="br0">{</span> + RTableInFiles <span class="sy0"><-</span> data0<span class="br0">[</span>,SampleNames<span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a> <span class="sy0"><-</span> data0<span class="br0">[</span>,SampleNames<span class="br0">]</span> + <span class="br0">}</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/head.html"><span class="kw8">head</span></a><span class="br0">(</span>RTableInFiles<span class="br0">)</span><span class="br0">)</span> + + <span class="co1"># sort by column name</span> + <span class="co1"># data <- data[ , order(names(data))] # dangeros, the order of query and referenz might be not the same</span> + <span class="co1"># see how many rows and columns are in the tables</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/paste.html"><span class="kw2">paste</span></a><span class="br0">(</span><span class="st0">"Raw data row number: "</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/paste.html"><span class="kw2">paste</span></a><span class="br0">(</span><span class="st0">"Raw data column number: "</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ncol.html"><span class="kw2">ncol</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + + <span class="co1"># 2) A typical differential expression analysis workflow</span> + <span class="co1"># 2.1) Filtering and exploratory data analysis</span> + <span class="co1"># filter: One single gene/spike-in must have at least 5 counts in minimum 2 libraries</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/filter.html"><span class="kw7">filter</span></a> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/apply.html"><span class="kw2">apply</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a>, <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>x<span class="br0">)</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>x<span class="br0">[</span>x<span class="sy0">></span><span class="nu0">5</span><span class="br0">]</span><span class="br0">)</span><span class="sy0">>=</span><span class="nu0">2</span><span class="br0">)</span> + dataFiltered <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a><span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/filter.html"><span class="kw7">filter</span></a>,<span class="br0">]</span> + <span class="co1"># see how many rows and columns are left</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/paste.html"><span class="kw2">paste</span></a><span class="br0">(</span><span class="st0">"Filtered data row number: "</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>dataFiltered<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/paste.html"><span class="kw2">paste</span></a><span class="br0">(</span><span class="st0">"Filtered data row number: "</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ncol.html"><span class="kw2">ncol</span></a><span class="br0">(</span>dataFiltered<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + <span class="co1"># filter gene names</span> + genes <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>dataFiltered<span class="br0">)</span><span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/grep.html"><span class="kw2">grep</span></a><span class="br0">(</span><span class="st0">"^Pp3"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>dataFiltered<span class="br0">)</span><span class="br0">)</span><span class="br0">]</span> + <span class="co1"># filter spike-in names</span> + spikes <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>dataFiltered<span class="br0">)</span><span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/grep.html"><span class="kw2">grep</span></a><span class="br0">(</span><span class="st0">"^ERCC"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>dataFiltered<span class="br0">)</span><span class="br0">)</span><span class="br0">]</span> + <span class="co1"># get the column name list as.factors</span> + xtmp <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>dataFiltered<span class="br0">)</span> + x <span class="sy0"><-</span> split2list<span class="br0">(</span>xtmp<span class="br0">)</span> + + sampleNameList <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/gsub.html"><span class="kw2">gsub</span></a><span class="br0">(</span><span class="st0">".[1234567890]+$"</span>, <span class="st0">""</span>, SampleNames<span class="br0">)</span> + columnPos <span class="sy0"><-</span> makeIndexList<span class="br0">(</span>SampleNames<span class="br0">)</span> + + <span class="co1"># run ...</span> + <span class="co1">### edgeR ###</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"edgeR is running with "</span>, cName<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/packageDescription.html"><span class="kw8">packageDescription</span></a><span class="br0">(</span><span class="st0">"edgeR"</span><span class="br0">)</span> + edgeRFunction<span class="br0">(</span>outdir, edgeRDir, cName, RTableInFiles, pvtedgeR, sampleNameI, sampleNameII, sampleNameList<span class="br0">)</span> + + <span class="co1">#### DESeq2 ####</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"DESeq2 is running with "</span>, cName<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/packageDescription.html"><span class="kw8">packageDescription</span></a><span class="br0">(</span><span class="st0">"DESeq2"</span><span class="br0">)</span> + DESeq2Function<span class="br0">(</span>outdir, DESeq2Dir, cName, RTableInFiles, pvtDESeq2, sampleNameI, sampleNameII, sampleNameList<span class="br0">)</span> + + <span class="co1">### NOISeq ###</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>paste0<span class="br0">(</span><span class="st0">"NOISeq is running with "</span>, cName<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/packageDescription.html"><span class="kw8">packageDescription</span></a><span class="br0">(</span><span class="st0">"NOISeq"</span><span class="br0">)</span> + NOISeqFunction<span class="br0">(</span>outdir, NOISeqDir, cName, RTableInFiles, pvtNOISeq, sampleNameI, sampleNameII, myLenPos, myGCPos, LenGCTable, columnPos, sampleNameList, SampleNames<span class="br0">)</span> + + <span class="co1">### Overlap of all three methods ###</span> + <span class="co1"># intersection with DEG direction check => 1, without => 0</span> + intersection_4.<span class="me1">file</span> <span class="sy0"><-</span> intersection<span class="br0">(</span>outdir,<span class="nu0">1</span>,<span class="nu0">4</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span>intersection_4.<span class="me1">file</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, <span class="st0">"/"</span>, cName,<span class="st0">"_intersection_four_methods_"</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>intersection_4.<span class="me1">file</span><span class="br0">)</span>,<span class="st0">".tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + <span class="co1"># edgeR, DESeq2, NOISeq</span> + intersection_3.<span class="me1">file</span> <span class="sy0"><-</span> intersection<span class="br0">(</span>outdir,<span class="nu0">1</span>,<span class="nu0">3</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span>intersection_3.<span class="me1">file</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, <span class="st0">"/"</span>, cName,<span class="st0">"_intersection_three_methods_"</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>intersection_3.<span class="me1">file</span><span class="br0">)</span>,<span class="st0">".tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/sink.html"><span class="kw2">sink</span></a><span class="br0">(</span><span class="br0">)</span> <span class="co1"># End of log file</span> + +<span class="br0">}</span> + + + + + +<span class="co1">####################</span> +<span class="co1">## main functions #</span> +<span class="co1">####################</span> + +plotGraphics <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a>, librariesName, cName, outdir, romanNumber<span class="br0">)</span> +<span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"DESeq2"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"ggplot2"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"RColorBrewer"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"pheatmap"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"genefilter"</span><span class="br0">)</span> + + <span class="co1"># create sample annotation lists</span> + <span class="co1"># sample.name.list <- gsub(".[12]", "", librariesName[colnames(data)])</span> + sample.<span class="me1">name</span>.<span class="me1">list</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/gsub.html"><span class="kw2">gsub</span></a><span class="br0">(</span><span class="st0">".[12]"</span>, <span class="st0">""</span>, romanNumber<span class="br0">)</span> + sample.<span class="me1">name</span>.<span class="me1">uniq</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/unique.html"><span class="kw2">unique</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/unlist.html"><span class="kw2">unlist</span></a><span class="br0">(</span>sample.<span class="me1">name</span>.<span class="me1">list</span>, use.<span class="me1">names</span> <span class="sy0">=</span> FALSE<span class="br0">)</span><span class="br0">)</span> + + col.<span class="me1">data</span>.<span class="me1">condition</span> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/data.frame.html"><span class="kw2">data.<span class="me1">frame</span></span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> librariesName, condition <span class="sy0">=</span> sample.<span class="me1">name</span>.<span class="me1">list</span><span class="br0">)</span> + + <span class="co1"># run DESeq2 functions</span> + dds.<span class="me1">matrix</span> <span class="sy0"><-</span> DESeqDataSetFromMatrix<span class="br0">(</span>countData <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a>, colData <span class="sy0">=</span> col.<span class="me1">data</span>.<span class="me1">condition</span>, design <span class="sy0">=</span> ~condition<span class="br0">)</span> <span class="co1"># data must be integer! (Ganze Zahlen)</span> + colData<span class="br0">(</span>dds.<span class="me1">matrix</span><span class="br0">)</span>$condition <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a><span class="br0">(</span>colData<span class="br0">(</span>dds.<span class="me1">matrix</span><span class="br0">)</span>$condition, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/levels.html"><span class="kw2">levels</span></a> <span class="sy0">=</span> sample.<span class="me1">name</span>.<span class="me1">uniq</span><span class="br0">)</span> + dds.<span class="me1">matrix</span>.<span class="me1">deseq</span> <span class="sy0"><-</span> DESeq<span class="br0">(</span>dds.<span class="me1">matrix</span><span class="br0">)</span> + dds.<span class="me1">matrix</span>.<span class="me1">res</span> <span class="sy0"><-</span> results<span class="br0">(</span>dds.<span class="me1">matrix</span>.<span class="me1">deseq</span><span class="br0">)</span> + dds.<span class="me1">matrix</span>.<span class="me1">res</span> <span class="sy0"><-</span> dds.<span class="me1">matrix</span>.<span class="me1">res</span><span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/order.html"><span class="kw2">order</span></a><span class="br0">(</span>dds.<span class="me1">matrix</span>.<span class="me1">res</span>$padj<span class="br0">)</span>, <span class="br0">]</span> + dds.<span class="me1">matrix</span>.<span class="me1">res</span>.<span class="me1">fdr</span> <span class="sy0"><-</span> dds.<span class="me1">matrix</span>.<span class="me1">res</span><span class="br0">[</span><span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/is.na.html"><span class="kw2">is.<span class="me1">na</span></span></a><span class="br0">(</span>dds.<span class="me1">matrix</span>.<span class="me1">res</span>$padj<span class="br0">)</span>, <span class="br0">]</span> + dds.<span class="me1">matrix</span>.<span class="me1">res</span>.<span class="me1">fdr</span> <span class="sy0"><-</span> dds.<span class="me1">matrix</span>.<span class="me1">res</span>.<span class="me1">fdr</span><span class="br0">[</span>dds.<span class="me1">matrix</span>.<span class="me1">res</span>.<span class="me1">fdr</span>$padj <span class="sy0"><</span> <span class="nu0">0.0001</span>, <span class="br0">]</span> + dds.<span class="me1">matrix</span>.<span class="me1">rld</span> <span class="sy0"><-</span> rlogTransformation<span class="br0">(</span>dds.<span class="me1">matrix</span>, blind <span class="sy0">=</span> TRUE<span class="br0">)</span> + + <span class="co1"># data for PCA plot</span> + pcaData <span class="sy0"><-</span> plotPCA<span class="br0">(</span>dds.<span class="me1">matrix</span>.<span class="me1">rld</span>, intgroup <span class="sy0">=</span> <span class="st0">"condition"</span>, returnData<span class="sy0">=</span>TRUE<span class="br0">)</span> + percentVar <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/round.html"><span class="kw2">round</span></a><span class="br0">(</span><span class="nu0">100</span> <span class="sy0">*</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/attr.html"><span class="kw2">attr</span></a><span class="br0">(</span>pcaData, <span class="st0">"percentVar"</span><span class="br0">)</span><span class="br0">)</span> + <span class="co1"># color for samples</span> + sample.<span class="me1">colors</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"gray60"</span>,<span class="st0">"#D73027"</span>,<span class="st0">"#4575B4"</span>, <span class="st0">"purple"</span>, <span class="st0">"orange"</span>,<span class="st0">"#113FF7"</span>,<span class="st0">"green"</span>, <span class="st0">"black"</span><span class="br0">)</span> + + <span class="co1"># plot the PCA</span> + <span class="co1"># https://cran.r-project.org/web/packages/ggfortify/vignettes/plot_pca.html</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"PCA_all_samples_DEseq2_normalized.png"</span><span class="br0">)</span><span class="br0">)</span> + ggplot<span class="br0">(</span> + pcaData, + aes<span class="br0">(</span> + PC1, + PC2, + color<span class="sy0">=</span>condition, + shape<span class="sy0">=</span>condition<span class="br0">)</span> + <span class="br0">)</span> <span class="sy0">+</span> + scale_shape_manual<span class="br0">(</span>values <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="nu0">4</span>, <span class="nu0">1</span>, <span class="nu0">2</span>, <span class="nu0">3</span>, <span class="nu0">0</span>, <span class="nu0">5</span>, <span class="nu0">6</span>, <span class="nu0">7</span><span class="br0">)</span><span class="br0">)</span> <span class="sy0">+</span> + geom_point<span class="br0">(</span>size<span class="sy0">=</span><span class="nu0">2.5</span><span class="br0">)</span> <span class="sy0">+</span> + xlab<span class="br0">(</span> + paste0<span class="br0">(</span><span class="st0">"PC1: "</span>,percentVar<span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span>,<span class="st0">"% variance"</span><span class="br0">)</span> + <span class="br0">)</span> <span class="sy0">+</span> + ylab<span class="br0">(</span> + paste0<span class="br0">(</span><span class="st0">"PC2: "</span>,percentVar<span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span>,<span class="st0">"% variance"</span><span class="br0">)</span> + <span class="br0">)</span> <span class="sy0">+</span> + theme<span class="br0">(</span><span class="br0">)</span> <span class="sy0">+</span> <span class="co1">#, face="bold"</span> + scale_colour_manual<span class="br0">(</span> + values<span class="sy0">=</span>sample.<span class="me1">colors</span> <span class="co1"># dodgerblue3</span> + <span class="br0">)</span> <span class="sy0">+</span> + ggtitle<span class="br0">(</span><span class="st0">"PCA of all samples (DESeq2 normalized)"</span><span class="br0">)</span> <span class="sy0">+</span> + theme<span class="br0">(</span> + plot.<span class="me1">title</span> <span class="sy0">=</span> element_text<span class="br0">(</span>lineheight<span class="sy0">=</span>.8<span class="br0">)</span>, + panel.<span class="me1">background</span> <span class="sy0">=</span> element_rect<span class="br0">(</span>fill <span class="sy0">=</span> <span class="st0">"gray95"</span><span class="br0">)</span> + <span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + <span class="co1"># how many genes will be involved in the heatmap calculation</span> + numbGenes <span class="sy0"><-</span> <span class="nu0">100</span> + <span class="co1"># pheatmap data</span> + topVarGenes <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/head.html"><span class="kw8">head</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/order.html"><span class="kw2">order</span></a><span class="br0">(</span>rowVars<span class="br0">(</span>assay<span class="br0">(</span>dds.<span class="me1">matrix</span>.<span class="me1">rld</span><span class="br0">)</span><span class="br0">)</span>,decreasing<span class="sy0">=</span>TRUE<span class="br0">)</span>,numbGenes<span class="br0">)</span> + mat <span class="sy0"><-</span> assay<span class="br0">(</span>dds.<span class="me1">matrix</span>.<span class="me1">rld</span><span class="br0">)</span><span class="br0">[</span> topVarGenes, <span class="br0">]</span> + mat <span class="sy0"><-</span> mat <span class="sy0">-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rowMeans.html"><span class="kw2">rowMeans</span></a><span class="br0">(</span>mat<span class="br0">)</span> + <span class="co1"># pheatmap data annotation</span> + anno <span class="sy0"><-</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.data.frame.html"><span class="kw2">as.<span class="me1">data</span>.<span class="me1">frame</span></span></a><span class="br0">(</span>colData<span class="br0">(</span>dds.<span class="me1">matrix</span>.<span class="me1">rld</span><span class="br0">)</span><span class="br0">[</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"condition"</span><span class="br0">)</span><span class="br0">]</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>anno<span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a><span class="br0">)</span> <span class="co1"># check out the row names of annotation</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>anno<span class="br0">)</span> <span class="sy0"><-</span> <span class="st0">"condition"</span> + <span class="co1"># pheatmap data annotation color</span> + condition <span class="sy0"><-</span> sample.<span class="me1">colors</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/names.html"><span class="kw2">names</span></a><span class="br0">(</span>condition<span class="br0">)</span> <span class="sy0"><-</span> sample.<span class="me1">name</span>.<span class="me1">uniq</span> + anno_colors <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/list.html"><span class="kw2">list</span></a><span class="br0">(</span>condition <span class="sy0">=</span> condition<span class="br0">)</span> + + <span class="co1">#heatmap(mat)</span> + <span class="co1">#pheatmap(mat)</span> + <span class="co1"># ftp://cran.r-project.org/pub/R/web/packages/pheatmap/pheatmap.pdf</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"HC_heatmap_all_samples_DESeq2_normalized.png"</span><span class="br0">)</span><span class="br0">)</span> + pheatmap<span class="br0">(</span>mat , + annotation <span class="sy0">=</span> anno, + annotation_colors <span class="sy0">=</span> anno_colors, + fontsize <span class="sy0">=</span> <span class="nu0">10</span>, + fontsize_row <span class="sy0">=</span> <span class="nu0">6</span>, + fontsize_col <span class="sy0">=</span> <span class="nu0">10</span>, + main <span class="sy0">=</span> paste0<span class="br0">(</span><span class="st0">"Heatmap of all samples (DESeq2 normalized) "</span>, numbGenes,<span class="st0">" genes<span class="es0">\n</span>"</span><span class="br0">)</span>, + annotation_names_col <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/F.html"><span class="kw2">F</span></a>, + show_rownames <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/F.html"><span class="kw2">F</span></a>, + cluster_rows <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/F.html"><span class="kw2">F</span></a>, + border_color <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/F.html"><span class="kw2">F</span></a>, + treeheight_col <span class="sy0">=</span> <span class="nu0">20</span> + <span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> +<span class="br0">}</span> + + +edgeRFunction <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>odir, edgeRDir, cName, RTableInFiles, pvtedgeR, sampleNameI, sampleNameII, sampleNameList<span class="br0">)</span> +<span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span>edgeR<span class="br0">)</span> + + outdir <span class="sy0"><-</span> paste0<span class="br0">(</span>odir, <span class="st0">"/"</span>,edgeRDir,<span class="st0">"/"</span><span class="br0">)</span> <span class="co1"># set outdir</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.create.html"><span class="kw2">dir.<span class="me1">create</span></span></a><span class="br0">(</span>outdir, showWarnings <span class="sy0">=</span> FALSE<span class="br0">)</span> <span class="co1"># create output folder</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.create.html"><span class="kw2">dir.<span class="me1">create</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots"</span><span class="br0">)</span>, showWarnings <span class="sy0">=</span> FALSE<span class="br0">)</span> <span class="co1"># create subfolder "plots"</span> + + comparison <span class="sy0"><-</span> cName + counts <span class="sy0"><-</span> RTableInFiles + + pvt <span class="sy0"><-</span> pvtedgeR + + group <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a><span class="br0">(</span>sampleNameList<span class="br0">)</span> + + <span class="co1"># edgeR 'normal'</span> + + y.<span class="me1">normal</span> <span class="sy0"><-</span> DGEList<span class="br0">(</span>counts <span class="sy0">=</span> counts, group <span class="sy0">=</span> group<span class="br0">)</span> + + y.<span class="me1">normal</span><span class="br0">[</span>,<span class="nu0">1</span><span class="br0">]</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" edgeR - plotMDS"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + plotMDS<span class="br0">(</span>y.<span class="me1">normal</span>, method <span class="sy0">=</span> <span class="st0">"bcv"</span>, main <span class="sy0">=</span> paste0<span class="br0">(</span>cName, <span class="st0">"<span class="es0">\n</span>edgeR - plotMDS"</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + y.<span class="me1">normal</span> <span class="sy0"><-</span> calcNormFactors<span class="br0">(</span>y.<span class="me1">normal</span><span class="br0">)</span> + y.<span class="me1">normal</span> <span class="sy0"><-</span> estimateCommonDisp<span class="br0">(</span>y.<span class="me1">normal</span><span class="br0">)</span> + y.<span class="me1">normal</span> <span class="sy0"><-</span> estimateTagwiseDisp<span class="br0">(</span>y.<span class="me1">normal</span><span class="br0">)</span> + + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" edgeR - plotBCV"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + plotBCV<span class="br0">(</span>y.<span class="me1">normal</span>, main <span class="sy0">=</span> paste0<span class="br0">(</span>cName, <span class="st0">"<span class="es0">\n</span>edgeR - plotBCV"</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + et.<span class="me1">normal</span> <span class="sy0"><-</span> exactTest<span class="br0">(</span>y.<span class="me1">normal</span>, pair <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>sampleNameI, sampleNameII<span class="br0">)</span><span class="br0">)</span> + + topTags<span class="br0">(</span>et.<span class="me1">normal</span><span class="br0">)</span> + <span class="co1"># adjust.method ==> character string specifying p-value adjustment method. Possible values are "none", "BH", "fdr" (equivalent to "BH"), "BY" and "holm". See p.adjust for details.</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/summary.html"><span class="kw2">summary</span></a><span class="br0">(</span>de.<span class="me1">normal</span> <span class="sy0"><-</span> decideTestsDGE<span class="br0">(</span>et.<span class="me1">normal</span>, p <span class="sy0">=</span> pvt, adjust <span class="sy0">=</span> <span class="st0">"BH"</span><span class="br0">)</span><span class="br0">)</span> + et.<span class="me1">normal</span>.<span class="me1">fdr</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/cbind.html"><span class="kw2">cbind</span></a><span class="br0">(</span>et.<span class="me1">normal</span>$table, <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/p.adjust.html"><span class="kw7">p.<span class="me1">adjust</span></span></a><span class="br0">(</span>et.<span class="me1">normal</span>$table<span class="br0">[</span>, <span class="nu0">3</span><span class="br0">]</span>, method <span class="sy0">=</span> <span class="st0">"BH"</span><span class="br0">)</span><span class="br0">)</span> + et.<span class="me1">normal</span>.<span class="me1">fdr</span> <span class="sy0"><-</span> et.<span class="me1">normal</span>.<span class="me1">fdr</span><span class="br0">[</span>et.<span class="me1">normal</span>.<span class="me1">fdr</span><span class="br0">[</span>, <span class="nu0">4</span><span class="br0">]</span> <span class="sy0"><</span> pvt, <span class="br0">]</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span>et.<span class="me1">normal</span>.<span class="me1">fdr</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, cName, <span class="st0">"_"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>et.<span class="me1">normal</span>.<span class="me1">fdr</span><span class="br0">)</span>, <span class="st0">"_edgeR_fdr.tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + + detags.<span class="me1">normal</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>de.<span class="me1">normal</span><span class="br0">)</span><span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.logical.html"><span class="kw2">as.<span class="me1">logical</span></span></a><span class="br0">(</span>de.<span class="me1">normal</span><span class="br0">)</span><span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" edgeR - plotSmear"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + plotSmear<span class="br0">(</span>et.<span class="me1">normal</span>, de.<span class="me1">normal</span>, tags <span class="sy0">=</span> detags.<span class="me1">normal</span>, main <span class="sy0">=</span> paste0<span class="br0">(</span>cName, <span class="st0">"<span class="es0">\n</span>edgeR - plotSmear"</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/abline.html"><span class="kw4">abline</span></a><span class="br0">(</span>h <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="sy0">-</span><span class="nu0">2</span>, <span class="nu0">2</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/col.html"><span class="kw2">col</span></a> <span class="sy0">=</span> <span class="st0">"blue"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + <span class="co1"># edgeR 'GLM'</span> + + y.<span class="me1">glm</span> <span class="sy0"><-</span> DGEList<span class="br0">(</span>counts <span class="sy0">=</span> counts, group <span class="sy0">=</span> group<span class="br0">)</span> + + design <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/model.matrix.html"><span class="kw7">model.<span class="me1">matrix</span></span></a><span class="br0">(</span>~<span class="nu0">0</span> <span class="sy0">+</span> group, <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a> <span class="sy0">=</span> y.<span class="me1">glm</span>$samples<span class="br0">)</span> + design + + y.<span class="me1">glm</span> <span class="sy0"><-</span> estimateGLMCommonDisp<span class="br0">(</span>y.<span class="me1">glm</span>, design<span class="br0">)</span> + y.<span class="me1">glm</span> <span class="sy0"><-</span> estimateGLMTrendedDisp<span class="br0">(</span>y.<span class="me1">glm</span>, design<span class="br0">)</span> + + <span class="co1">## Loading required package: splines</span> + y.<span class="me1">glm</span> <span class="sy0"><-</span> estimateGLMTagwiseDisp<span class="br0">(</span>y.<span class="me1">glm</span>, design<span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" edgeR - plotBCV - GLM"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + plotBCV<span class="br0">(</span>y.<span class="me1">glm</span>, main <span class="sy0">=</span> paste0<span class="br0">(</span>cName, <span class="st0">"<span class="es0">\n</span>edgeR - plotBCV - GLM"</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + y.<span class="me1">fit</span> <span class="sy0"><-</span> glmFit<span class="br0">(</span>y.<span class="me1">glm</span>, design<span class="br0">)</span> + y.<span class="me1">lrt</span> <span class="sy0"><-</span> glmLRT<span class="br0">(</span>y.<span class="me1">fit</span><span class="br0">)</span> + + FDR <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/p.adjust.html"><span class="kw7">p.<span class="me1">adjust</span></span></a><span class="br0">(</span>y.<span class="me1">lrt</span>$table$PValue, method <span class="sy0">=</span> <span class="st0">"BH"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/sum.html"><span class="kw2">sum</span></a><span class="br0">(</span>FDR <span class="sy0"><</span> pvt<span class="br0">)</span> + + topTags<span class="br0">(</span>y.<span class="me1">lrt</span><span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/summary.html"><span class="kw2">summary</span></a><span class="br0">(</span>de.<span class="me1">glm</span> <span class="sy0"><-</span> decideTestsDGE<span class="br0">(</span>y.<span class="me1">lrt</span>, p <span class="sy0">=</span> pvt, adjust <span class="sy0">=</span> <span class="st0">"BH"</span><span class="br0">)</span><span class="br0">)</span> + +<span class="br0">}</span> + + +DESeq2Function <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>odir, DESeq2Dir, cName, RTableInFiles, pvtDESeq2, sampleNameI, sampleNameII, sampleNameList<span class="br0">)</span> +<span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span>DESeq2<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span>RColorBrewer<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span>gplots<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span>vsn<span class="br0">)</span> + + outdir <span class="sy0"><-</span> paste0<span class="br0">(</span>odir, <span class="st0">"/"</span>,DESeq2Dir,<span class="st0">"/"</span><span class="br0">)</span> <span class="co1"># set outdir</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.create.html"><span class="kw2">dir.<span class="me1">create</span></span></a><span class="br0">(</span>outdir, showWarnings <span class="sy0">=</span> FALSE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.create.html"><span class="kw2">dir.<span class="me1">create</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots"</span><span class="br0">)</span>, showWarnings <span class="sy0">=</span> FALSE<span class="br0">)</span> <span class="co1"># create subfolder "plots"</span> + + + pvt <span class="sy0"><-</span> pvtDESeq2 + + + + <span class="co1"># DESeqDataSet(se, design, ignoreRank = FALSE)</span> + <span class="co1"># DESeqDataSetFromMatrix(countData, colData, design, tidy = FALSE, ignoreRank = FALSE, ...)</span> + <span class="co1"># DESeqDataSetFromHTSeqCount(sampleTable, directory = ".", design, ignoreRank = FALSE, ...)</span> + <span class="co1"># DESeqDataSetFromTximport(txi, colData, design, ...)</span> + coldata <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/data.frame.html"><span class="kw2">data.<span class="me1">frame</span></span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>RTableInFiles<span class="br0">)</span>, condition <span class="sy0">=</span> sampleNameList<span class="br0">)</span> + + ddsHTSeq <span class="sy0"><-</span> DESeqDataSetFromMatrix<span class="br0">(</span>countData <span class="sy0">=</span> RTableInFiles, colData <span class="sy0">=</span> coldata, design <span class="sy0">=</span> ~ condition<span class="br0">)</span> + + colData<span class="br0">(</span>ddsHTSeq<span class="br0">)</span>$condition <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a><span class="br0">(</span>colData<span class="br0">(</span>ddsHTSeq<span class="br0">)</span>$condition, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/levels.html"><span class="kw2">levels</span></a> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>sampleNameI, sampleNameII<span class="br0">)</span><span class="br0">)</span> + + ddsHTSeq <span class="sy0"><-</span> DESeq<span class="br0">(</span>ddsHTSeq<span class="br0">)</span> + + ddsHTSeq.<span class="me1">res</span> <span class="sy0"><-</span> results<span class="br0">(</span>ddsHTSeq<span class="br0">)</span> + ddsHTSeq.<span class="me1">res</span> <span class="sy0"><-</span> ddsHTSeq.<span class="me1">res</span><span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/order.html"><span class="kw2">order</span></a><span class="br0">(</span>ddsHTSeq.<span class="me1">res</span>$padj<span class="br0">)</span>, <span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/head.html"><span class="kw8">head</span></a><span class="br0">(</span>ddsHTSeq.<span class="me1">res</span><span class="br0">)</span> + + <span class="co1"># png(filename=paste0(outdir,"plots/",paste0(cName, " DESeq2 - plotMA")))</span> + <span class="co1"># plotMA(ddsHTSeq, main = paste0(cName, "\nDESeq2 - plotMA"), ylim = c(-2, 2))</span> + <span class="co1"># dev.off()</span> + + ddsHTSeq.<span class="me1">res</span>.<span class="me1">fdr</span> <span class="sy0"><-</span> ddsHTSeq.<span class="me1">res</span><span class="br0">[</span><span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/is.na.html"><span class="kw2">is.<span class="me1">na</span></span></a><span class="br0">(</span>ddsHTSeq.<span class="me1">res</span>$padj<span class="br0">)</span>, <span class="br0">]</span> + ddsHTSeq.<span class="me1">res</span>.<span class="me1">fdr</span> <span class="sy0"><-</span> ddsHTSeq.<span class="me1">res</span>.<span class="me1">fdr</span><span class="br0">[</span>ddsHTSeq.<span class="me1">res</span>.<span class="me1">fdr</span>$padj <span class="sy0"><</span> pvt, <span class="br0">]</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.matrix.html"><span class="kw2">as.<span class="me1">matrix</span></span></a><span class="br0">(</span>ddsHTSeq.<span class="me1">res</span>.<span class="me1">fdr</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, cName, <span class="st0">"_"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.matrix.html"><span class="kw2">as.<span class="me1">matrix</span></span></a><span class="br0">(</span>ddsHTSeq.<span class="me1">res</span>.<span class="me1">fdr</span><span class="br0">)</span><span class="br0">)</span>, <span class="st0">"_DESeq2_fdr.tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + + ddsHTSeq.<span class="me1">rld</span> <span class="sy0"><-</span> rlogTransformation<span class="br0">(</span>ddsHTSeq, blind <span class="sy0">=</span> TRUE<span class="br0">)</span> + ddsHTSeq.<span class="me1">vsd</span> <span class="sy0"><-</span> varianceStabilizingTransformation<span class="br0">(</span>ddsHTSeq, blind <span class="sy0">=</span> TRUE<span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/par.html"><span class="kw4">par</span></a><span class="br0">(</span>mfrow <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="nu0">1</span>, <span class="nu0">3</span><span class="br0">)</span><span class="br0">)</span> + notAllZero <span class="sy0"><-</span> <span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rowSums.html"><span class="kw2">rowSums</span></a><span class="br0">(</span>counts<span class="br0">(</span>ddsHTSeq<span class="br0">)</span><span class="br0">)</span> <span class="sy0">></span> <span class="nu0">0</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" DESeq2 - SdPlot.1"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + meanSdPlot<span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/log2.html"><span class="kw2">log2</span></a><span class="br0">(</span>counts<span class="br0">(</span>ddsHTSeq, normalized <span class="sy0">=</span> TRUE<span class="br0">)</span><span class="br0">[</span>notAllZero, <span class="br0">]</span> <span class="sy0">+</span> <span class="nu0">1</span><span class="br0">)</span><span class="br0">)</span> <span class="co1"># , ylim = c(0, 2.5)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" DESeq2 - SdPlot.2"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> <span class="co1"># , ylim = c(0, 2.5)</span> + meanSdPlot<span class="br0">(</span>assay<span class="br0">(</span>ddsHTSeq.<span class="me1">rld</span><span class="br0">[</span>notAllZero, <span class="br0">]</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" DESeq2 - SdPlot.3"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> <span class="co1"># , ylim = c(0, 2.5)</span> + meanSdPlot<span class="br0">(</span>assay<span class="br0">(</span>ddsHTSeq.<span class="me1">vsd</span><span class="br0">[</span>notAllZero, <span class="br0">]</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + hmcol <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/colorRampPalette.html"><span class="kw5">colorRampPalette</span></a><span class="br0">(</span>brewer.<span class="me1">pal</span><span class="br0">(</span><span class="nu0">9</span>, <span class="st0">"GnBu"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">(</span><span class="nu0">100</span><span class="br0">)</span> + distRL <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/dist.html"><span class="kw7">dist</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/t.html"><span class="kw2">t</span></a><span class="br0">(</span>assay<span class="br0">(</span>ddsHTSeq.<span class="me1">rld</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + mat <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.matrix.html"><span class="kw2">as.<span class="me1">matrix</span></span></a><span class="br0">(</span>distRL<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>mat<span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>mat<span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/with.html"><span class="kw2">with</span></a><span class="br0">(</span>colData<span class="br0">(</span>ddsHTSeq<span class="br0">)</span>, paste0<span class="br0">(</span>condition<span class="br0">)</span><span class="br0">)</span> + + <span class="co1"># png(filename=paste0(outdir,"plots/",paste0(cName, " DESeq2 - heatmap")))</span> + <span class="co1"># heatmap(mat, trace = "none", col = rev(hmcol), margin = c(13, 13))</span> + <span class="co1"># dev.off()</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" DESeq2 - PCA"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>plotPCA<span class="br0">(</span>ddsHTSeq.<span class="me1">rld</span>, intgroup <span class="sy0">=</span> <span class="st0">"condition"</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" DESeq2 - DispEsts"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + plotDispEsts<span class="br0">(</span>ddsHTSeq, main <span class="sy0">=</span> paste0<span class="br0">(</span>cName, <span class="st0">"<span class="es0">\n</span>DESeq2 - plotDispEsts"</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> +<span class="br0">}</span> + +NOISeqFunction <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>odir, NOISeqDir, cName, RTableInFiles, pvtNOISeq, sampleNameI, sampleNameII, myLenPos, myGCPos, LenGCTable, columnPos, sampleNameList, SampleNames<span class="br0">)</span> +<span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span>NOISeq<span class="br0">)</span> + + outdir <span class="sy0"><-</span> paste0<span class="br0">(</span>odir, <span class="st0">"/"</span>,NOISeqDir,<span class="st0">"/"</span><span class="br0">)</span> <span class="co1"># set outdir</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.create.html"><span class="kw2">dir.<span class="me1">create</span></span></a><span class="br0">(</span>outdir, showWarnings <span class="sy0">=</span> FALSE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.create.html"><span class="kw2">dir.<span class="me1">create</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots"</span><span class="br0">)</span>, showWarnings <span class="sy0">=</span> FALSE<span class="br0">)</span> <span class="co1"># create subfolder "plots"</span> + + pvt <span class="sy0"><-</span> pvtNOISeq + + counts <span class="sy0"><-</span> RTableInFiles<span class="br0">[</span>, columnPos<span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/head.html"><span class="kw8">head</span></a><span class="br0">(</span>counts<span class="br0">)</span> + + <span class="co1"># must be changed if there are no triplicates</span> + <span class="co1"># !! Please change this setting if needed !!</span> + myfactors <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/data.frame.html"><span class="kw2">data.<span class="me1">frame</span></span></a><span class="br0">(</span>Treatment <span class="sy0">=</span> sampleNameList, TreatmentRun <span class="sy0">=</span> SampleNames<span class="br0">)</span> + <span class="co1"># sort counts by row names</span> + mycounts <span class="sy0"><-</span> counts<span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/order.html"><span class="kw2">order</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>counts<span class="br0">)</span><span class="br0">)</span>, <span class="br0">]</span> + <span class="co1"># filter out low counts</span> + mycounts.<span class="me1">filter</span> <span class="sy0"><-</span> filtered.<span class="me1">data</span><span class="br0">(</span>mycounts, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> myfactors$Treatment, norm <span class="sy0">=</span> FALSE, depth <span class="sy0">=</span> NULL, method <span class="sy0">=</span> <span class="nu0">1</span>, cv.<span class="me1">cutoff</span> <span class="sy0">=</span> <span class="nu0">100</span>, cpm <span class="sy0">=</span> <span class="nu0">1</span><span class="br0">)</span> + mycounts.<span class="me1">rowname</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>mycounts.<span class="me1">filter</span><span class="br0">)</span> + + <span class="co1"># Extra file with length and GC content</span> + myLengthTable <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>LenGCTable, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, header <span class="sy0">=</span> TRUE, stringsAsFactor <span class="sy0">=</span> FALSE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + myLengthTable <span class="sy0"><-</span> myLengthTable<span class="br0">[</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/order.html"><span class="kw2">order</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>myLengthTable<span class="br0">)</span><span class="br0">)</span>,<span class="br0">]</span> <span class="co1"># sort by rownames</span> + myLengthTable.<span class="me1">filter</span> <span class="sy0"><-</span> myLengthTable<span class="br0">[</span>mycounts.<span class="me1">rowname</span>,<span class="br0">]</span> + + mylength <span class="sy0"><-</span> myLengthTable.<span class="me1">filter</span><span class="br0">[</span>,myLenPos<span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/names.html"><span class="kw2">names</span></a><span class="br0">(</span>mylength<span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>myLengthTable.<span class="me1">filter</span><span class="br0">)</span> + + mygc <span class="sy0"><-</span> myLengthTable.<span class="me1">filter</span><span class="br0">[</span>,myGCPos<span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/names.html"><span class="kw2">names</span></a><span class="br0">(</span>mygc<span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>myLengthTable.<span class="me1">filter</span><span class="br0">)</span> + + + + + + mydata <span class="sy0"><-</span> readData<span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a> <span class="sy0">=</span> mycounts.<span class="me1">filter</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a> <span class="sy0">=</span> mylength, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/gc.html"><span class="kw2">gc</span></a> <span class="sy0">=</span> mygc, factors <span class="sy0">=</span> myfactors<span class="br0">)</span> + mydata + + mydata.<span class="me1">GCbias</span> <span class="sy0"><-</span> dat<span class="br0">(</span>mydata, type <span class="sy0">=</span> <span class="st0">"GCbias"</span><span class="br0">)</span> +<span class="co1">#-# png(filename=paste0(outdir,"plots/",paste0(cName, " NOISeq - GCbias.1")))</span> +<span class="co1">#-# explo.plot(mydata.GCbias)</span> +<span class="co1">#-# dev.off()</span> + + mydata.<span class="me1">GCbias</span>.<span class="me1">group</span> <span class="sy0"><-</span> dat<span class="br0">(</span>mydata, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> <span class="st0">"Treatment"</span>, type <span class="sy0">=</span> <span class="st0">"GCbias"</span><span class="br0">)</span> +<span class="co1">#-# png(filename=paste0(outdir,"plots/",paste0(cName, " NOISeq - GCbias.2")))</span> +<span class="co1">#-# explo.plot(mydata.GCbias.group)</span> +<span class="co1">#-# dev.off()</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/methods/html/show.html"><span class="kw6">show</span></a><span class="br0">(</span>mydata.<span class="me1">GCbias</span>.<span class="me1">group</span><span class="br0">)</span> + + mydata.<span class="me1">lengthbias</span> <span class="sy0"><-</span> dat<span class="br0">(</span>mydata, type <span class="sy0">=</span> <span class="st0">"lengthbias"</span><span class="br0">)</span> +<span class="co1">#-# png(filename=paste0(outdir,"plots/",paste0(cName, " NOISeq - Lenbias.1")))</span> +<span class="co1">#-# explo.plot(mydata.lengthbias)</span> +<span class="co1">#-# dev.off()</span> + + mydata.<span class="me1">lengthbias</span>.<span class="me1">group</span> <span class="sy0"><-</span> dat<span class="br0">(</span>mydata, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> <span class="st0">"Treatment"</span>, type <span class="sy0">=</span> <span class="st0">"lengthbias"</span><span class="br0">)</span> +<span class="co1">#-# png(filename=paste0(outdir,"plots/",paste0(cName, " NOISeq - Lenbias.2")))</span> +<span class="co1">#-# explo.plot(mydata.lengthbias.group)</span> +<span class="co1">#-# dev.off()</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/methods/html/show.html"><span class="kw6">show</span></a><span class="br0">(</span>mydata.<span class="me1">lengthbias</span>.<span class="me1">group</span><span class="br0">)</span> + + <span class="co1"># looks different</span> + mydata.<span class="me1">cd</span> <span class="sy0"><-</span> dat<span class="br0">(</span>mydata, type <span class="sy0">=</span> <span class="st0">"cd"</span><span class="br0">)</span> +<span class="co1">#-# png(filename=paste0(outdir,"plots/",paste0(cName, " NOISeq - cd")))</span> +<span class="co1">#-# explo.plot(mydata.cd)</span> +<span class="co1">#-# dev.off()</span> + mylength + + myRPKM <span class="sy0"><-</span> NOISeq<span class="sy0">::</span><span class="me2">rpkm</span><span class="br0">(</span>assayData<span class="br0">(</span>mydata<span class="br0">)</span>$exprs<span class="br0">)</span> + myUQUA <span class="sy0"><-</span> NOISeq<span class="sy0">::</span><span class="me2">uqua</span><span class="br0">(</span>assayData<span class="br0">(</span>mydata<span class="br0">)</span>$exprs, long <span class="sy0">=</span> mylength, lc <span class="sy0">=</span> <span class="nu0">0.5</span>, k <span class="sy0">=</span> <span class="nu0">0</span><span class="br0">)</span> + myTMM <span class="sy0"><-</span> NOISeq<span class="sy0">::</span><span class="me2">tmm</span><span class="br0">(</span>assayData<span class="br0">(</span>mydata<span class="br0">)</span>$exprs, long <span class="sy0">=</span> <span class="nu0">1000</span>, lc <span class="sy0">=</span> <span class="nu0">0</span><span class="br0">)</span> + + mynoiseq.<span class="me1">rpkm</span> <span class="sy0"><-</span> noiseq<span class="br0">(</span>mydata, k <span class="sy0">=</span> <span class="nu0">0.5</span>, norm <span class="sy0">=</span> <span class="st0">"rpkm"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> <span class="st0">"Treatment"</span>, pnr <span class="sy0">=</span> <span class="nu0">0.2</span>, nss <span class="sy0">=</span> <span class="nu0">5</span>, v <span class="sy0">=</span> <span class="nu0">0.02</span>, lc <span class="sy0">=</span> <span class="nu0">1</span>, replicates <span class="sy0">=</span> <span class="st0">"biological"</span><span class="br0">)</span> + mynoiseq.<span class="me1">nnorm</span> <span class="sy0"><-</span> noiseq<span class="br0">(</span>mydata, k <span class="sy0">=</span> <span class="nu0">0.5</span>, norm <span class="sy0">=</span> <span class="st0">"n"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> <span class="st0">"Treatment"</span>, pnr <span class="sy0">=</span> <span class="nu0">0.2</span>, nss <span class="sy0">=</span> <span class="nu0">5</span>, v <span class="sy0">=</span> <span class="nu0">0.02</span>, lc <span class="sy0">=</span> <span class="nu0">1</span>, replicates <span class="sy0">=</span> <span class="st0">"biological"</span><span class="br0">)</span> + mynoiseq.<span class="me1">tmm</span> <span class="sy0"><-</span> noiseq<span class="br0">(</span>mydata, k <span class="sy0">=</span> <span class="nu0">0.5</span>, norm <span class="sy0">=</span> <span class="st0">"tmm"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> <span class="st0">"Treatment"</span>, pnr <span class="sy0">=</span> <span class="nu0">0.2</span>, nss <span class="sy0">=</span> <span class="nu0">5</span>, v <span class="sy0">=</span> <span class="nu0">0.02</span>, lc <span class="sy0">=</span> <span class="nu0">1</span>, replicates <span class="sy0">=</span> <span class="st0">"biological"</span><span class="br0">)</span> + + <span class="co1"># RPKM</span> + mynoiseq.<span class="me1">rpkm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseq.<span class="me1">rpkm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">[</span>mynoiseq.<span class="me1">rpkm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span>$prob <span class="sy0">></span> pvt, <span class="br0">]</span> + mynoiseq.<span class="me1">rpkm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseq.<span class="me1">rpkm</span>.<span class="me1">prob</span><span class="br0">[</span><span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/is.na.html"><span class="kw2">is.<span class="me1">na</span></span></a><span class="br0">(</span>mynoiseq.<span class="me1">rpkm</span>.<span class="me1">prob</span>$prob<span class="br0">)</span>, <span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span>mynoiseq.<span class="me1">rpkm</span>.<span class="me1">prob</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, cName, <span class="st0">"_"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>mynoiseq.<span class="me1">rpkm</span>.<span class="me1">prob</span><span class="br0">)</span>, <span class="st0">"_NOISeq_rpkm_prob.tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + <span class="co1"># none</span> + mynoiseq.<span class="me1">nnorm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseq.<span class="me1">nnorm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">[</span>mynoiseq.<span class="me1">nnorm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span>$prob <span class="sy0">></span> pvt, <span class="br0">]</span> + mynoiseq.<span class="me1">nnorm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseq.<span class="me1">nnorm</span>.<span class="me1">prob</span><span class="br0">[</span><span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/is.na.html"><span class="kw2">is.<span class="me1">na</span></span></a><span class="br0">(</span>mynoiseq.<span class="me1">nnorm</span>.<span class="me1">prob</span>$prob<span class="br0">)</span>, <span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span>mynoiseq.<span class="me1">nnorm</span>.<span class="me1">prob</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, cName,<span class="st0">"_"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>mynoiseq.<span class="me1">nnorm</span>.<span class="me1">prob</span><span class="br0">)</span>, <span class="st0">"_NOISeq_nnorm_prob.tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + <span class="co1"># TMM</span> + mynoiseq.<span class="me1">tmm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseq.<span class="me1">tmm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">[</span>mynoiseq.<span class="me1">tmm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span>$prob <span class="sy0">></span> pvt, <span class="br0">]</span> + mynoiseq.<span class="me1">tmm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseq.<span class="me1">tmm</span>.<span class="me1">prob</span><span class="br0">[</span><span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/is.na.html"><span class="kw2">is.<span class="me1">na</span></span></a><span class="br0">(</span>mynoiseq.<span class="me1">tmm</span>.<span class="me1">prob</span>$prob<span class="br0">)</span>, <span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span>mynoiseq.<span class="me1">tmm</span>.<span class="me1">prob</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, cName,<span class="st0">"_"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>mynoiseq.<span class="me1">tmm</span>.<span class="me1">prob</span><span class="br0">)</span>, <span class="st0">"_NOISeq_tmm_prob.tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + + <span class="co1">############ NOISeq bio ################</span> + + pvtnsb <span class="sy0"><-</span> <span class="nu0">0.995</span> + a0per_value <span class="sy0"><-</span> <span class="nu0">0.99</span> + + iterations <span class="sy0"><-</span> <span class="nu0">5</span> + x5 <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/sample.html"><span class="kw2">sample</span></a><span class="br0">(</span><span class="nu0">10000</span><span class="sy0">:</span><span class="nu0">99999</span>, iterations, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/replace.html"><span class="kw2">replace</span></a><span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/F.html"><span class="kw2">F</span></a><span class="br0">)</span>, <span class="nu0">12345</span><span class="br0">)</span> + x5 + + collector.<span class="me1">rpkm</span> <span class="sy0"><-</span> NULL + collector.<span class="me1">tmm</span> <span class="sy0"><-</span> NULL + + + <span class="co1"># for (iter in x5) {</span> + <span class="co1"># # RPKM</span> + <span class="co1"># mynoiseqbio.rpkm <- noiseqbio(mydata, k = 0.5, norm = "rpkm", factor = "Treatment", lc = 1, r = 20, adj = 1.5, a0per = a0per_value, random.seed = iter, filter = 1)#, plot = TRUE)</span> + <span class="co1"># mynoiseqbio.rpkm.prob <- mynoiseqbio.rpkm@results[[1]][mynoiseqbio.rpkm@results[[1]]$prob > pvtnsb, ]</span> + <span class="co1"># mynoiseqbio.rpkm.prob <- mynoiseqbio.rpkm.prob[!is.na(mynoiseqbio.rpkm.prob$prob), ]</span> + <span class="co1"># collector.rpkm <- rbind(collector.rpkm, mynoiseqbio.rpkm.prob)</span> + <span class="co1"># #collector <- rbind(collector, mynoiseqbio.rpkm.prob[rownames(mynoiseqbio.rpkm.prob) %in% rownames(collector),])</span> + <span class="co1"># # TMM</span> + <span class="co1"># mynoiseqbio.tmm <- noiseqbio(mydata, k = 0.5, norm = "tmm", factor = "Treatment", lc = 1, r = 20, adj = 1.5, a0per = a0per_value, random.seed = iter, filter = 1)#, plot = TRUE)</span> + <span class="co1"># mynoiseqbio.tmm.prob <- mynoiseqbio.tmm@results[[1]][mynoiseqbio.tmm@results[[1]]$prob > pvtnsb, ]</span> + <span class="co1"># mynoiseqbio.tmm.prob <- mynoiseqbio.tmm.prob[!is.na(mynoiseqbio.tmm.prob$prob), ]</span> + <span class="co1"># collector.tmm <- rbind(collector.tmm, mynoiseqbio.tmm.prob)</span> + <span class="co1"># }</span> + <span class="co1">#</span> + <span class="co1"># # RPKM</span> + <span class="co1"># print(sort(row.names(collector.rpkm)))</span> + <span class="co1"># library(stringr)</span> + <span class="co1"># mynoiseqbio.rpkm.prob.overlap <- collector.rpkm[str_split_fixed(row.names(collector.rpkm), "\\.",2)[,2]>=iterations+10,]</span> + <span class="co1"># row.names(mynoiseqbio.rpkm.prob.overlap) <- substr(row.names(mynoiseqbio.rpkm.prob.overlap),1,str_length(row.names(mynoiseqbio.rpkm.prob.overlap))-1)</span> + <span class="co1">#</span> + <span class="co1"># write.table(mynoiseqbio.rpkm.prob.overlap, file = paste0(outdir, cName,"_", nrow(mynoiseqbio.rpkm.prob.overlap),"_NOISeqbio_rpkm_prob_seed_iteration_overlap.tsv"), sep = "\t", col.names = TRUE, row.names = TRUE, quote = FALSE)</span> + <span class="co1">#</span> + <span class="co1"># #TMM</span> + <span class="co1"># print(sort(row.names(collector.tmm)))</span> + <span class="co1"># library(stringr)</span> + <span class="co1"># mynoiseqbio.tmm.prob.overlap <- collector.tmm[str_split_fixed(row.names(collector.tmm), "\\.",2)[,2]>=iterations+10,]</span> + <span class="co1"># row.names(mynoiseqbio.tmm.prob.overlap) <- substr(row.names(mynoiseqbio.tmm.prob.overlap),1,str_length(row.names(mynoiseqbio.tmm.prob.overlap))-1)</span> + <span class="co1">#</span> + <span class="co1"># write.table(mynoiseqbio.tmm.prob.overlap, file = paste0(outdir, cName,"_", nrow(mynoiseqbio.tmm.prob.overlap),"_NOISeqbio_tmm_prob_seed_iteration_overlap.tsv"), sep = "\t", col.names = TRUE, row.names = TRUE, quote = FALSE)</span> + + <span class="co1"># # none</span> + <span class="co1"># mynoiseqbio.nnorm.prob <- mynoiseqbio.nnorm@results[[1]][mynoiseqbio.nnorm@results[[1]]$prob > pvtnsb, ]</span> + <span class="co1"># mynoiseqbio.nnorm.prob <- mynoiseqbio.nnorm.prob[!is.na(mynoiseqbio.nnorm.prob$prob), ]</span> + <span class="co1"># write.table(mynoiseqbio.nnorm.prob, file = paste0(outdir, cName, "_NOISeqbio_nnorm_prob.tsv"), sep = "\t", col.names = TRUE, row.names = TRUE, quote = FALSE)</span> + <span class="co1"># # TMM</span> + <span class="co1"># mynoiseqbio.tmm.prob <- mynoiseqbio.tmm@results[[1]][mynoiseqbio.tmm@results[[1]]$prob > pvtnsb, ]</span> + <span class="co1"># mynoiseqbio.tmm.prob <- mynoiseqbio.tmm.prob[!is.na(mynoiseqbio.tmm.prob$prob), ]</span> + <span class="co1"># write.table(mynoiseqbio.tmm.prob, file = paste0(outdir, cName, "_NOISeqbio_tmm_prob.tsv"), sep = "\t", col.names = TRUE, row.names = TRUE, quote = FALSE)</span> + + + + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - noiseqbiorpkm"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + mynoiseqbio.<span class="me1">rpkm</span> <span class="sy0"><-</span> noiseqbio<span class="br0">(</span>mydata, k <span class="sy0">=</span> <span class="nu0">0.5</span>, norm <span class="sy0">=</span> <span class="st0">"rpkm"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> <span class="st0">"Treatment"</span>, lc <span class="sy0">=</span> <span class="nu0">1</span>, r <span class="sy0">=</span> <span class="nu0">20</span>, adj <span class="sy0">=</span> <span class="nu0">1.5</span>, a0per <span class="sy0">=</span> a0per_value, random.<span class="me1">seed</span> <span class="sy0">=</span> <span class="nu0">12345</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/filter.html"><span class="kw7">filter</span></a> <span class="sy0">=</span> <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/plot.html"><span class="kw4">plot</span></a> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseqbio.<span class="me1">rpkm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">[</span>mynoiseqbio.<span class="me1">rpkm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span>$prob <span class="sy0">></span> pvtnsb, <span class="br0">]</span> + mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">prob</span><span class="br0">[</span><span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/is.na.html"><span class="kw2">is.<span class="me1">na</span></span></a><span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">prob</span>$prob<span class="br0">)</span>, <span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">prob</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, cName,<span class="st0">"_"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">prob</span><span class="br0">)</span>,<span class="st0">"_NOISeqbio_rpkm_prob_seed_12345.tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - noiseqbiontmm"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + mynoiseqbio.<span class="me1">tmm</span> <span class="sy0"><-</span> noiseqbio<span class="br0">(</span>mydata, k <span class="sy0">=</span> <span class="nu0">0.5</span>, norm <span class="sy0">=</span> <span class="st0">"tmm"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> <span class="st0">"Treatment"</span>, lc <span class="sy0">=</span> <span class="nu0">1</span>, r <span class="sy0">=</span> <span class="nu0">20</span>, adj <span class="sy0">=</span> <span class="nu0">1.5</span>, a0per <span class="sy0">=</span> a0per_value, random.<span class="me1">seed</span> <span class="sy0">=</span> <span class="nu0">12345</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/filter.html"><span class="kw7">filter</span></a> <span class="sy0">=</span> <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/plot.html"><span class="kw4">plot</span></a> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + mynoiseqbio.<span class="me1">tmm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseqbio.<span class="me1">tmm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">[</span>mynoiseqbio.<span class="me1">tmm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span>$prob <span class="sy0">></span> pvtnsb, <span class="br0">]</span> + mynoiseqbio.<span class="me1">tmm</span>.<span class="me1">prob</span> <span class="sy0"><-</span> mynoiseqbio.<span class="me1">tmm</span>.<span class="me1">prob</span><span class="br0">[</span><span class="sy0">!</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/is.na.html"><span class="kw2">is.<span class="me1">na</span></span></a><span class="br0">(</span>mynoiseqbio.<span class="me1">tmm</span>.<span class="me1">prob</span>$prob<span class="br0">)</span>, <span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html"><span class="kw8">write.<span class="me1">table</span></span></a><span class="br0">(</span>mynoiseqbio.<span class="me1">tmm</span>.<span class="me1">prob</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a> <span class="sy0">=</span> paste0<span class="br0">(</span>outdir, cName,<span class="st0">"_"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>mynoiseqbio.<span class="me1">tmm</span>.<span class="me1">prob</span><span class="br0">)</span>,<span class="st0">"_NOISeqbio_tmm_prob_seed_12345.tsv"</span><span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, col.<span class="me1">names</span> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> TRUE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/quote.html"><span class="kw2">quote</span></a> <span class="sy0">=</span> FALSE<span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - noiseqbionnorm"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + mynoiseqbio.<span class="me1">nnorm</span> <span class="sy0"><-</span> noiseqbio<span class="br0">(</span>mydata, k <span class="sy0">=</span> <span class="nu0">0.5</span>, norm <span class="sy0">=</span> <span class="st0">"n"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a> <span class="sy0">=</span> <span class="st0">"Treatment"</span>, lc <span class="sy0">=</span> <span class="nu0">1</span>, r <span class="sy0">=</span> <span class="nu0">20</span>, adj <span class="sy0">=</span> <span class="nu0">1.5</span>, a0per <span class="sy0">=</span> a0per_value, random.<span class="me1">seed</span> <span class="sy0">=</span> <span class="nu0">12345</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/filter.html"><span class="kw7">filter</span></a> <span class="sy0">=</span> <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/plot.html"><span class="kw4">plot</span></a> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/head.html"><span class="kw8">head</span></a><span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/head.html"><span class="kw8">head</span></a><span class="br0">(</span>mynoiseqbio.<span class="me1">nnorm</span>@results<span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">)</span> + + mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">deg</span> <span class="sy0"><-</span> degenes<span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvtnsb, M <span class="sy0">=</span> NULL<span class="br0">)</span> + + mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">deg</span>.<span class="me1">up</span> <span class="sy0"><-</span> degenes<span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvtnsb, M <span class="sy0">=</span> <span class="st0">"up"</span><span class="br0">)</span> + mynoiseqbio.<span class="me1">rpkm</span>.<span class="me1">deg</span>.<span class="me1">down</span> <span class="sy0"><-</span> degenes<span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvtnsb, M <span class="sy0">=</span> <span class="st0">"down"</span><span class="br0">)</span> + mynoiseqbio.<span class="me1">nnorm</span>.<span class="me1">deg</span> <span class="sy0"><-</span> degenes<span class="br0">(</span>mynoiseqbio.<span class="me1">nnorm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvtnsb, M <span class="sy0">=</span> NULL<span class="br0">)</span> + mynoiseqbio.<span class="me1">nnorm</span>.<span class="me1">deg</span>.<span class="me1">up</span> <span class="sy0"><-</span> degenes<span class="br0">(</span>mynoiseqbio.<span class="me1">nnorm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvtnsb, M <span class="sy0">=</span> <span class="st0">"up"</span><span class="br0">)</span> + mynoiseqbio.<span class="me1">nnorm</span>.<span class="me1">deg</span>.<span class="me1">down</span> <span class="sy0"><-</span> degenes<span class="br0">(</span>mynoiseqbio.<span class="me1">nnorm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvtnsb, M <span class="sy0">=</span> <span class="st0">"down"</span><span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/par.html"><span class="kw4">par</span></a><span class="br0">(</span>mfrow <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="nu0">3</span>, <span class="nu0">2</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - DE.rpkm_0.9"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseq.<span class="me1">rpkm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> <span class="nu0">0.9</span>, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - DE.rpkm_0.8"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseq.<span class="me1">rpkm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> <span class="nu0">0.8</span>, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - DE.nnorn_0.9"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseq.<span class="me1">nnorm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> <span class="nu0">0.9</span>, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - DE.nnorn_0.8"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseq.<span class="me1">nnorm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> <span class="nu0">0.8</span>, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - DE.tmm_0.9"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseq.<span class="me1">tmm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> <span class="nu0">0.9</span>, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - DE.tmm_0.8"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseq.<span class="me1">tmm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> <span class="nu0">0.8</span>, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/par.html"><span class="kw4">par</span></a><span class="br0">(</span>mfrow <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="nu0">2</span>, <span class="nu0">2</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeqbio - DE.rpkm_"</span>,pvt<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvt, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeqbio - DE.rpkm_"</span>,pvtnsb<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseqbio.<span class="me1">rpkm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvtnsb, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeqbio - DE.nnorm_"</span>,pvt<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseqbio.<span class="me1">nnorm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvt, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeqbio - DE.nnorm_"</span>,pvtnsb<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseqbio.<span class="me1">nnorm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> pvtnsb, graphic <span class="sy0">=</span> <span class="st0">"expr"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/par.html"><span class="kw4">par</span></a><span class="br0">(</span>mfrow <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="nu0">1</span>, <span class="nu0">2</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - DE.rpkm_0.9_MD"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseq.<span class="me1">rpkm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> <span class="nu0">0.9</span>, graphic <span class="sy0">=</span> <span class="st0">"MD"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>outdir,<span class="st0">"plots/"</span>,paste0<span class="br0">(</span>cName, <span class="st0">" NOISeq - DE.nnorm_0.9_MD"</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + DE.<span class="me1">plot</span><span class="br0">(</span>mynoiseq.<span class="me1">nnorm</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/q.html"><span class="kw2">q</span></a> <span class="sy0">=</span> <span class="nu0">0.9</span>, graphic <span class="sy0">=</span> <span class="st0">"MD"</span>, log.<span class="me1">scale</span> <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> +<span class="br0">}</span> + +<span class="co1">###########################################</span> +<span class="co1">## additional function for more usability #</span> +<span class="co1">###########################################</span> + +calcRPKM <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a>,n,l<span class="br0">)</span> +<span class="br0">{</span> + RPKM <span class="sy0"><-</span> <span class="br0">(</span><span class="nu0">10</span><span class="sy0">^</span><span class="nu0">9</span><span class="sy0">*</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.numeric.html"><span class="kw2">as.<span class="me1">numeric</span></span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">)</span><span class="br0">)</span> <span class="sy0">/</span> <span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.numeric.html"><span class="kw2">as.<span class="me1">numeric</span></span></a><span class="br0">(</span>n<span class="br0">)</span> <span class="sy0">*</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.numeric.html"><span class="kw2">as.<span class="me1">numeric</span></span></a><span class="br0">(</span>l<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>RPKM<span class="br0">)</span> +<span class="br0">}</span> + +RPKMMatrix <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>InTable,directory,LenGCTable,myLenPos<span class="br0">)</span> +<span class="br0">{</span> + myLengthTable <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>directory,LenGCTable<span class="br0">)</span>, sep <span class="sy0">=</span> <span class="st0">"<span class="es0">\t</span>"</span>, header <span class="sy0">=</span> TRUE, stringsAsFactor <span class="sy0">=</span> FALSE, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a> <span class="sy0">=</span> <span class="nu0">1</span><span class="br0">)</span> + + newtable <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/matrix.html"><span class="kw2">matrix</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/data.html"><span class="kw8">data</span></a> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="nu0">1</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>InTable<span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ncol.html"><span class="kw2">ncol</span></a><span class="br0">(</span>InTable<span class="br0">)</span>, byrow<span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>newtable<span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>InTable<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>newtable<span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>InTable<span class="br0">)</span> + + sumCol <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/apply.html"><span class="kw2">apply</span></a><span class="br0">(</span>InTable,<span class="nu0">2</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/sum.html"><span class="kw2">sum</span></a><span class="br0">)</span> <span class="co1"># list of the all col sums</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/for.html"><span class="kw2">for</span></a><span class="br0">(</span>s <span class="kw1">in</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>InTable<span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/for.html"><span class="kw2">for</span></a><span class="br0">(</span>r <span class="kw1">in</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>InTable<span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + w <span class="sy0"><-</span> InTable<span class="br0">[</span>r, s<span class="br0">]</span> + len <span class="sy0"><-</span> myLengthTable<span class="br0">[</span>r, myLenPos<span class="br0">]</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/sum.html"><span class="kw2">sum</span></a> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.numeric.html"><span class="kw2">as.<span class="me1">numeric</span></span></a><span class="br0">(</span>sumCol<span class="br0">[</span>s<span class="br0">]</span><span class="br0">)</span> + + newtable<span class="br0">[</span>r, s<span class="br0">]</span> <span class="sy0"><-</span> calcRPKM<span class="br0">(</span>w, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/sum.html"><span class="kw2">sum</span></a>, len<span class="br0">)</span> + <span class="br0">}</span> + <span class="br0">}</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>newtable<span class="br0">)</span> +<span class="br0">}</span> + + +<span class="co1"># rmHTSeqLines removes the last five rows</span> +rmHTSeqLines <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>counts<span class="br0">)</span> +<span class="br0">{</span> + counts <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/head.html"><span class="kw8">head</span></a><span class="br0">(</span>counts, <span class="sy0">-</span><span class="nu0">5</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>counts<span class="br0">)</span> +<span class="br0">}</span> + + +<span class="co1">###############</span> +<span class="co1">## functions ##</span> +<span class="co1">###############</span> + +<span class="co1"># split list to a factor list</span> +split2list <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>tmp<span class="br0">)</span> +<span class="br0">{</span> + xx <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/for.html"><span class="kw2">for</span></a><span class="br0">(</span>i <span class="kw1">in</span> <span class="nu0">1</span><span class="sy0">:</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>tmp<span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/grepl.html"><span class="kw2">grepl</span></a><span class="br0">(</span><span class="st0">"<span class="es0">\\</span>."</span>, tmp<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + foo <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/strsplit.html"><span class="kw2">strsplit</span></a><span class="br0">(</span>tmp<span class="br0">[</span>i<span class="br0">]</span>, <span class="st0">'<span class="es0">\\</span>.'</span><span class="br0">)</span><span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span> + fooo <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/strsplit.html"><span class="kw2">strsplit</span></a><span class="br0">(</span>foo, <span class="st0">" "</span><span class="br0">)</span><span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span> + xx <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>xx, fooo<span class="br0">)</span> + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + xx <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>xx, tmp<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span> + <span class="br0">}</span> + <span class="br0">}</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.factor.html"><span class="kw2">as.<span class="me1">factor</span></span></a><span class="br0">(</span>xx<span class="br0">)</span><span class="br0">)</span> +<span class="br0">}</span> + +<span class="co1"># makeGroups</span> +<span class="co1"># https://github.com/drisso/RUVSeq/blob/master/R/helper.R</span> +makeGroups <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>xs<span class="br0">)</span> +<span class="br0">{</span> + xs <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html"><span class="kw2">factor</span></a><span class="br0">(</span>xs<span class="br0">)</span> + groups <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/matrix.html"><span class="kw2">matrix</span></a><span class="br0">(</span><span class="sy0">-</span><span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/levels.html"><span class="kw2">levels</span></a><span class="br0">(</span>xs<span class="br0">)</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ncol.html"><span class="kw2">ncol</span></a> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/max.html"><span class="kw2">max</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/table.html"><span class="kw2">table</span></a><span class="br0">(</span>xs<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/for.html"><span class="kw2">for</span></a> <span class="br0">(</span>i <span class="kw1">in</span> <span class="nu0">1</span><span class="sy0">:</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/levels.html"><span class="kw2">levels</span></a><span class="br0">(</span>xs<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + idxs <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/which.html"><span class="kw2">which</span></a><span class="br0">(</span>xs <span class="sy0">==</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/levels.html"><span class="kw2">levels</span></a><span class="br0">(</span>xs<span class="br0">)</span><span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span> + groups<span class="br0">[</span>i,<span class="nu0">1</span><span class="sy0">:</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>idxs<span class="br0">)</span><span class="br0">]</span> <span class="sy0"><-</span> idxs + <span class="br0">}</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>groups<span class="br0">)</span> +<span class="br0">}</span> + +<span class="co1"># The function makeSampleList creates a list of the columns(samples) you would like to compare</span> +makeSampleList <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>A, Al, B, Bl<span class="br0">)</span> +<span class="br0">{</span> + l <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/exists.html"><span class="kw2">exists</span></a><span class="br0">(</span><span class="st0">"Al"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/mode.html"><span class="kw2">mode</span></a> <span class="sy0">=</span> <span class="st0">"numeric"</span><span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + l <span class="sy0"><-</span> makeSampleList.<span class="me1">helper</span><span class="br0">(</span>A, Al, l<span class="br0">)</span> + l <span class="sy0"><-</span> makeSampleList.<span class="me1">helper</span><span class="br0">(</span>B, Bl, l<span class="br0">)</span> + <span class="br0">}</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>l<span class="br0">)</span> +<span class="br0">}</span> +makeSampleList.<span class="me1">helper</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>v,k,l<span class="br0">)</span> +<span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/for.html"><span class="kw2">for</span></a><span class="br0">(</span>h <span class="kw1">in</span> <span class="nu0">1</span><span class="sy0">:</span>k<span class="br0">)</span> <span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span>h <span class="sy0">==</span> <span class="nu0">1</span><span class="br0">)</span> <span class="br0">{</span> + l <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>l, v<span class="br0">)</span> + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + l <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>l, paste0<span class="br0">(</span>v,<span class="st0">"."</span>,h<span class="sy0">-</span><span class="nu0">1</span><span class="br0">)</span><span class="br0">)</span> + <span class="br0">}</span> + <span class="br0">}</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>l<span class="br0">)</span> +<span class="br0">}</span> + +<span class="co1"># function creates a list of numbers out of another list. The List is the index of the given list.</span> +makeIndexList <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>l<span class="br0">)</span> +<span class="br0">{</span> + n <span class="sy0"><-</span> <span class="nu0">1</span> + jj <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/for.html"><span class="kw2">for</span></a><span class="br0">(</span>v <span class="kw1">in</span> l<span class="br0">)</span> <span class="br0">{</span> + jj <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>jj, n<span class="br0">)</span> + n <span class="sy0"><-</span> n <span class="sy0">+</span> <span class="nu0">1</span> + <span class="br0">}</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>jj<span class="br0">)</span> +<span class="br0">}</span> + +intersection <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>l,check,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/t.html"><span class="kw2">t</span></a><span class="br0">)</span> +<span class="br0">{</span> + l.<span class="me1">list</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/list.files.html"><span class="kw2">list.<span class="me1">files</span></span></a><span class="br0">(</span>path <span class="sy0">=</span> l, pattern <span class="sy0">=</span> <span class="st0">"*(rpkm|edgeR|DESeq2).*tsv"</span>, recursive <span class="sy0">=</span> TRUE<span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/grepl.html"><span class="kw2">grepl</span></a><span class="br0">(</span><span class="st0">"bio"</span>, l.<span class="me1">list</span><span class="br0">[</span><span class="nu0">4</span><span class="br0">]</span>,fixed <span class="sy0">=</span> TRUE<span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + l.<span class="me1">list</span>.<span class="me1">noiseq</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>l,<span class="st0">"/"</span>,l.<span class="me1">list</span><span class="br0">[</span><span class="nu0">3</span><span class="br0">]</span><span class="br0">)</span>, header<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a>, sep<span class="sy0">=</span><span class="st0">"<span class="es0">\t</span>"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + l.<span class="me1">list</span>.<span class="me1">noiseqbio</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>l,<span class="st0">"/"</span>,l.<span class="me1">list</span><span class="br0">[</span><span class="nu0">4</span><span class="br0">]</span><span class="br0">)</span>, header<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a>, sep<span class="sy0">=</span><span class="st0">"<span class="es0">\t</span>"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + l.<span class="me1">list</span>.<span class="me1">noiseq</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>l,<span class="st0">"/"</span>,l.<span class="me1">list</span><span class="br0">[</span><span class="nu0">4</span><span class="br0">]</span><span class="br0">)</span>, header<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a>, sep<span class="sy0">=</span><span class="st0">"<span class="es0">\t</span>"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + l.<span class="me1">list</span>.<span class="me1">noiseqbio</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>l,<span class="st0">"/"</span>,l.<span class="me1">list</span><span class="br0">[</span><span class="nu0">3</span><span class="br0">]</span><span class="br0">)</span>, header<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a>, sep<span class="sy0">=</span><span class="st0">"<span class="es0">\t</span>"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + <span class="br0">}</span> + l.<span class="me1">list</span>.<span class="me1">edgeR</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>l,<span class="st0">"/"</span>,l.<span class="me1">list</span><span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span><span class="br0">)</span>, header<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a>, sep<span class="sy0">=</span><span class="st0">"<span class="es0">\t</span>"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + l.<span class="me1">list</span>.<span class="me1">deseq2</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>paste0<span class="br0">(</span>l,<span class="st0">"/"</span>,l.<span class="me1">list</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">)</span>, header<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a>, sep<span class="sy0">=</span><span class="st0">"<span class="es0">\t</span>"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"DEGs edgeR"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">edgeR</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"DEGs deseq2"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">deseq2</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"DEGs noiseq"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">noiseq</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"DEGs noiseqbio"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">noiseqbio</span><span class="br0">)</span><span class="br0">)</span> + + interect.<span class="me1">list</span> <span class="sy0"><-</span> <span class="st0">""</span> + interect.<span class="me1">list</span>.<span class="me1">direct</span> <span class="sy0"><-</span> <span class="st0">""</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/t.html"><span class="kw2">t</span></a><span class="sy0">==</span><span class="nu0">4</span><span class="br0">)</span> <span class="br0">{</span> + <span class="co1"># List of overlaps without direction check</span> + interect.<span class="me1">list</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/intersect.html"><span class="kw2">intersect</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">edgeR</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/intersect.html"><span class="kw2">intersect</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">noiseq</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/intersect.html"><span class="kw2">intersect</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">noiseqbio</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">deseq2</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"DEGs intersection without direction check (four methods)"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>interect.<span class="me1">list</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>interect.<span class="me1">list</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"DEGs intersection with direction check"</span><span class="br0">)</span> + + <span class="co1"># List of overlaps with direction check</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>interect.<span class="me1">list</span><span class="br0">)</span><span class="sy0">!=</span><span class="nu0">0</span><span class="br0">)</span> <span class="br0">{</span> + interect.<span class="me1">list</span>.<span class="me1">direct</span> <span class="sy0"><-</span> interDirect<span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">edgeR</span>, l.<span class="me1">list</span>.<span class="me1">deseq2</span>, l.<span class="me1">list</span>.<span class="me1">noiseq</span>, l.<span class="me1">list</span>.<span class="me1">noiseqbio</span>, interect.<span class="me1">list</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>interect.<span class="me1">list</span>.<span class="me1">direct</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>interect.<span class="me1">list</span>.<span class="me1">direct</span><span class="br0">)</span> + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"0"</span><span class="br0">)</span> + <span class="br0">}</span> + <span class="br0">}</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/t.html"><span class="kw2">t</span></a><span class="sy0">==</span><span class="nu0">3</span><span class="br0">)</span> <span class="br0">{</span> + <span class="co1"># List of overlaps without direction check</span> + interect.<span class="me1">list</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/intersect.html"><span class="kw2">intersect</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">edgeR</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/intersect.html"><span class="kw2">intersect</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">noiseq</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">deseq2</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"DEGs intersection without direction check (three methods)"</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>interect.<span class="me1">list</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>interect.<span class="me1">list</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"DEGs intersection with direction check"</span><span class="br0">)</span> + + <span class="co1"># List of overlaps with direction check</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>interect.<span class="me1">list</span><span class="br0">)</span><span class="sy0">!=</span><span class="nu0">0</span><span class="br0">)</span> <span class="br0">{</span> + <span class="co1"># fake data frame with 0 rows => nrow == 0</span> + df_fake <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/data.frame.html"><span class="kw2">data.<span class="me1">frame</span></span></a><span class="br0">(</span>Date<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/as.Date.html"><span class="kw2">as.<span class="me1">Date</span></span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/character.html"><span class="kw2">character</span></a><span class="br0">(</span><span class="br0">)</span><span class="br0">)</span>, + File<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/character.html"><span class="kw2">character</span></a><span class="br0">(</span><span class="br0">)</span>, + User<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/character.html"><span class="kw2">character</span></a><span class="br0">(</span><span class="br0">)</span>, + stringsAsFactors<span class="sy0">=</span>FALSE<span class="br0">)</span> + + interect.<span class="me1">list</span>.<span class="me1">direct</span> <span class="sy0"><-</span> interDirect<span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">edgeR</span>, l.<span class="me1">list</span>.<span class="me1">deseq2</span>, l.<span class="me1">list</span>.<span class="me1">noiseq</span>, df_fake, interect.<span class="me1">list</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/length.html"><span class="kw2">length</span></a><span class="br0">(</span>interect.<span class="me1">list</span>.<span class="me1">direct</span><span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span>interect.<span class="me1">list</span>.<span class="me1">direct</span><span class="br0">)</span> + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"0"</span><span class="br0">)</span> + <span class="br0">}</span> + <span class="br0">}</span> + + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span>check <span class="sy0">==</span> <span class="nu0">1</span><span class="br0">)</span><span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">noiseq</span><span class="br0">[</span>interect.<span class="me1">list</span>.<span class="me1">direct</span>,<span class="br0">]</span><span class="br0">)</span> + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span>l.<span class="me1">list</span>.<span class="me1">noiseq</span><span class="br0">[</span>interect.<span class="me1">list</span>,<span class="br0">]</span><span class="br0">)</span> + <span class="br0">}</span> +<span class="br0">}</span> + +interDirect <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>e,d,n,nb,i<span class="br0">)</span> +<span class="br0">{</span> + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nrow.html"><span class="kw2">nrow</span></a><span class="br0">(</span>nb<span class="br0">)</span> <span class="sy0">==</span> <span class="nu0">0</span><span class="br0">)</span> <span class="br0">{</span> + nbx <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/apply.html"><span class="kw2">apply</span></a><span class="br0">(</span>n<span class="br0">[</span>i,<span class="br0">]</span>, <span class="nu0">2</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>x<span class="br0">)</span> <span class="br0">{</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ifelse.html"><span class="kw2">ifelse</span></a><span class="br0">(</span>x <span class="sy0">></span> <span class="nu0">0</span>, <span class="st0">"-"</span>, <span class="st0">"+"</span><span class="br0">)</span><span class="br0">}</span><span class="br0">)</span> <span class="co1"># use noiseq twice to simulate noiseqbio</span> + nby <span class="sy0"><-</span> paste0<span class="br0">(</span>nbx<span class="br0">[</span>,<span class="st0">"M"</span><span class="br0">]</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>nbx<span class="br0">)</span><span class="br0">)</span> + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + nbx <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/apply.html"><span class="kw2">apply</span></a><span class="br0">(</span>nb<span class="br0">[</span>i,<span class="br0">]</span>, <span class="nu0">2</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>x<span class="br0">)</span> <span class="br0">{</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ifelse.html"><span class="kw2">ifelse</span></a><span class="br0">(</span>x <span class="sy0">></span> <span class="nu0">0</span>, <span class="st0">"-"</span>, <span class="st0">"+"</span><span class="br0">)</span><span class="br0">}</span><span class="br0">)</span> + nby <span class="sy0"><-</span> paste0<span class="br0">(</span>nbx<span class="br0">[</span>,<span class="st0">"log2FC"</span><span class="br0">]</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>nbx<span class="br0">)</span><span class="br0">)</span> + <span class="br0">}</span> + + ex <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/apply.html"><span class="kw2">apply</span></a><span class="br0">(</span>e<span class="br0">[</span>i,<span class="br0">]</span>, <span class="nu0">2</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>x<span class="br0">)</span> <span class="br0">{</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ifelse.html"><span class="kw2">ifelse</span></a><span class="br0">(</span>x <span class="sy0"><</span> <span class="nu0">0</span>, <span class="st0">"-"</span>, <span class="st0">"+"</span><span class="br0">)</span><span class="br0">}</span><span class="br0">)</span> + dx <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/apply.html"><span class="kw2">apply</span></a><span class="br0">(</span>d<span class="br0">[</span>i,<span class="br0">]</span>, <span class="nu0">2</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>x<span class="br0">)</span> <span class="br0">{</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ifelse.html"><span class="kw2">ifelse</span></a><span class="br0">(</span>x <span class="sy0"><</span> <span class="nu0">0</span>, <span class="st0">"-"</span>, <span class="st0">"+"</span><span class="br0">)</span><span class="br0">}</span><span class="br0">)</span> + nx <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/apply.html"><span class="kw2">apply</span></a><span class="br0">(</span>n<span class="br0">[</span>i,<span class="br0">]</span>, <span class="nu0">2</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/function.html"><span class="kw2">function</span></a><span class="br0">(</span>x<span class="br0">)</span> <span class="br0">{</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/ifelse.html"><span class="kw2">ifelse</span></a><span class="br0">(</span>x <span class="sy0">></span> <span class="nu0">0</span>, <span class="st0">"-"</span>, <span class="st0">"+"</span><span class="br0">)</span><span class="br0">}</span><span class="br0">)</span> <span class="co1"># twisted, because edgeR and DESeq2 are calculating vice versa</span> + + ey <span class="sy0"><-</span> paste0<span class="br0">(</span>ex<span class="br0">[</span>,<span class="st0">"logFC"</span><span class="br0">]</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>ex<span class="br0">)</span><span class="br0">)</span> + dy <span class="sy0"><-</span> paste0<span class="br0">(</span>dx<span class="br0">[</span>,<span class="st0">"log2FoldChange"</span><span class="br0">]</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>dx<span class="br0">)</span><span class="br0">)</span> + ny <span class="sy0"><-</span> paste0<span class="br0">(</span>nx<span class="br0">[</span>,<span class="st0">"M"</span><span class="br0">]</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>nx<span class="br0">)</span><span class="br0">)</span> + + interect.<span class="me1">list</span>.<span class="me1">direct</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/intersect.html"><span class="kw2">intersect</span></a><span class="br0">(</span>ey, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/intersect.html"><span class="kw2">intersect</span></a><span class="br0">(</span>dy, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/intersect.html"><span class="kw2">intersect</span></a><span class="br0">(</span>ny, nby<span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> + + + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/return.html"><span class="kw2">return</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/substr.html"><span class="kw2">substr</span></a><span class="br0">(</span>interect.<span class="me1">list</span>.<span class="me1">direct</span>,<span class="nu0">2</span>,<span class="nu0">100</span><span class="br0">)</span><span class="br0">)</span> +<span class="br0">}</span> + +<span class="co1">###########################################</span> +<span class="co1">## executiv part of the script #</span> +<span class="co1">###########################################</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/for.html"><span class="kw2">for</span></a><span class="br0">(</span>SampleNames <span class="kw1">in</span> sampleLists<span class="br0">)</span> <span class="br0">{</span> + workflow<span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/file.html"><span class="kw2">file</span></a>, saveat, SampleNames, LenGCTable, myLenPos, myGCPos, rpkm, pvtedgeR, pvtDESeq2, pvtNOISeq, edgeRDir, DESeq2Dir, NOISeqDir, htseq<span class="br0">)</span> +<span class="br0">}</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/print.html"><span class="kw2">print</span></a><span class="br0">(</span><span class="st0">"Thank you for using the DEG pipeline :) <span class="es0">\n</span>"</span><span class="br0">)</span> + +<span class="co1"># fin</span> + +<span class="co1">### compare DEGs analysis ###</span> +<span class="co1"># used venny and Excel</span></pre> +</dd></dl> + + <!-- wikipage stop --> + </div> + + <div class="docInfo"><bdi>personal/haasf/2021/madland/new_deg_pipe_four_methods_noiseqbio_hoecker_20210527.txt</bdi> · Last modified: 2021/06/01 12:26 by <bdi>Fabian Haas</bdi></div> + + </div></div><!-- /content --> + + <hr class="a11y" /> + + <!-- PAGE ACTIONS --> + <div id="dokuwiki__pagetools"> + <h3 class="a11y">Page Tools</h3> + <div class="tools"> + <ul> + <li class="edit"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=edit" title="Edit this page [e]" rel="nofollow" accesskey="e"><span>Edit this page</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"/></svg></a></li><li class="revs"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=revisions" title="Old revisions [o]" rel="nofollow" accesskey="o"><span>Old revisions</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M11 7v5.11l4.71 2.79.79-1.28-4-2.37V7m0-5C8.97 2 5.91 3.92 4.27 6.77L2 4.5V11h6.5L5.75 8.25C6.96 5.73 9.5 4 12.5 4a7.5 7.5 0 0 1 7.5 7.5 7.5 7.5 0 0 1-7.5 7.5c-3.27 0-6.03-2.09-7.06-5h-2.1c1.1 4.03 4.77 7 9.16 7 5.24 0 9.5-4.25 9.5-9.5A9.5 9.5 0 0 0 12.5 2z"/></svg></a></li><li class="backlink"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=backlink" title="Backlinks" rel="nofollow"><span>Backlinks</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M10.59 13.41c.41.39.41 1.03 0 1.42-.39.39-1.03.39-1.42 0a5.003 5.003 0 0 1 0-7.07l3.54-3.54a5.003 5.003 0 0 1 7.07 0 5.003 5.003 0 0 1 0 7.07l-1.49 1.49c.01-.82-.12-1.64-.4-2.42l.47-.48a2.982 2.982 0 0 0 0-4.24 2.982 2.982 0 0 0-4.24 0l-3.53 3.53a2.982 2.982 0 0 0 0 4.24m2.82-4.24c.39-.39 1.03-.39 1.42 0a5.003 5.003 0 0 1 0 7.07l-3.54 3.54a5.003 5.003 0 0 1-7.07 0 5.003 5.003 0 0 1 0-7.07l1.49-1.49c-.01.82.12 1.64.4 2.43l-.47.47a2.982 2.982 0 0 0 0 4.24 2.982 2.982 0 0 0 4.24 0l3.53-3.53a2.982 2.982 0 0 0 0-4.24.973.973 0 0 1 0-1.42z"/></svg></a></li><li class="export_pdf"><a href="/lab/wiki/personal:haasf:2021:madland:new_deg_pipe_four_methods_noiseqbio_hoecker_20210527?do=export_pdf" title="Export to PDF" rel="nofollow"><span>Export to PDF</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M14 9h5.5L14 3.5V9M7 2h8l6 6v12a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2m4.93 10.44c.41.9.93 1.64 1.53 2.15l.41.32c-.87.16-2.07.44-3.34.93l-.11.04.5-1.04c.45-.87.78-1.66 1.01-2.4m6.48 3.81c.18-.18.27-.41.28-.66.03-.2-.02-.39-.12-.55-.29-.47-1.04-.69-2.28-.69l-1.29.07-.87-.58c-.63-.52-1.2-1.43-1.6-2.56l.04-.14c.33-1.33.64-2.94-.02-3.6a.853.853 0 0 0-.61-.24h-.24c-.37 0-.7.39-.79.77-.37 1.33-.15 2.06.22 3.27v.01c-.25.88-.57 1.9-1.08 2.93l-.96 1.8-.89.49c-1.2.75-1.77 1.59-1.88 2.12-.04.19-.02.36.05.54l.03.05.48.31.44.11c.81 0 1.73-.95 2.97-3.07l.18-.07c1.03-.33 2.31-.56 4.03-.75 1.03.51 2.24.74 3 .74.44 0 .74-.11.91-.3m-.41-.71l.09.11c-.01.1-.04.11-.09.13h-.04l-.19.02c-.46 0-1.17-.19-1.9-.51.09-.1.13-.1.23-.1 1.4 0 1.8.25 1.9.35M8.83 17c-.65 1.19-1.24 1.85-1.69 2 .05-.38.5-1.04 1.21-1.69l.48-.31m3.02-6.91c-.23-.9-.24-1.63-.07-2.05l.07-.12.15.05c.17.24.19.56.09 1.1l-.03.16-.16.82-.05.04z"/></svg></a></li><li class="top"><a href="#dokuwiki__top" title="Back to top [t]" rel="nofollow" accesskey="t"><span>Back to top</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12z"/></svg></a></li> </ul> + </div> + </div> + </div><!-- /wrapper --> + + +<!-- ********** FOOTER ********** --> +<div id="dokuwiki__footer"><div class="pad"> + + <div class="buttons"> + <a href="https://www.dokuwiki.org/donate" title="Donate" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-donate.gif" width="80" height="15" alt="Donate" /></a> + <a href="https://php.net" title="Powered by PHP" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-php.gif" width="80" height="15" alt="Powered by PHP" /></a> + <a href="//validator.w3.org/check/referer" title="Valid HTML5" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-html5.png" width="80" height="15" alt="Valid HTML5" /></a> + <a href="//jigsaw.w3.org/css-validator/check/referer?profile=css3" title="Valid CSS" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-css.png" width="80" height="15" alt="Valid CSS" /></a> + <a href="https://dokuwiki.org/" title="Driven by DokuWiki" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-dw.png" width="80" height="15" + alt="Driven by DokuWiki" /></a> + </div> +</div></div><!-- /footer --> + + </div></div><!-- /site --> + + <div class="no"><img src="/lab/wiki/lib/exe/taskrunner.php?id=personal%3Ahaasf%3A2021%3Amadland%3Anew_deg_pipe_four_methods_noiseqbio_hoecker_20210527&1697030145" width="2" height="1" alt="" /></div> + <div id="screen__mode" class="no"></div></body> +</html> diff --git a/workflows/personal haasf 2021 madland rnaseqhoecker 3d_pca_plot_hoecker_20210527.r b/workflows/personal haasf 2021 madland rnaseqhoecker 3d_pca_plot_hoecker_20210527.r new file mode 100644 index 0000000..a96f5e3 --- /dev/null +++ b/workflows/personal haasf 2021 madland rnaseqhoecker 3d_pca_plot_hoecker_20210527.r @@ -0,0 +1,308 @@ +<!DOCTYPE html> +<html lang="en" dir="ltr" class="no-js"> +<head> + <meta charset="utf-8" /> + <title>personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r [DataWiki]</title> + <script>(function(H){H.className=H.className.replace(/\bno-js\b/,'js')})(document.documentElement)</script> + <meta name="generator" content="DokuWiki"/> +<meta name="theme-color" content="#008800"/> +<meta name="robots" content="index,follow"/> +<meta name="keywords" content="personal,haasf,2021,madland,rnaseqhoecker,3d_pca_plot_hoecker_20210527.r"/> +<link rel="search" type="application/opensearchdescription+xml" href="/lab/wiki/lib/exe/opensearch.php" title="DataWiki"/> +<link rel="start" href="/lab/wiki/"/> +<link rel="contents" href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=index" title="Sitemap"/> +<link rel="manifest" href="/lab/wiki/lib/exe/manifest.php"/> +<link rel="alternate" type="application/rss+xml" title="Recent Changes" href="/lab/wiki/feed.php"/> +<link rel="alternate" type="application/rss+xml" title="Current namespace" href="/lab/wiki/feed.php?mode=list&ns=personal:haasf:2021:madland:rnaseqhoecker"/> +<link rel="edit" title="Edit this page" href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=edit"/> +<link rel="alternate" type="text/html" title="Plain HTML" href="/lab/wiki/_export/xhtml/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r"/> +<link rel="alternate" type="text/plain" title="Wiki Markup" href="/lab/wiki/_export/raw/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r"/> +<link rel="canonical" href="https://plantcode.cup.uni-freiburg.de/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r"/> +<link rel="stylesheet" href="/lab/wiki/lib/exe/css.php?t=dokuwiki&tseed=a9de8a0d5a8e7168381d427189602bc9"/> +<!--[if gte IE 9]><!--> +<script >/*<![CDATA[*/var NS='personal:haasf:2021:madland:rnaseqhoecker';var SIG=" --- \/\/[[saskiahiltemann@gmail.com|Saskia Hiltemann]] 2023\/10\/11 13:15\/\/";var JSINFO = {"plugins":{"edittable":{"default columnwidth":""}},"id":"personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r","namespace":"personal:haasf:2021:madland:rnaseqhoecker","ACT":"show","useHeadingNavigation":1,"useHeadingContent":1}; +/*!]]>*/</script> +<script charset="utf-8" src="/lab/wiki/lib/exe/jquery.php?tseed=34a552433bc33cc9c3bc32527289a0b2" defer="defer"></script> +<script charset="utf-8" src="/lab/wiki/lib/exe/js.php?t=dokuwiki&tseed=a9de8a0d5a8e7168381d427189602bc9" defer="defer"></script> +<!--<![endif]--> + <meta name="viewport" content="width=device-width,initial-scale=1" /> + <link rel="shortcut icon" href="/lab/wiki/lib/tpl/dokuwiki/images/favicon.ico" /> +<link rel="apple-touch-icon" href="/lab/wiki/lib/tpl/dokuwiki/images/apple-touch-icon.png" /> + </head> + +<body> + <div id="dokuwiki__site"><div id="dokuwiki__top" class="site dokuwiki mode_show tpl_dokuwiki loggedIn "> + + +<!-- ********** HEADER ********** --> +<div id="dokuwiki__header"><div class="pad group"> + + + <div class="headings group"> + <ul class="a11y skip"> + <li><a href="#dokuwiki__content">skip to content</a></li> + </ul> + + <h1><a href="/lab/wiki/start" accesskey="h" title="[H]"><img src="/lab/wiki/lib/tpl/dokuwiki/images/logo.png" width="64" height="64" alt="" /> <span>DataWiki</span></a></h1> + </div> + + <div class="tools group"> + <!-- USER TOOLS --> + <div id="dokuwiki__usertools"> + <h3 class="a11y">User Tools</h3> + <ul> + <li class="user">Logged in as: <bdi>Saskia Hiltemann</bdi> (<bdi>saskia</bdi>)</li><li class="action profile"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=profile" title="Update Profile" rel="nofollow"><span>Update Profile</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M2 3h20c1.05 0 2 .95 2 2v14c0 1.05-.95 2-2 2H2c-1.05 0-2-.95-2-2V5c0-1.05.95-2 2-2m12 3v1h8V6h-8m0 2v1h8V8h-8m0 2v1h7v-1h-7m-6 3.91C6 13.91 2 15 2 17v1h12v-1c0-2-4-3.09-6-3.09M8 6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3z"/></svg></a></li><li class="action admin"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=admin" title="Admin" rel="nofollow"><span>Admin</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 15.5A3.5 3.5 0 0 1 8.5 12 3.5 3.5 0 0 1 12 8.5a3.5 3.5 0 0 1 3.5 3.5 3.5 3.5 0 0 1-3.5 3.5m7.43-2.53c.04-.32.07-.64.07-.97 0-.33-.03-.66-.07-1l2.11-1.63c.19-.15.24-.42.12-.64l-2-3.46c-.12-.22-.39-.31-.61-.22l-2.49 1c-.52-.39-1.06-.73-1.69-.98l-.37-2.65A.506.506 0 0 0 14 2h-4c-.25 0-.46.18-.5.42l-.37 2.65c-.63.25-1.17.59-1.69.98l-2.49-1c-.22-.09-.49 0-.61.22l-2 3.46c-.13.22-.07.49.12.64L4.57 11c-.04.34-.07.67-.07 1 0 .33.03.65.07.97l-2.11 1.66c-.19.15-.25.42-.12.64l2 3.46c.12.22.39.3.61.22l2.49-1.01c.52.4 1.06.74 1.69.99l.37 2.65c.04.24.25.42.5.42h4c.25 0 .46-.18.5-.42l.37-2.65c.63-.26 1.17-.59 1.69-.99l2.49 1.01c.22.08.49 0 .61-.22l2-3.46c.12-.22.07-.49-.12-.64l-2.11-1.66z"/></svg></a></li><li class="action logout"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=logout&sectok=82d4f55b849f74a21b9e52ddbd99f445" title="Log Out" rel="nofollow"><span>Log Out</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M17 17.25V14h-7v-4h7V6.75L22.25 12 17 17.25M13 2a2 2 0 0 1 2 2v4h-2V4H4v16h9v-4h2v4a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9z"/></svg></a></li> </ul> + </div> + + <!-- SITE TOOLS --> + <div id="dokuwiki__sitetools"> + <h3 class="a11y">Site Tools</h3> + <form action="/lab/wiki/start" method="get" role="search" class="search doku_form" id="dw__search" accept-charset="utf-8"><input type="hidden" name="do" value="search" /><input type="hidden" name="id" value="personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r" /><div class="no"><input name="q" type="text" class="edit" title="[F]" accesskey="f" placeholder="Search" autocomplete="on" id="qsearch__in" value="" /><button value="1" type="submit" title="Search">Search</button><div id="qsearch__out" class="ajax_qsearch JSpopup"></div></div></form> <div class="mobileTools"> + <form action="/lab/wiki/doku.php" method="get" accept-charset="utf-8"><div class="no"><input type="hidden" name="id" value="personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r" /><input type="hidden" name="sectok" value="82d4f55b849f74a21b9e52ddbd99f445" /><select name="do" class="edit quickselect" title="Tools"><option value="">Tools</option><optgroup label="Page Tools"><option value="edit">Edit this page</option><option value="revisions">Old revisions</option><option value="export_pdf">Export to PDF</option><option value="backlink">Backlinks</option></optgroup><optgroup label="Site Tools"><option value="recent">Recent Changes</option><option value="media">Media Manager</option><option value="index">Sitemap</option></optgroup><optgroup label="User Tools"><option value="profile">Update Profile</option><option value="admin">Admin</option><option value="logout">Log Out</option></optgroup></select><button type="submit">></button></div></form> </div> + <ul> + <li class="action recent"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=recent" title="Recent Changes [r]" rel="nofollow" accesskey="r">Recent Changes</a></li><li class="action media"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=media&ns=personal%3Ahaasf%3A2021%3Amadland%3Arnaseqhoecker" title="Media Manager" rel="nofollow">Media Manager</a></li><li class="action index"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=index" title="Sitemap [x]" rel="nofollow" accesskey="x">Sitemap</a></li> </ul> + </div> + + </div> + + <!-- BREADCRUMBS --> + <div class="breadcrumbs"> + <div class="youarehere"><span class="bchead">You are here: </span><span class="home"><bdi><a href="/lab/wiki/start" class="wikilink1" title="start" data-wiki-id="start">Data</a></bdi></span> » <bdi><a href="/lab/wiki/personal:start" class="wikilink2" title="personal:start" rel="nofollow" data-wiki-id="personal:start">personal</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:start" class="wikilink1" title="personal:haasf:start" data-wiki-id="personal:haasf:start">Personal page - Fabian Haas</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:2021" class="wikilink1" title="personal:haasf:2021" data-wiki-id="personal:haasf:2021">Labbook Fabian Haas</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:2021:madland:start" class="wikilink2" title="personal:haasf:2021:madland:start" rel="nofollow" data-wiki-id="personal:haasf:2021:madland:start">madland</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker" class="wikilink1" title="personal:haasf:2021:madland:rnaseqhoecker" data-wiki-id="personal:haasf:2021:madland:rnaseqhoecker">RNA-seq Höcker Lab</a></bdi> » <bdi><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r" class="wikilink1" title="personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r" data-wiki-id="personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r">3d_pca_plot_hoecker_20210527.r</a></bdi></div> + <div class="trace"><span class="bchead">Trace:</span> <span class="bcsep">•</span> <bdi><a href="/lab/wiki/personal:saskia:2023:10_2023_diary" class="breadcrumbs" title="personal:saskia:2023:10_2023_diary">Friday 13 October</a></bdi> <span class="bcsep">•</span> <bdi><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker" class="breadcrumbs" title="personal:haasf:2021:madland:rnaseqhoecker">RNA-seq Höcker Lab</a></bdi> <span class="bcsep">•</span> <span class="curid"><bdi><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r" class="breadcrumbs" title="personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r">3d_pca_plot_hoecker_20210527.r</a></bdi></span></div> + </div> + + + + <hr class="a11y" /> +</div></div><!-- /header --> + + <div class="wrapper group"> + + + <!-- ********** CONTENT ********** --> + <div id="dokuwiki__content"><div class="pad group"> + <div class="notify">Hotfix release available: 2023-04-04a "Jack Jackrum". + <a href="http://download.dokuwiki.org">upgrade now!</a> [54.1] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">New release available: 2023-04-04 "Jack Jackrum". + <a href="http://download.dokuwiki.org">upgrade now!</a> [54] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">Hotfix release available: 2022-07-31b "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [53.1] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">Hotfix release available: 2022-07-31a "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [53] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">New release available: 2022-07-31 "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [52.2] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">New release candidate 2 available: rc2022-06-26 "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [52.1] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">New release candidate available: 2022-06-26 "Igor". + <a href="http://download.dokuwiki.org">upgrade now!</a> [52] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div><div class="notify">Hotfix release available: 2020-07-29a "Hogfather". + <a href="http://download.dokuwiki.org">upgrade now!</a> [51.4] <a href="http://www.dokuwiki.org/update_check">(what's this?)</a></div> + <div class="pageId"><span>personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r</span></div> + + <div class="page group"> + <!-- wikipage start --> + <dl class="file"> +<dt><a href="/lab/wiki/_export/code/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?codeblock=0" title="Download Snippet" class="mediafile mf_r">:personal:haasf:2021:madland:3d_pca_plot_hoecker_20210527.r</a></dt> +<dd><pre class="code file rsplus"><span class="co1"># 3d R plot</span> +saveat <span class="sy0"><-</span> <span class="st0">"/mnt/NAS_coruscant_datashare/haasf/madland_RNA-seq_Hoecker"</span> + +file.<span class="me1">rpkm</span> <span class="sy0"><-</span> <span class="st0">'/mnt/NAS_coruscant_datashare/haasf/madland_RNA-seq_Hoecker/31315.p.sort.rpkm'</span> + + +<span class="co1">## Windows ###</span> +<span class="co1">#-#saveat <- "Q:/haasf/leubner_RNA-seq/Celery/DEGs_0.9/"</span> + +<span class="co1">#-#file.rpkm <- 'Q:/haasf/leubner_RNA-seq/Celery/DEGs/Celery_merged_isoforms.p.sort.rpkm'</span> +<span class="co1">#-#file.count <- 'Q:/haasf/leubner_RNA-seq/Celery/DEGs_0.9/Celery_merged_isoforms.p.sort.counts'</span> +<span class="co1">###</span> + +data.<span class="me1">rpkm</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.table.html"><span class="kw8">read.<span class="me1">table</span></span></a><span class="br0">(</span>file.<span class="me1">rpkm</span>, header<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a>, sep<span class="sy0">=</span><span class="st0">"<span class="es0">\t</span>"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/row.names.html"><span class="kw2">row.<span class="me1">names</span></span></a><span class="sy0">=</span><span class="nu0">1</span><span class="br0">)</span> + + +<span class="co1"># sort by colnames</span> +data.<span class="me1">rpkm</span> <span class="sy0"><-</span> data.<span class="me1">rpkm</span><span class="br0">[</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/order.html"><span class="kw2">order</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>data.<span class="me1">rpkm</span><span class="br0">)</span><span class="br0">)</span><span class="br0">]</span> + + +librariesName <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/list.html"><span class="kw2">list</span></a><span class="br0">(</span> + cop_D <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_D"</span>, <span class="st0">"red"</span><span class="br0">)</span>, + cop_L <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"cop_L"</span>, <span class="st0">"blue"</span><span class="br0">)</span>, + spa_D <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"spa_D"</span>, <span class="st0">"green"</span><span class="br0">)</span>, + spa_L <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"spa_L"</span>, <span class="st0">"yellow"</span><span class="br0">)</span>, + WT_D <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"WT_D"</span>, <span class="st0">"black"</span><span class="br0">)</span>, + WT_L <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"WT_L"</span>, <span class="st0">"violet"</span><span class="br0">)</span> +<span class="br0">)</span> + +<span class="co1"># </span> +<span class="co1"># header.ori <- c("56754_WT_Naturally_3.bam.sort.fastq.unmapped.sam.sort.bam", "56753_WT_Naturally_2.bam.sort.fastq.unmapped.sam.sort.bam", "56752_WT_Naturally_1.bam.sort.fastq.unmapped.sam.sort.bam", "56751_tt_6_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56750_tt_6_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56749_tt_6_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56748_tt_0_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56747_tt_0_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56746_tt_0_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56745_WT_10_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56744_WT_10_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56743_WT_10_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56742_WT_6_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56741_WT_6_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56740_WT_6_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56739_WT_0_days_3.bam.sort.fastq.unmapped.sam.sort.bam", "56738_WT_0_days_2.bam.sort.fastq.unmapped.sam.sort.bam", "56737_WT_0_days_1.bam.sort.fastq.unmapped.sam.sort.bam", "56736_tt_T1_tt_6d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56735_tt_T1_tt_6d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56734_tt_T1_tt_6d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56733_tt_T1_tt_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56732_tt_T1_tt_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56731_tt_T1_tt_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56730_tt_T1_tt_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56729_tt_T1_tt_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56728_tt_T1_tt_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56727_WT_T1_NA_3.bam.sort.fastq.unmapped.sam.sort.bam", "56726_WT_T1_NA_2.bam.sort.fastq.unmapped.sam.sort.bam", "56725_WT_T1_NA_1.bam.sort.fastq.unmapped.sam.sort.bam", "56724_WT_T1_WT_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56723_WT_T1_WT_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56722_WT_T1_WT_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56721_WT_T1_WT_10d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56720_WT_T1_WT_10d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56719_WT_T1_WT_10d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56718_WT_T1_WT_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56717_WT_T1_WT_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56716_WT_T1_WT_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56715_WT_T1_WT_6d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56714_WT_T1_WT_6d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56713_WT_T1_WT_6d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56712_WT_T1_WT_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56711_WT_T1_WT_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56710_WT_T1_WT_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56709_WT_T1_WT_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56708_WT_T1_WT_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56707_WT_T1_WT_0d_1.bam.sort.fastq.unmapped.sam.sort.bam", "56706_WT_T1_tt_0d_3.bam.sort.fastq.unmapped.sam.sort.bam", "56705_WT_T1_tt_0d_2.bam.sort.fastq.unmapped.sam.sort.bam", "56704_WT_T1_tt_0d_1.bam.sort.fastq.unmapped.sam.sort.bam")</span> +<span class="co1"># header.new <- c("T17_Dry_Naturally_Freezedryseed", "T17_Dry_Naturally_Freezedryseed.1", "T17_Dry_Naturally_Freezedryseed.2", "T16_Dry_6days_Freezeafter6dageing", "T16_Dry_6days_Freezeafter6dageing.1", "T16_Dry_6days_Freezeafter6dageing.2", "T15_Dry_0days_Freezedryseed", "T15_Dry_0days_Freezedryseed.1", "T15_Dry_0days_Freezedryseed.2", "T14_Dry_10days_Freezeafter10dageing", "T14_Dry_10days_Freezeafter10dageing.1", "T14_Dry_10days_Freezeafter10dageing.2", "T13_Dry_6days_Freezeafter6dageing", "T13_Dry_6days_Freezeafter6dageing.1", "T13_Dry_6days_Freezeafter6dageing.2", "T12_Dry_0days_Freezedryseed", "T12_Dry_0days_Freezedryseed.1", "T12_Dry_0days_Freezedryseed.2", "T11_Imbibe_6days_12h", "T11_Imbibe_6days_12h.1", "T11_Imbibe_6days_12h.2", "T10_Imbibe_6days_5h", "T10_Imbibe_6days_5h.1", "T10_Imbibe_6days_5h.2", "T9_Imbibe_0dyas_5h", "T9_Imbibe_0dyas_5h.1", "T9_Imbibe_0dyas_5h.2", "T8_Imbibe_Naturally_47h", "T8_Imbibe_Naturally_47h.1", "T8_Imbibe_Naturally_47h.2", "T7_Imbibe_Naturally_24h", "T7_Imbibe_Naturally_24h.1", "T7_Imbibe_Naturally_24h.2", "T6_Imbibe_10days_72h", "T6_Imbibe_10days_72h.1", "T6_Imbibe_10days_72h.2", "T5_Imbibe_10days_24h", "T5_Imbibe_10days_24h.1", "T5_Imbibe_10days_24h.2", "T4_Imbibe_6days_47h", "T4_Imbibe_6days_47h.1", "T4_Imbibe_6days_47h.2", "T3_Imbibe_6days_24h", "T3_Imbibe_6days_24h.1", "T3_Imbibe_6days_24h.2", "T2_Imbibe_0days_24h", "T2_Imbibe_0days_24h.1", "T2_Imbibe_0days_24h.2", "T1_Imbibe_0days_5h", "T1_Imbibe_0days_5h.1", "T1_Imbibe_0days_5h.2")</span> +<span class="co1"># </span> +<span class="co1"># header.new <- header.new[order(header.ori)]</span> +<span class="co1"># header.ori <- header.ori[order(header.ori)]</span> +<span class="co1"># </span> +<span class="co1"># col.header <- header.new</span> +<span class="co1"># </span> +<span class="co1"># colnames(data.rpkm) <- col.header</span> + +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"DESeq2"</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"ggplot2"</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"RColorBrewer"</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"pheatmap"</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"BiocGenerics"</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"rgl"</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"magick"</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/library.html"><span class="kw2">library</span></a><span class="br0">(</span><span class="st0">"sjmisc"</span><span class="br0">)</span> + + +<span class="co1">################### running ######################</span> +<span class="co1">### PCA RPKM ###</span> + +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/set.seed.html"><span class="kw2">set.<span class="me1">seed</span></span></a><span class="br0">(</span><span class="nu0">0</span><span class="br0">)</span> + +data.<span class="me1">inv</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/t.html"><span class="kw2">t</span></a><span class="br0">(</span>data.<span class="me1">rpkm</span><span class="br0">)</span> +data.<span class="me1">dist</span> <span class="sy0"><-</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/dist.html"><span class="kw7">dist</span></a><span class="br0">(</span>data.<span class="me1">inv</span>, method<span class="sy0">=</span><span class="st0">"euclidean"</span><span class="br0">)</span> <span class="co1"># "euclidean", "maximum", "manhattan", "canberra", "binary" or "minkowski"</span> +data.<span class="me1">dist</span>.<span class="me1">hc</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/hclust.html"><span class="kw7">hclust</span></a><span class="br0">(</span>data.<span class="me1">dist</span>,method<span class="sy0">=</span><span class="st0">"ward.D2"</span><span class="br0">)</span> +data.<span class="me1">dist</span>.<span class="me1">pca</span> <span class="sy0"><-</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/princomp.html"><span class="kw7">princomp</span></a><span class="br0">(</span>data.<span class="me1">dist</span>,<a href="http://stat.ethz.ch/R-manual/R-devel/library/stats/html/cor.html"><span class="kw7">cor</span></a><span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/T.html"><span class="kw2">T</span></a><span class="br0">)</span> + +pc1 <span class="sy0"><-</span> data.<span class="me1">dist</span>.<span class="me1">pca</span>$scores<span class="br0">[</span>,<span class="nu0">1</span><span class="br0">]</span> +pc2 <span class="sy0"><-</span> data.<span class="me1">dist</span>.<span class="me1">pca</span>$scores<span class="br0">[</span>,<span class="nu0">2</span><span class="br0">]</span> +pc3 <span class="sy0"><-</span> data.<span class="me1">dist</span>.<span class="me1">pca</span>$scores<span class="br0">[</span>,<span class="nu0">3</span><span class="br0">]</span> + +<span class="co1"># create data frame for pc1 pc2 pc3</span> +data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/data.frame.html"><span class="kw2">data.<span class="me1">frame</span></span></a><span class="br0">(</span>pc1,pc2,pc3<span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/rownames.html"><span class="kw2">rownames</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span><span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/names.html"><span class="kw2">names</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span>$scale<span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span><span class="br0">)</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"pc1"</span>,<span class="st0">"pc2"</span>,<span class="st0">"pc3"</span><span class="br0">)</span> + +condition.<span class="me1">values</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="br0">)</span> +condition.<span class="me1">values</span>.<span class="me1">color</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="br0">)</span> + + +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/for.html"><span class="kw2">for</span></a><span class="br0">(</span>a <span class="kw1">in</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/colnames.html"><span class="kw2">colnames</span></a><span class="br0">(</span>data.<span class="me1">rpkm</span><span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + + v <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/substr.html"><span class="kw2">substr</span></a><span class="br0">(</span>a, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span>a<span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span>a<span class="br0">)</span><span class="br0">)</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a><span class="br0">(</span>str_contains<span class="br0">(</span>v, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="nu0">1</span>,<span class="nu0">2</span>,<span class="nu0">3</span>,<span class="nu0">4</span>,<span class="nu0">5</span>,<span class="nu0">6</span>,<span class="nu0">7</span>,<span class="nu0">8</span>,<span class="nu0">9</span>,<span class="nu0">0</span><span class="br0">)</span>, logic <span class="sy0">=</span> <span class="st0">"or"</span><span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/if.html"><span class="kw2">if</span></a> <span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/substr.html"><span class="kw2">substr</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/substr.html"><span class="kw2">substr</span></a><span class="br0">(</span>a, <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span>a<span class="br0">)</span><span class="sy0">-</span><span class="nu0">2</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/substr.html"><span class="kw2">substr</span></a><span class="br0">(</span>a, <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span>a<span class="br0">)</span><span class="sy0">-</span><span class="nu0">2</span><span class="br0">)</span><span class="br0">)</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/substr.html"><span class="kw2">substr</span></a><span class="br0">(</span>a, <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span>a<span class="br0">)</span><span class="sy0">-</span><span class="nu0">2</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span> <span class="sy0">==</span> <span class="st0">"."</span><span class="br0">)</span> <span class="br0">{</span> + n <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/substr.html"><span class="kw2">substr</span></a><span class="br0">(</span>a, <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span>a<span class="br0">)</span><span class="sy0">-</span><span class="nu0">3</span><span class="br0">)</span> + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + n <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/substr.html"><span class="kw2">substr</span></a><span class="br0">(</span>a, <span class="nu0">1</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/nchar.html"><span class="kw2">nchar</span></a><span class="br0">(</span>a<span class="br0">)</span><span class="sy0">-</span><span class="nu0">2</span><span class="br0">)</span> + <span class="br0">}</span> + + <span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span> + n <span class="sy0"><-</span> a + + <span class="br0">}</span> + condition.<span class="me1">values</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>condition.<span class="me1">values</span>, librariesName<span class="br0">[</span>n<span class="br0">]</span><span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">)</span> + condition.<span class="me1">values</span>.<span class="me1">color</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span>condition.<span class="me1">values</span>.<span class="me1">color</span>, librariesName<span class="br0">[</span>n<span class="br0">]</span><span class="br0">[</span><span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span><span class="br0">]</span><span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span><span class="br0">)</span> +<span class="br0">}</span> + + +data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span><span class="br0">[</span><span class="st0">"tissue"</span><span class="br0">]</span> <span class="sy0"><-</span> condition.<span class="me1">values</span> +data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span><span class="br0">[</span><span class="st0">"color"</span><span class="br0">]</span> <span class="sy0"><-</span> condition.<span class="me1">values</span>.<span class="me1">color</span> +data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span><span class="br0">[</span><span class="st0">"name"</span><span class="br0">]</span> <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/names.html"><span class="kw2">names</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span>$scale<span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/attr.html"><span class="kw2">attr</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span>, <span class="st0">"percentVar"</span><span class="br0">)</span> <span class="sy0"><-</span> <span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span>$sdev<span class="br0">)</span><span class="sy0">^</span><span class="nu0">2</span> <span class="sy0">/</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/sum.html"><span class="kw2">sum</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span>$sdev<span class="sy0">^</span><span class="nu0">2</span><span class="br0">)</span> <span class="co1"># cumsum()</span> + +<span class="co1"># simple plot</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>saveat, <span class="st0">"/HC_RPKM_normalized.png"</span><span class="br0">)</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/plot.html"><span class="kw4">plot</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">hc</span><span class="br0">)</span> <span class="co1"># hc plot</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>saveat, <span class="st0">"/PCA_variance_RPKM_normalized.png"</span><span class="br0">)</span><span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/plot.html"><span class="kw4">plot</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span><span class="br0">)</span> <span class="co1"># variances; var(data.dist.pca$sdev[1:9])</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span> +<span class="co1"># get the parcent variation</span> +percentVar <span class="sy0"><-</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/round.html"><span class="kw2">round</span></a><span class="br0">(</span><span class="nu0">100</span> <span class="sy0">*</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/attr.html"><span class="kw2">attr</span></a><span class="br0">(</span>data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span>, <span class="st0">"percentVar"</span><span class="br0">)</span><span class="br0">)</span> + +<span class="co1"># 3d plot</span> +plot3d<span class="br0">(</span>pc1, pc2, pc3, + type <span class="sy0">=</span> <span class="st0">"s"</span>, <span class="co1"># p, s, l, h, n</span> + <span class="co1">#pch = c(1:3),</span> + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/col.html"><span class="kw2">col</span></a> <span class="sy0">=</span> condition.<span class="me1">values</span>.<span class="me1">color</span>, + size <span class="sy0">=</span> <span class="nu0">1</span>, + xlab <span class="sy0">=</span> paste0<span class="br0">(</span><span class="st0">"PC1: "</span>,percentVar<span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span>,<span class="st0">"% variance"</span><span class="br0">)</span>, + ylab <span class="sy0">=</span> paste0<span class="br0">(</span><span class="st0">"PC2: "</span>,percentVar<span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span>,<span class="st0">"% variance"</span><span class="br0">)</span>, + zlab <span class="sy0">=</span> paste0<span class="br0">(</span><span class="st0">"PC3: "</span>,percentVar<span class="br0">[</span><span class="nu0">3</span><span class="br0">]</span>,<span class="st0">"% variance"</span><span class="br0">)</span>, + cex <span class="sy0">=</span> <span class="nu0">2</span>, + main <span class="sy0">=</span> <span class="st0">""</span>, <span class="co1"># -> princomp",</span> +<span class="br0">)</span> + +<span class="co1"># shift <- matrix(4, 4, 4, byrow = TRUE)</span> +<span class="co1"># text3d(shift,texts=1:3)</span> +grid3d<span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"x"</span>, <span class="st0">"y"</span>, <span class="st0">"z"</span><span class="br0">)</span><span class="br0">)</span> + +<span class="co1">## add legend</span> +legend3d<span class="br0">(</span><span class="st0">"right"</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/unique.html"><span class="kw2">unique</span></a><span class="br0">(</span>condition.<span class="me1">values</span><span class="br0">)</span>, pch <span class="sy0">=</span> <span class="nu0">19</span>, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/col.html"><span class="kw2">col</span></a> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/unique.html"><span class="kw2">unique</span></a><span class="br0">(</span>condition.<span class="me1">values</span>.<span class="me1">color</span><span class="br0">)</span><span class="br0">)</span> + +<span class="co1">#### video #####</span> +M <span class="sy0"><-</span> par3d<span class="br0">(</span><span class="st0">"userMatrix"</span><span class="br0">)</span> +play3d<span class="br0">(</span> par3dinterp<span class="br0">(</span> userMatrix<span class="sy0">=</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/list.html"><span class="kw2">list</span></a><span class="br0">(</span>M, + rotate3d<span class="br0">(</span>M, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/pi.html"><span class="kw2">pi</span></a><span class="sy0">/</span><span class="nu0">2</span>, <span class="nu0">1</span>, <span class="nu0">0</span>, <span class="nu0">0</span><span class="br0">)</span>, + rotate3d<span class="br0">(</span>M, <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/pi.html"><span class="kw2">pi</span></a><span class="sy0">/</span><span class="nu0">2</span>, <span class="nu0">0</span>, <span class="nu0">1</span>, <span class="nu0">0</span><span class="br0">)</span> <span class="br0">)</span> <span class="br0">)</span>, + duration<span class="sy0">=</span><span class="nu0">2</span> <span class="br0">)</span> + +movie3d<span class="br0">(</span>spin3d<span class="br0">(</span><a href="http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/axis.html"><span class="kw4">axis</span></a> <span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="nu0">1</span>, <span class="nu0">2</span>, <span class="nu0">1</span><span class="br0">)</span><span class="br0">)</span>, duration <span class="sy0">=</span> <span class="nu0">5</span>, + <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/dir.html"><span class="kw2">dir</span></a> <span class="sy0">=</span> saveat<span class="br0">)</span> + +<span class="co1">#### video end ####</span> + +<span class="co1"># pc1, pc2</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/png.html"><span class="kw5">png</span></a><span class="br0">(</span>filename<span class="sy0">=</span>paste0<span class="br0">(</span>saveat, <span class="st0">"/PCA_RPKM_normalized.png"</span><span class="br0">)</span><span class="br0">)</span> +ggplot<span class="br0">(</span> + data.<span class="me1">dist</span>.<span class="me1">pca</span>.<span class="me1">frame</span>, + aes<span class="br0">(</span> + pc1, + pc2, + color<span class="sy0">=</span>tissue<span class="br0">)</span> +<span class="br0">)</span> <span class="sy0">+</span> + geom_point<span class="br0">(</span>size<span class="sy0">=</span><span class="nu0">2.5</span><span class="br0">)</span> <span class="sy0">+</span> + xlab<span class="br0">(</span> + paste0<span class="br0">(</span><span class="st0">"PC1: "</span>,percentVar<span class="br0">[</span><span class="nu0">1</span><span class="br0">]</span>,<span class="st0">"% variance"</span><span class="br0">)</span> + <span class="br0">)</span> <span class="sy0">+</span> + ylab<span class="br0">(</span> + paste0<span class="br0">(</span><span class="st0">"PC2: "</span>,percentVar<span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span>,<span class="st0">"% variance"</span><span class="br0">)</span> + <span class="br0">)</span> <span class="sy0">+</span> + <span class="co1">#theme() + #, face="bold"</span> + scale_colour_manual<span class="br0">(</span> + values<span class="sy0">=</span> <a href="http://stat.ethz.ch/R-manual/R-devel/library/base/html/c.html"><span class="kw2">c</span></a><span class="br0">(</span><span class="st0">"red"</span>, <span class="st0">"blue"</span>, <span class="st0">"green"</span>, <span class="st0">"yellow"</span>, <span class="st0">"black"</span>, <span class="st0">"violet"</span><span class="br0">)</span> <span class="co1"># dodgerblue3</span> + <span class="br0">)</span> <span class="sy0">+</span> + ggtitle<span class="br0">(</span><span class="st0">"PCA of all samples (RPKM normalized)"</span><span class="br0">)</span> <span class="sy0">+</span> + theme<span class="br0">(</span> + plot.<span class="me1">title</span> <span class="sy0">=</span> element_text<span class="br0">(</span>lineheight<span class="sy0">=</span>.8<span class="br0">)</span>, + panel.<span class="me1">background</span> <span class="sy0">=</span> element_rect<span class="br0">(</span>fill <span class="sy0">=</span> <span class="st0">"gray95"</span><span class="br0">)</span> + <span class="br0">)</span> +<a href="http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/dev.off.html"><span class="kw5">dev.<span class="me1">off</span></span></a><span class="br0">(</span><span class="br0">)</span></pre> +</dd></dl> + + <!-- wikipage stop --> + </div> + + <div class="docInfo"><bdi>personal/haasf/2021/madland/rnaseqhoecker/3d_pca_plot_hoecker_20210527.r.txt</bdi> · Last modified: 2021/06/01 12:22 by <bdi>Fabian Haas</bdi></div> + + </div></div><!-- /content --> + + <hr class="a11y" /> + + <!-- PAGE ACTIONS --> + <div id="dokuwiki__pagetools"> + <h3 class="a11y">Page Tools</h3> + <div class="tools"> + <ul> + <li class="edit"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=edit" title="Edit this page [e]" rel="nofollow" accesskey="e"><span>Edit this page</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"/></svg></a></li><li class="revs"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=revisions" title="Old revisions [o]" rel="nofollow" accesskey="o"><span>Old revisions</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M11 7v5.11l4.71 2.79.79-1.28-4-2.37V7m0-5C8.97 2 5.91 3.92 4.27 6.77L2 4.5V11h6.5L5.75 8.25C6.96 5.73 9.5 4 12.5 4a7.5 7.5 0 0 1 7.5 7.5 7.5 7.5 0 0 1-7.5 7.5c-3.27 0-6.03-2.09-7.06-5h-2.1c1.1 4.03 4.77 7 9.16 7 5.24 0 9.5-4.25 9.5-9.5A9.5 9.5 0 0 0 12.5 2z"/></svg></a></li><li class="backlink"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=backlink" title="Backlinks" rel="nofollow"><span>Backlinks</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M10.59 13.41c.41.39.41 1.03 0 1.42-.39.39-1.03.39-1.42 0a5.003 5.003 0 0 1 0-7.07l3.54-3.54a5.003 5.003 0 0 1 7.07 0 5.003 5.003 0 0 1 0 7.07l-1.49 1.49c.01-.82-.12-1.64-.4-2.42l.47-.48a2.982 2.982 0 0 0 0-4.24 2.982 2.982 0 0 0-4.24 0l-3.53 3.53a2.982 2.982 0 0 0 0 4.24m2.82-4.24c.39-.39 1.03-.39 1.42 0a5.003 5.003 0 0 1 0 7.07l-3.54 3.54a5.003 5.003 0 0 1-7.07 0 5.003 5.003 0 0 1 0-7.07l1.49-1.49c-.01.82.12 1.64.4 2.43l-.47.47a2.982 2.982 0 0 0 0 4.24 2.982 2.982 0 0 0 4.24 0l3.53-3.53a2.982 2.982 0 0 0 0-4.24.973.973 0 0 1 0-1.42z"/></svg></a></li><li class="export_pdf"><a href="/lab/wiki/personal:haasf:2021:madland:rnaseqhoecker:3d_pca_plot_hoecker_20210527.r?do=export_pdf" title="Export to PDF" rel="nofollow"><span>Export to PDF</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M14 9h5.5L14 3.5V9M7 2h8l6 6v12a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2m4.93 10.44c.41.9.93 1.64 1.53 2.15l.41.32c-.87.16-2.07.44-3.34.93l-.11.04.5-1.04c.45-.87.78-1.66 1.01-2.4m6.48 3.81c.18-.18.27-.41.28-.66.03-.2-.02-.39-.12-.55-.29-.47-1.04-.69-2.28-.69l-1.29.07-.87-.58c-.63-.52-1.2-1.43-1.6-2.56l.04-.14c.33-1.33.64-2.94-.02-3.6a.853.853 0 0 0-.61-.24h-.24c-.37 0-.7.39-.79.77-.37 1.33-.15 2.06.22 3.27v.01c-.25.88-.57 1.9-1.08 2.93l-.96 1.8-.89.49c-1.2.75-1.77 1.59-1.88 2.12-.04.19-.02.36.05.54l.03.05.48.31.44.11c.81 0 1.73-.95 2.97-3.07l.18-.07c1.03-.33 2.31-.56 4.03-.75 1.03.51 2.24.74 3 .74.44 0 .74-.11.91-.3m-.41-.71l.09.11c-.01.1-.04.11-.09.13h-.04l-.19.02c-.46 0-1.17-.19-1.9-.51.09-.1.13-.1.23-.1 1.4 0 1.8.25 1.9.35M8.83 17c-.65 1.19-1.24 1.85-1.69 2 .05-.38.5-1.04 1.21-1.69l.48-.31m3.02-6.91c-.23-.9-.24-1.63-.07-2.05l.07-.12.15.05c.17.24.19.56.09 1.1l-.03.16-.16.82-.05.04z"/></svg></a></li><li class="top"><a href="#dokuwiki__top" title="Back to top [t]" rel="nofollow" accesskey="t"><span>Back to top</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12z"/></svg></a></li> </ul> + </div> + </div> + </div><!-- /wrapper --> + + +<!-- ********** FOOTER ********** --> +<div id="dokuwiki__footer"><div class="pad"> + + <div class="buttons"> + <a href="https://www.dokuwiki.org/donate" title="Donate" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-donate.gif" width="80" height="15" alt="Donate" /></a> + <a href="https://php.net" title="Powered by PHP" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-php.gif" width="80" height="15" alt="Powered by PHP" /></a> + <a href="//validator.w3.org/check/referer" title="Valid HTML5" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-html5.png" width="80" height="15" alt="Valid HTML5" /></a> + <a href="//jigsaw.w3.org/css-validator/check/referer?profile=css3" title="Valid CSS" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-css.png" width="80" height="15" alt="Valid CSS" /></a> + <a href="https://dokuwiki.org/" title="Driven by DokuWiki" ><img + src="/lab/wiki/lib/tpl/dokuwiki/images/button-dw.png" width="80" height="15" + alt="Driven by DokuWiki" /></a> + </div> +</div></div><!-- /footer --> + + </div></div><!-- /site --> + + <div class="no"><img src="/lab/wiki/lib/exe/taskrunner.php?id=personal%3Ahaasf%3A2021%3Amadland%3Arnaseqhoecker%3A3d_pca_plot_hoecker_20210527.r&1697030124" width="2" height="1" alt="" /></div> + <div id="screen__mode" class="no"></div></body> +</html> -- GitLab