tag:blogger.com,1999:blog-77006876078972830652024-02-07T06:15:10.109+01:00Bioinformatics or B101nformaticsAbout bioinformatics, science and some personal achievements around bioinformaticsb101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comBlogger35125tag:blogger.com,1999:blog-7700687607897283065.post-39054081698577632942020-07-31T11:52:00.002+02:002020-07-31T12:08:08.568+02:00My journey with Bioconductor<br /><h3 style="text-align: left;">My experience with Bioconductor<br /></h3><div><br /></div><div>I been involved with the Bioconductor project for several years and last year I attended the <a href="https://bioc2019.bioconductor.org" target="_blank">BioC2019 conference</a> in New York. It was my first time in an international conference abroad. I'm posting here my experience with the project.</div><div></div><div><h4 style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"><a href="http://bioconductor.org/images/logo/jpg/bioconductor_logo_rgb.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="230" data-original-width="800" height="361" src="http://bioconductor.org/images/logo/jpg/bioconductor_logo_rgb.jpg" width="361" /></a></div>Pre-conference</h4><div>The first time I heard about <a href="https://bioconductor.org" target="_blank">Bioconductor</a> was in 2013 when in an internship, my main goal was to analyze data from <i>Pichia pastoris</i> and look at the functions of the differentially expressed genes through gene ontology. I did it with topGO and other packages included in Bioconductor.<br /></div><div><br /></div><div>Later during the master in Bioinformatics for Health Science I studied, we used several packages from Bioconductor to analyze other data (the main project is <a href="https://llrs.github.com/IEO/IEO_report.html" target="_blank">still online</a>). <br /></div><div><br /></div><div>Also as part of the master thesis I also used some other packages (the thesis involved using <a href="https://cran.r-project.org/package=WGCNA" target="_blank">WGCNA</a>) but the main question roadblock was knowing the function and what are the genes doing. So I developed a package to compare the annotation of genes according to which pathway their are involved with (There is a similar package that did the same but using the gene ontology <a href="https://bioconductor.org/packages/GOSemSim" target="_blank">GOSemSim</a>). In march 2017 the <a href="https://bioconductor.org/packages/BioCor" target="_blank">BioCor</a> package was included in Bioconductor release. Shortly after I <a href="https://github.com/YuLab-SMU/GOSemSim/pull/13/" target="_blank">contributed to</a> GOSemSim to speed up the process.<br /></div><div><br /></div><div>As I ended the master and started the PhD I realized with BioCor that the annotation data used for BioCor is the biggest problem. There is bias towards some pathways and genes, there are some genes highly studied and some others neglected... I wanted to compare two or three pathway databases but didn't have the stem to do it own my own time above everything else I was doing. <br /></div><div><br /></div><div>However I thought that I could expand the basic class for gene sets used in Bioconductor implemented in the <a href="https://bioconductor.org/packages/GSEABase" target="_blank">GSEABase</a> package. This package is maintained by the Bioconductor core team but when I raised <a href="https://github.com/Bioconductor/GSEABase/issues/1" target="_blank">some issues</a> I was told they wouldn't be addressed. Pull requests were welcome but when I asked for clarification I didn't get a reply.<br /></div><div><br /></div><div>Seeing that I couldn't help further improving that package I went on to create a new one that extended some capabilities of the classes implemented on GSEABase. The new package, <a href="https://github.com/llrs/GSEAdv" target="_blank">GSEAdv</a>, implemented some new method for gene sets and I was working with simulating gene sets following to assess the accuracy of the pathway databases.</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyi11-kM2TrOU_MDJ2qTvrZSNtLj3qHhq-S2v60-1XbYsSYl90SJiv2ZKhyYOMipUneTzaesMo3kORn6nj68uSOmfIHttMLVHjtvF2N5RKwuQCKuVg6jUfCu76I_xVm35jEvEScNqYLZUe/s521/GSEAdv.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="205" data-original-width="521" height="158" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyi11-kM2TrOU_MDJ2qTvrZSNtLj3qHhq-S2v60-1XbYsSYl90SJiv2ZKhyYOMipUneTzaesMo3kORn6nj68uSOmfIHttMLVHjtvF2N5RKwuQCKuVg6jUfCu76I_xVm35jEvEScNqYLZUe/w400-h158/GSEAdv.jpg" width="400" /></a></div><div>After some months I realized that I was starting from a so at the end of November 2018 I started developing a new package, this package aimed to replace the class to represent sets and allow for arbitrary information to be included as well as improving the way to work with gene sets.</div><div><br /></div><div>On December 2018 I sign up on the Bioconductor slack and got in touch with a group of people discussing how to improve or change the gene set process. We were three people involved but instead of joining efforts it was decided to develop three different packages "to explore strategies". </div><div><br /></div><div>We have shared document with ideas about the implementation of the new class and what we would like to be able to do with it. By the same time I also helped rewriting the<a href="https://github.com/Bioconductor/bioconductor.org/pull/15" target="_blank"> submission process</a>, we had two teleconferences were we talked and showed our respective packages. At one point it was discussed to present this work at the BioC2020 conference. <br /></div><div><h4 style="text-align: left;">BioC2020 <br /></h4></div><div>I started considering going to the conference on febrary, I applied for the travel schoolarship of the conference and for other travel expenses with my employer. On April I was awarded the schoolarship, booked the flights and prepare the conference.</div><div><br /></div><div>It was the first time I left Europe and going alone. I left the 23rd June, which is celebrated much in Catalonia with fireworks and social gatherings. I had booked the flights like three months in advance, I was flying via Portugal. <br /></div><div><br /></div><div>The flight was delayed like 2 hours and when we got there we had to run to reach the next plane, they were waiting us. But after several hours and a couple of films later I reached New York. <br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLqOVqb-FZ1DBCX1DEHfOcB_H7OVun4RpvMBv3xDhWwXf3ewPkpkJOfbjPK91HrXlzIo_2vxXf5ITD4FkYtg9Ohazwe6nUNzL_IsjJFhznhFCQ4-98b4R86dPdnYaUOQthnlkXfzJozShx/s4000/IMG_20190624_084534.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4000" data-original-width="3000" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLqOVqb-FZ1DBCX1DEHfOcB_H7OVun4RpvMBv3xDhWwXf3ewPkpkJOfbjPK91HrXlzIo_2vxXf5ITD4FkYtg9Ohazwe6nUNzL_IsjJFhznhFCQ4-98b4R86dPdnYaUOQthnlkXfzJozShx/s320/IMG_20190624_084534.jpg" /></a></div></div><div><br /></div><div> Once I reached the hotel from the schoolarship I realized there wasn't a room for me. Fortunately for me I found some other people from the conference which reached the organization (Thanks Gabriel!). We were a small group and decided to go out to eat something and have some drinks. The conference started next day with the developer day, <br /></div><div><br /></div><div>The developer day had plenary sessions and lighting talks about new packages or results. Then the Birds of Feather (BoF about several topics.</div><div>For our Birds of Feather session we were given the Farkas Auditorium which exceeded my expectations. I thought we would talk the topic in a small group of at most 20 people. I started the BoF presenting why we set on this task then we )Kayla, Kevin and me) presented our respective packages and ideas behind. We got many questions and feedback, with different points of view about what and how to rethink the gene set storage at Bioconductor. <br /></div><div style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjebnjiangsvDAL5W-Uj4j2YDUfLJESteaieGPIy3PTDzPSnCtGj5znqej3BkzAXmLC3vNJlJk3lUUme7iF1BJVwLov7542sJnqb_c6Lj0RfczSG0tiWA8g1cFfJ6ur3m-qI0C26CZLcH9/s4000/IMG_20190625_100604.jpg" style="margin-left: 1em; margin-right: 1em;"><img alt="Simina M. Boca ending her presentation" border="0" data-original-height="3000" data-original-width="4000" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjebnjiangsvDAL5W-Uj4j2YDUfLJESteaieGPIy3PTDzPSnCtGj5znqej3BkzAXmLC3vNJlJk3lUUme7iF1BJVwLov7542sJnqb_c6Lj0RfczSG0tiWA8g1cFfJ6ur3m-qI0C26CZLcH9/w400-h300/IMG_20190625_100604.jpg" width="400" /></a></div><div><br /></div><div>The following two days the conference was at another location, but it was full of interesting sessions and workshops. I found particularly interesting the docker session from Nitesh, also the enrichment workshop from Ludwig. I wasn't involved in single cell data but went to the amazing presentation of Helen. <br /></div><div><br /></div><div>I could also present my poster, and was rewarded meeting for the first time a user. Several people got close to ask about <a href="https://bioconductor.org/packages/BioCor/" target="_blank">BioCor</a>. Hope they found it interesting. <br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrY-DP_kLIGZnIkR6gZ7TUJgup6MDz_hUrUpphxJkQes3qzigDex8RF-x8vOBDbHtFt27pFA5EjcRJyLz5hSVJMQgK_diBRqp0uA5j2BVWMeH9cEHRV4umAFN1VBET-jKBRKZtnKkaWzyS/s4000/IMG_20190624_130247.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4000" data-original-width="3000" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrY-DP_kLIGZnIkR6gZ7TUJgup6MDz_hUrUpphxJkQes3qzigDex8RF-x8vOBDbHtFt27pFA5EjcRJyLz5hSVJMQgK_diBRqp0uA5j2BVWMeH9cEHRV4umAFN1VBET-jKBRKZtnKkaWzyS/s320/IMG_20190624_130247.jpg" /></a></div></div><div><br /></div><div>Besides the official sessions and activities there were many meetings and people going around for dinner or going around. The sticker exchange was high ( I got plenty including MultiAssayExperiment, limma) . The atmosphere was friendly, and I could personally meet several people I've been years reading, like Leo or Martin. Surprisingly I only met one other person from Spain, one of my professors Robert and we could talk a bit while visiting central Park lead by Levi. <br /></div><div><br /></div><div>While I enjoyed a lot the conference and learned many things my take of the conference was the people I met; all doing different science and different background but awesome. <br /></div><div><h4 style="text-align: left;">Post-conference</h4><div>A couple of months after the conference I asked how would we continue with the set packages if we would merge efforts or something. Unfortunately the response was "'We' have invested considerable effort in developing this, and it will be submitted". The BiocSet package was included in Bioconductor release 3.10. Sincerely, this made me reconsider my efforts on submitting more packages to Bioconductor. Other packages that I have developed will not be hosted on Bioconductor. <br /></div><div><br /></div><div>Recently there have been more efforts to be more transparent, with three new boards, the <a href="http://bioconductor.org/about/scientific-advisory-board/" target="_blank">Scientific</a>, <a href="https://github.com/Bioconductor/bioconductor.org/pull/29">Technical</a> and <a href="http://bioconductor.org/about/community-advisory-board/">Community board</a>. Also de developer forum helped to bring topics developers find using or managing Bioconductor packages to a wider group. For instance it was proposed to me to held a developer forum about how to maintain a package in the long term and how and when Bioconductor team intervene in maintaining packages. <br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi67icEjeZVdooMT4Qx1Tid3eNN4aopYwoF-h__CZ7DPtwcsI5-N-9UrqzViBmrXMXWX0dkK59frQROCEmQHOP3od3mUn3HzzWnIlFEhusAoV7TN_PvngtRicdCoRcJFw0UVlxdSciIC-Ex/s1090/CAB.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="610" data-original-width="1090" height="280" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi67icEjeZVdooMT4Qx1Tid3eNN4aopYwoF-h__CZ7DPtwcsI5-N-9UrqzViBmrXMXWX0dkK59frQROCEmQHOP3od3mUn3HzzWnIlFEhusAoV7TN_PvngtRicdCoRcJFw0UVlxdSciIC-Ex/w500-h280/CAB.png" width="500" /></a></div></div><div><br /></div><div><div>However my impression is that depending to who you are connected you get things more easily done regarding the project. Or perhaps those that are better connected know how and what to ask so they get more from the project. <br /></div><div><br /></div></div><div><b><br /></b></div><div><b>Closing <br /></b></div><div><br /></div><div><br /></div><div>The methods and packages on Bioconductor are generally of high quality, the project management is improving.<br /></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVsDZOC0JGfmEPfhMcjZ9avhyphenhyphenRUN_Nh9SffHnEkxyjAMYPFmRKGI_lCESp-lUdvqmRxAGYpyLcXj2-t58OmZ7j2lh2fzObmJ-Fd8GTpco0VR0UCdL4LT6DScU-LF88Yy4TkKB5WgkrlLtz/s3872/PANO_20190624_150855.jpg" style="margin-left: 1em; margin-right: 1em;"><img alt="One of the few photos of a plenary session on the developer day" border="0" data-original-height="1824" data-original-width="3872" height="189" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVsDZOC0JGfmEPfhMcjZ9avhyphenhyphenRUN_Nh9SffHnEkxyjAMYPFmRKGI_lCESp-lUdvqmRxAGYpyLcXj2-t58OmZ7j2lh2fzObmJ-Fd8GTpco0VR0UCdL4LT6DScU-LF88Yy4TkKB5WgkrlLtz/w400-h189/PANO_20190624_150855.jpg" width="400" /></a></div><div><br /></div></div></div>b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-55588116156271148092020-05-31T16:37:00.001+02:002020-05-31T16:37:50.028+02:00Sequencing: From the wet lab to the dry labHere I'll share some experiences for sequencing samples by RNA. Most of them will be useful for other techniques and also for single cell sequencing (or scRNA-seq). Here I'm assuming that you do a short-sequence technique from Illumina or similar companies. Also I'll provide some tips to make easier the life of the bioinformatician that will analyse the data.<br />
<br />
Don't expect to find how many reads for sample you need or which design is better or which machine. Neither I will talk about prices or provide a list of companies and scientific platforms to look for. I won't cover how to analyse the data, or compare pipelines to process RNA-seq. Hope this post is more practical than all that but less technical. <br />
<br />
<h3>
Before sending: Get ready</h3>
<br />
You carried out your experiments and have already extracted the RNA from patients, mice, rats, cell cultures or whatever are you studying. You have them named with sensible names for your experiment like A+B-, 4789/Diff, 256-w046 and usually stored in your notebook and probably also in a spreadsheet (Remember to annotate too where did you store them of the freezer). Also be consistent with your naming scheme, don't store some samples as 256-w046 others as 257-w46 and others as 256-W046, this will make it harder to relate the samples of your experiments to the sequencing samples and mistakes might happen when matching between the names of the samples.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu3PPOBK0jmdro7haREcVGsh768apNq3zSKw8T3zED53SzwRL5KO1GDwfrk3x7heW3qLF0NRA7L64IOeJb2lg5GY80TMPt15QsocCE5kRHccYmF7q6AuexFY3trtnHIAq1Uk5KfXPr3KHd/s1600/Screenshot+from+2020-05-31+14-42-06.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Screenshot of a spreadsheet for samples, column names: Sample, Concentration (mg/ml), Volume (ml), Row, Column, Plate, Freezer, Comments" border="0" data-original-height="136" data-original-width="595" height="73" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu3PPOBK0jmdro7haREcVGsh768apNq3zSKw8T3zED53SzwRL5KO1GDwfrk3x7heW3qLF0NRA7L64IOeJb2lg5GY80TMPt15QsocCE5kRHccYmF7q6AuexFY3trtnHIAq1Uk5KfXPr3KHd/s320/Screenshot+from+2020-05-31+14-42-06.png" title="Screenshot of a spreadsheet for samples to be sequenced" width="320" /></a></div>
<br />
<br />
Before going further you need to measure the quality of the material, in RNA by looking at the RIN, concentration and volume you have. Platforms and companies usually require a certain volume at certain concentration or X amount of RNA and a good quality to process the samples.<br />
<br />
Next come sending the samples you selected for sequencing. As any experiment it is recommended to have some quality controls so I recommend to send also some water samples to verify that there isn't any problem with the process (contamination from other samples, degradation...) . You should also try to have some replicates of the samples, there is ample evidence of the importance of replicates on sequencing <a href="https://rnajournal.cshlp.org/content/22/6/839.full.pdf" target="_blank">1</a>, <a href="https://academic.oup.com/bioinformatics/article/30/3/301/228651" target="_blank">2</a>. I know sometimes is difficult to have biological replicates but at least try to have technical replicates if you have enough volume. <br />
<br />
Depending of the machines you'll use and the number of samples to sequence they will be sequenced on several batches. Make sure to account for that when sending the plates and avoid a batch effect. Either block correctly or randomize the samples of each batch. For this purpose I created a tool to randomize the samples and minimize the batch effect: <a href="https://llrs.github.io/experDesign/" target="_blank">experDesign.</a><br />
<br />
I suggest creating a new spreadsheet file with all the information they required, <a href="https://en.wikipedia.org/wiki/RNA_integrity_number" target="_blank">RIN</a>, concentration, position on the plate, number of plate if you make a big batch... the name of the sample (the original one) and the new name you provide
to the sequencing people that should be easy to write and short. This new name is necessary if you include replicates and water as control as you need to be able to differentiate between different replicates of the same sample. I suggest use S1, S2, S3, S4, .... This file will be quite useful later on, but the sequencing platform might require an specific format or files and might provide you with templates and examples. <br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi57XoPMFIKG0L0L-1EUsNv2IeX8slRgzzV6-a5sKDTzvhQiz_Fw2PgaOQoIov8iSM5-kTsxJRjT7mnrmizTQ65S9wAQnSEp9gSp2BNRhdsEvm5u6TMfVj_XTyLBToDWYYprPR0tSdX4Bi2/s1600/Screenshot+from+2020-05-31+14-50-30.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="327" data-original-width="571" height="183" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi57XoPMFIKG0L0L-1EUsNv2IeX8slRgzzV6-a5sKDTzvhQiz_Fw2PgaOQoIov8iSM5-kTsxJRjT7mnrmizTQ65S9wAQnSEp9gSp2BNRhdsEvm5u6TMfVj_XTyLBToDWYYprPR0tSdX4Bi2/s320/Screenshot+from+2020-05-31+14-50-30.png" width="320" /></a></div>
<br />
<br />
Next is how you send the samples, physically. You'll need to make sure they are not damaged along the way, so you'll need send them with dry ice and have the box replenish if you send it far away. If it is on the same centre you'll might just need to use ice. <br />
<br />
<h3>
What to expect of the sequencing centre: </h3>
<br />
Once the samples arrive you'll need to wait their quality check in case the samples degradated on the trip, again RIN, concentration, volume. will be measured. If some samples do not meet their threshold they might ask you to send more volume or see if you can send samples with higher quality. This process might be repeated several times, so you might end up sending several times the same sample. <br />
<br />
With the samples that meet their standards they will prepare the library and sequence them. This is the most expensive part. This might take between 1 or 3 months.<br />
<br />
They might have created you an account for you to download the data from their servers, and provided with credentials and how to log in there. You might receive an email once each batch is sequenced or you might need to check once in a while if there is something to download. The files will usually be .fastq.gz. If you are using two-way sequencing (recommended) you might have two files for each sample (S1_R1.fastq.gz and S1_R2.fastq.gz).<br />
<br />
The files are at least 1 month on this servers, so make sure to check at most every two weeks. Also take into account that it might take some days to download the data. If the batch is big enough it could be faster just to send the disk by mail than just download it. <br />
<h3>
Samples are sequenced: now what?</h3>
As the samples are provided I recommend that you download and store in at least two separate devices or disks. Check that you downloaded them correctly using <a href="https://en.wikipedia.org/wiki/Md5sum" target="_blank">md5sum</a>. You might want them all files in a single folder or a folder for each batch.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://forum-qiime2-org.s3.dualstack.us-west-2.amazonaws.com/original/2X/e/e8dfc6888a9afb158e88054e33b428256e28cfec.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="558" data-original-width="540" height="320" src="https://forum-qiime2-org.s3.dualstack.us-west-2.amazonaws.com/original/2X/e/e8dfc6888a9afb158e88054e33b428256e28cfec.png" width="309" /></a></div>
<br />
<br />
Once the files are securely stored you need to check them:<br />
<ul>
<li>First check that the amount of files is correct. Double the number of samples. Also sometimes with the first sequencing they don't reach the number of reads you paid for so some samples might be run in another batch and you might end up with 4 files or more for a single sample. </li>
<li>Check that the files are correctly formatted. Once we got a truncated fastq file and only realized it when we uploaded to a public data repository. I use <a href="https://genome.sph.umich.edu/wiki/FastQValidator" target="_blank">FastQValidator</a> for that since then.</li>
<li>Check that the quality is correct. Usually done with <a href="https://www.bioinformatics.babraham.ac.uk/projects/fastqc/" target="_blank">FastaQC</a>, some facilities even provide this quality report themselves. At this stage if you find something wrong the only options are remove the sample or send it again and make a new library for it. </li>
</ul>
<br />
Once all the samples pass these quality controls you can start with the pipeline you need. This will depend on the type of question you want to answer and the sequencing technique applied. b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-19463824800802159062020-01-20T12:25:00.000+01:002020-01-20T12:25:39.515+01:00Reviewing a preprint<br />
After a while I write back to comment about the <a href="https://www.biorxiv.org/content/biorxiv/early/2020/01/14/2020.01.14.905760.full.pdf" target="_blank">preprint</a>: "Benchmarking joint multi-omics dimensionality reduction approaches for cancer study". First, I'll explain why I comment here: On 20th September 2019 I saw on twitter a poster about multiomics
mentioing RGCCA, which I have been using for a while. After asking
somehting about it the first author of the poster commented that would
notify me when the preprint would be ready. Now that the preprint is
ready, the first author of the paper, Laura, asked for comments on the preprint. <br />
<br />
<br />
<span style="font-size: large;"><b>Abstract</b></span><br />
<br />
Already from the abstract one notices that there is an special emphasis on reproducible research. The methods used and how other readers can use them, can be easily accessed and reused.<br />
<br />
<span style="font-size: large;"><b>Background</b></span><br />
<br />
The integrations methods are classified after explaining why the integration methods are needed, and why do we need to compare them. One of these classifications are the dimension reduction approaches, which this article focus on. However, I do not agree with the following sentence: "Dimensionality Reduction (DR) approaches decompose the omics into a shared low-dimensional latent space". Neither of the two references provided support this claim as far as I understood them. Some dimension reduction methods decompose the omics into low dimensional (latent?) spaces that are not shared by all the omics. <span style="font-family: sans-serif; font-size: 18.4px; left: 153.614px; top: 993.343px; transform: scalex(0.891383);"></span><br />
<br />
<br />
<span style="font-size: large;"><b>Results</b></span><br />
<br />
<b>1.Joint Dimensionality Reduction approaches and principles</b><br />
<br />
The methods analyzed are RGCCA, MCIA, MOFA, MSFA, intNMF, iCluster, JIVE, tICA, sckit-fusion. Most of them are methods implemented in R packages, except sckit-fusion which is a python package. There are several implementations of some of these methods like JIVE which is also on the STATegRa.<br />
<br />
<br />
The article mentions the factor matrix as shared between all omics, but the RGCCA and the MCIA method used doesn't have a shared factor matrix (F) for all the omics but have one factor matrix for each omics (F<sup>i</sup>) instead. This is recognized as a result instead than on the background section. Also it explains that JIVE and MSFA have factors that are shared by all the omics and some that are not.<br />
<br />
It is also mentioned that some methods require the same sample and some need the same features, while other needs both things. A possible workaround mentioned is convert all of the omics to the same symbols as the others. I think that here there is a confusion between what a feature is and how is represented. The methodology used is to use the correlation matrix of the samples.<br />
<br />
I think it would be clearer if this first section of results were either on the background or on the method section. <br />
<br />
<b>2) Benchmarking joint Dimensionality Reduction approaches on simulated omics datasets</b><br />
<br />
There is now a comparison of the methods using the <a href="https://en.wikipedia.org/wiki/Jaccard_index" target="_blank">Jaccard index</a>. It is mentioned some of the "best-performing method[s]" on 6 different simulated datasets with 5, 10, 15 groups and with equal size of not. I think it would be clearer to describe that instead of letting the reader read the caption of the Figure 2. Also it might be worth faceting the plots, and there are some methods that are in a different plot inside the Figure, which makes it harder to read<br />
<br />
<b>3) Benchmarking joint Dimensionality Reduction approaches on cancer datasets</b><br />
<br />
Now the same methods are applied to the TCGA dataset to each of the cancer types and the resulting weights are tested for enrichment in known biological pathways and processes. <br />
Next they test if the factors (all 10 of them?) are related to survival. But the result depends more on the cancer type rather than the method used.<br />
<br />
Clinical annotations are used for the integration: “age of patients,” “days to new tumor,” “gender”, and “neo-adjuvant therapy somministration". The reason is to compare the selectivity and specificity of the method. <br />
<br />
<br />
Biological pathways and process are analyzed using <a href="https://reactome.org/" target="_blank">reactome</a> and <a href="https://geneontology.org/" target="_blank">gene ontology</a> and <a href="http://software.broadinstitute.org/gsea/msigdb/collections.jsp" target="_blank">cancer hallmarks from GSEA. </a><br />
<br />
From this section it is not clear to me what were the expectations before doing the tests. What I understandd is that there the relationship between the omics should be related to these variables.<br />
<br />
From the enrichment tests it seems to expect the selected genes should be related to the relationship between the data used: gene expression, DNA methylation, and miRNA expression and to a known and annotated function. While this might be true it is know that genes are not well annotated and that the predominant annotation comes from differential expression analysis. This makes it difficult to expect that these genes important for the relations would be annotated.<br />
<br />
From Figure 3 (referenced in this section), I would modify the y axis. It seems that logarith in base 10 are not used because there are some values below 0. This would make it easier to understand the plot. <br />
<br />
<b>4) Benchmarking joint Dimensionality Reduction approaches on single-cell datasets</b><br />
<br />
Now the data used is scRNA-seq and scATAC-seq, on three cancer cell lines (HTC, Hela and K562) for a total of 206 cells. The first two factors are used to decide if the methods perform well or not. It is not described which one of the factors from the omics are selected when using a method that has a factor matrix for each omic. Also the clusters are expected to be on the first two factors, instead on just the first one or the fourth.<br />
<br />
<b>5) Multi-omics mix (momix) Jupyter notebook</b><br />
<br />
The authors provide the code for reproducing the content of the paper. Which is quite nice documented and easy to understand.<br />
<br />
<span style="font-size: large;"><b>Discussion</b></span><br />
<br />
The article mentions that some of this Big Data<sup>TM</sup> "are frequently profiled from different sets of patients/samples, leading to missing data", which seems to suggests that these methods need to expand to handle missing data. My point of view is that sometimes we don't need bigger data but better data. Attempting to find the relationship between several patients, at different time points with different data from each patient won't work as well as havving some smaller data but of all the patients at all the timepoints. <br />
<br />
<b>The distinction between co-inertia and correlation.</b><br />
<br />
The suggestion to invest on capturing non-linear signals on data is important and I really hope there are some more approaches that handle multiple omics from the same patients that are capable to identify this signals. One approach could be from kernel PCA or similar methods, but so far I haven't found any one.<br />
<br />
<span style="font-size: large;"><b>Methods</b></span><br />
<br />
<b>Presentation of the nine jDR algorithms</b><br />
<br />
A nice short easy to read and understand summary of the methods. I think that there is missing the definition of the symbol <i>k</i> used, it seems like the number of factors calculated.<br />
<br />
<b>1. Integrative Non-negative Matrix Factorization (intNMF)</b><br />
<b>2. Joint and Individual Variation Explained (JIVE)</b><br />
<b>3. Multiple co-inertia analysis (MCIA)</b><br />
I must say that the <a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4053266/" target="_blank">original paper</a> is a bit obscure to me. But seeing the definition here is much clearer that is the same than the RGCCA with tau = 1, and scale = TRUE and factorial scheme from the result of a dimensional reduction (like a PCA) instead of the data directly. <br />
<b>4. Regularized Generalized Canonical Correlation Analysis (RGCCA)</b><br />
While it is well described the sparse variant for omic data is not used on the paper. <br />
<b>5. iCluster</b><br />
<b>6. Multi-Omics Factor Analysis (MOFA)</b><br />
<b>7. Tensorial Independent Component Analysis (tICA)</b><br />
<b>8. Multi-Study Factor Analysis (MSFA)</b><br />
<b>9. Data fusion (scikit-fusion)</b><br />
<br />
<b>Factor selection for performance comparisons</b><br />
<br />
This section explain what process was followed with the omics-specific factor. However, these differences are not discussed or used later on the article. Part of it could be on the discussion section.<br />
<br />
<b>Data simulation</b><br />
<br />
The number of simulations seems low, just 1000. Also it is not clear to me if the same data-set is used for all the methods or if each method was used with different simulated data-sets. Looking at the <a href="https://github.com/ComputationalSystemsBiology/momix-notebook/blob/master/scripts/Comparison%20in%20simulated%20data.ipynb" target="_blank">source code</a> provided confirms that each method is analyzed on its own simulated data. Thus, the comparison is not fair, I think it would be better to compare the same simulated datasets by all the methods. (Aside, it would be rellevant to store the seed used to generate those random dataset if you want other to create those exact same datasets). <br />
<br />
<b>Clustering of factor matrix</b><br />
<b>Comparing jDR algorithm clusters to ground-truth clusters</b><br />
<br />
<br />
<b>Selection of the clinical annotations</b><br />
<br />
The clinical annotations are relevant. Having some other technical annotations (like vial_number, or patient_id) would be relevant to check if there is patient variation or some difference between vials processed earlier or later. This way some batch effect could be discarded. <br />
<br />
<b>Selectivity score</b><br />
<br />
It reminds me of the <a href="https://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient" target="_blank">Dice or Sørensen</a> score, maybe a more common index could be used. If the dice or the Jaccard index is used then it would be comparable to the "ground-truth" from the simulated data sets.<br />
<br />
<b>Testing the biological enrichment of metagenes</b><br />
<br />
Here fgsea is used, which is a package I like and have contributed to in the past. With the metagenes, rows of the weight, most of the genes should have a weight of 0 which makes unstable the gsea method. <br />
But it seems that it is also used for gene ontologies, which have an underlying structure (DAG) that affects how the terms are identified as significant. Also it is not clear if they used just some sub-ontologies like biological component or biological function or they used all the ontology. <br />
<br />
<b>Quality of single-cell clusters</b><br />
<br />
<strike> </strike><br />
<h4>
<span style="font-size: large;">Summary</span> </h4>
<br />
Overall the article is a nice comparison of several methods and provides the framework to compare more multi-omic methods. I think that to better compare the methods it should be done with non-default parameters and with similar methods. Expecting that omic-specific methods perform equally than the joint-factors methods' is a bit of a stretch, explaining these in the introduction could avoid the reader a surprise when reading the methods section. The brief summary of the methods is very useful and well described. <br />
Most of these methods have a score indicating how well did they perform on the integration, I'm not sure if this could be used to compare between the methods. <br />
<br />
This is my first review of an article, so if you'd like to suggest some improvements on the comments let me know. b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-71130656459886548182019-05-24T23:14:00.003+02:002019-05-24T23:14:58.156+02:00Updating your mail on BioconductorIf you have a package in Bioconductor and you need to change the email (say you change from university or company) it is not fast. You need to do the following:<br />
<br />
<ul>
<li>On the <a href="https://stat.ethz.ch/mailman/options/bioc-devel" target="_blank">bioc-devel mailing list.</a></li>
<li>On the <a href="https://support.bioconductor.org/" target="_blank">support website</a> through "edit my profile"</li>
<li>On your <a href="https://git.bioconductor.org/BiocCredentials/profile/" target="_blank">BiocCredentials</a> </li>
<li>
Send a request to the bioc-devel for updating the maintainer email for the related packages </li>
<li>Update the DESCRIPTION file in the release and devel branches of all the packages the email is listed in (this can be done by Bioconductor core members if you ask so in the previous point)</li>
</ul>
<br />
This is because there isn't a centralized account to control the email on all these related services. It is not hard, but you could forget something. Thanks to Leonardo and Nitesh for reporting this on the <a href="https://stat.ethz.ch/pipermail/bioc-devel/2019-May/015123.html" target="_blank">mailing list</a>b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-63502893459503755202019-05-01T11:24:00.001+02:002019-05-01T11:25:24.318+02:00Accessing the vignettesI am used to search in the web for the vignettes of the packages, but sometimes it is useful to access the one in the computer. In this occasions you can use:<br />
<br />
<br />
vignette(package="UpSetR") # To know if there are vignettes and their name<br />
vignette("set.metadata.plots", package = "UpSetR") # Open one of the vignettesb101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-58243007024315428942019-03-09T11:25:00.001+01:002019-03-11T17:25:40.484+01:00Views of a pet bioinformaticianMy research group has three bioinformaticians, but the team is mostly wet lab focused. So I consider myself and my colleagues as <a href="http://www.opiniomics.org/a-guide-for-the-lonely-bioinformatician/" target="_blank">pet bioinformaticians</a>. I could also be considered a <a href="https://academic.oup.com/bib/advance-article-abstract/doi/10.1093/bib/bbx144/4565521" target="_blank">clinical bioinformatician</a>, and I want to share my (little) experience so far:<br />
<br />
<h3>
Communication</h3>
<br />
<a href="http://ibd-bcn.org/" target="_blank">My lab</a> is mostly wet lab but my boss has several bioinformaticians, despite not understanding much the mathematical/technical aspect of what we do. She is mostly interested in which genes are up-regulated, or which microorganisms are involved in the disease (inflammatory bowel disease). It is often difficult to explain my concerns with using some methods. For instance, she wants to know which microorganisms are related to which genes from the mucosal intestine. She frequently asks me for the correlations between them, without considering that this way we might have lots of noise from different sources like the diet that different patients follow. At the same time I also need to make is easy to understand the more complex methods like the models accounting for these factors. <br />
<br />
Our lab is in a research center focused on translational research. That means that each lab is connected to a group of doctors of the hospital nearby (less than 100m). We often have meetings with the doctors to learn how are they trying to cure the disease, and what are they doing. For me it is usually difficult to understand, they focus on the number of samples on the follow-up of patients, or the effect of a new treatment on a cohort.<br />
In this meetings we also present what we are doing, what research we are doing. I had to present a couple of times already, and I realized how different is what we do.<br />
<br />
<h4>
Trust</h4>
<br />
When you communicate you must build trust with whoever is listening. I tend to explain what, why and how but people usually want to know directly the conclusion. But explaining how you can build trust on the results. Usually explaining why you are doing each change on the analysis or choosing one tool over another is more important than explaining what are you doing, but at the end you must also provide some results.<br />
<br />
<h3>
Side projects</h3>
<br />
As a bioinformatician I set up my own experiments, I decide which tools should I use, or spend the time I need to be sure if I want to use them.<br />
Make it easy to yourself to reproduce figures, (I use them in the informal meetings I have with my PI every twice weeks) and the experiments. This might involve writing a package for the analysis and saving all the "tests" which end up being the experiments used to decide the direction of further research.<br />
<br />
Make it easy to build reports/redo the same analysis with a slightly variation. I've read that programmers bring value in companies by maintaining/building the source of the income. Here too, by maintaining/building methods to analyse the data you keep your lab on. Make a stand-alone program for the process you had to repeat for the third time, or that you see that it can come useful later. <br />
<br />
<br />
Look for other's code. What new tools and methods have been developed or are being developed? How are people using existing tools? Could any of these be used in your project or in future projects? You might need to use know how to find new tutorials or which research groups you should look for when the lab decides to give it a try to a new technique. <br />
<br />
<br />
<h3>
The lab mates</h3>
<br />
Understand other's projects, what are they looking for. Why are they looking or doing this experiment?<br />
<br />
You don't need to design or add your value in everything they do. But you might need to help them when they are going to sequence their samples, or when they want to compare several measurements. Somehow you might be the person they ask to know which method they should apply or how they can represent some values or difference or simply how they can show better their history of the paper..<br />
<br />
Also understand their struggles, you might be happy letting a computer run over night but they might need to come on Saturdays and Sundays to make sure their experiments are OK. Or they need to stay late because the sample of the hospital came late and they need it to process it the same day. Be sympathetic and help whenever you can. <br />
<h3>
Learn about the data</h3>
It is easy to forget where does the data come, but before being a big matrix or a big .fastq there were a lot of process. You need to learn what was going on. Why were those samples collected? What was the process before the data arrived to your computer? <br />
In my case I have to know if the cirugy on patients is random, or not, or if those missing biopsies are due to some reason or there are several and cannot be foreseen. Knowing the origin of your data provides insight about how to analyse it.<br />
<br />
Read the literature about the problems/how to analyse the data: is it composite, which methods are there to normalize, how should you do the quality control?<br />
<br />
<h3>
Be helpful</h3>
Be sincere if you do a mistake, own it. Try to help people and do your best and nobody can ask you more. I hope that if you are in a similar position you find a good team and position to learn, grow and be happy.b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-85176242446431600062019-02-23T12:27:00.000+01:002019-02-23T12:27:21.624+01:00Pathway activationFor biologists using microarrays or sequencing one of the most intersting things is finding if a pathway related to a function is activated or not.<br />
<br />
To know if a pathway is activated or not usually we need to compare the same pathway in two conditions. It means a subject centered functional scoring method. Which in turns assumes that a pathway is conserved among people and time. <br />
<br />
<br />
In addition the assumption that is done is that more expression of more genes of a pathways imply an increase of the metabolism of that pathway, which might not be true. Given that pathway has 5 genes, and that all of them are positive regulated implies that a pathway is activated?<br />
<br />
I have to dive to the origins of this, and see if there is some other way to measure how active a pathway is. b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-86896303228980679322019-02-02T10:14:00.002+01:002019-02-04T12:49:50.544+01:00Gene Ontology changesUntil recently I didn't notice the changes on gene ontolology. For me it was a very reliable and stable resource.<br />
<br />
As my package BioCor is compared with GOSemSim which calculates similarities based on the gene ontologies I found that they change very much. There are constant changes on which terms are removed.<br />
<br />
I found that changes are shared via a github repository <a href="https://github.com/geneontology/go-announcements" target="_blank">geneontology/go-announcements</a>, which allows one to oppose to some changes. b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-12625905577315911642018-11-08T09:51:00.003+01:002023-01-11T12:14:27.179+01:00Coding ecosistem<div class="separator" style="clear: both; text-align: left;">
If you are looking for improvements in your software development you might have read or heard about test, licenses, styles, quality, ... This post is aimed to explain how and which pieces work together for a related goal.</div>
<br />
I have seen lots of post for each specific tools or steps, but not so much for a list of how do you work with all (or some). Here I list some of these tools related to R packages and GitHub. I edit as I go, so if I missed something let me know and I'll update the list.<br />
<br />
<h4>
Previous work</h4>
Before starting writing a new piece of software as usually avoid "reinventing the wheel", so search for similar packages, I recommend using <a href="https://cran.r-project.org/package=packagefinder" target="_blank">packagefinder</a>. Which allows you to search for keywords in the existing CRAN packages.<br />
<h4>
Naming</h4>
When I start a project I try to identify the name with what is its goal and then I check with <a href="https://github.com/ropenscilabs/available" target="_blank">available</a>. It checks github and dictionaries to suggest a name for your package or check your name<br />
<h4>
Coding</h4>
<h4>
<blockquote class="imgur-embed-pub" data-context="false" data-id="7J1bEaJ" lang="en">
<a href="https://imgur.com/7J1bEaJ"><span id="goog_480364006"></span>just typing R code - Hadley Wickham<span id="goog_480364007"></span></a></blockquote>
<script async="" charset="utf-8" src="//s.imgur.com/min/embed.js"></script></h4>
<a href="https://github.com/r-lib/devtools/" target="_blank">devtools</a> is a great package, that now depends mainly on <a href="https://github.com/r-lib/usethis/" target="_blank">usethis</a> to upgrade the version number, setup the package structure, add tests, badges, set up remote and other related code.<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
It is also nice the <a href="https://github.com/MangoTheCat/goodpractice" target="_blank">goodpractice</a> package if it is your first package (or want to check good practices). <br />
<h4>
</h4>
<h4>
<a href="https://en.wikipedia.org/wiki/Spaghetti_code" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" target="_blank"><img alt="Spaghetti code R" class="irc_mi" height="400" src="https://upload.wikimedia.org/wikipedia/commons/4/40/Spagetti_code_structural_graphic.GIF" style="margin-top: 6px;" width="246" /></a></h4>
<h4>
Styling</h4>
<h4>
</h4>
There are three code styling that are commonly used: <a href="https://google.github.io/styleguide/Rguide.xml" target="_blank">Google</a>, <a href="http://style.tidyverse.org/" target="_blank">tidyverse</a> and <a href="https://bioconductor.org/developers/how-to/coding-style/" target="_blank">Bioconductor</a>. None is better than the other and they are quite similar. <br />
I use mainly <a href="https://github.com/jimhester/lintr" target="_blank">lintr</a> to identify code that doesn't comply with the style. But if you want to adhere strictly to a style you can use <br />
<a href="https://github.com/r-lib/styler" target="_blank">styler</a> which modifies the code to match the predefined style you choose. I haven't managed to make a style for Bioconductor (neither a lintr though). <br />
I also recommend to use <a href="https://github.com/r-lib/desc" target="_blank">desc</a> to modify the DESCRIPTION file of a package. It is quite useful to normalize the fields, add ORCID numbers or other related operations.<br />
If you have a vignette (I highly recommend it), you might have done it using knitr. If that is your case, you can name all your code blocks with <a href="https://github.com/lockedata/namer" target="_blank">namer</a>. <br />
<br />
<h4>
Tests</h4>
To write a good package you will need to write tests. <a href="https://github.com/r-lib/testthat" target="_blank">testthat</a> is the popular tool to have them. This excellent <a href="https://itsalocke.com/blog/packages-for-testing-your-r-package/" target="_blank">post</a> of Maëlle Salmo, is more complete and links to more packages than I knew. It has as well very good advice on how to write the tests. <br />
<h4>
CI</h4>
To further check the package in each change you push is the continuous integration test. If the package doesn't pass the checks it will warn you. <br />
The <a href="https://github.com/ropenscilabs/tic" target="_blank">tic,</a> seems the future here, as well as the <a href="https://github.com/r-hub/rhub" target="_blank">r-hub</a>. Till now I've been using <a href="https://juliasilge.com/blog/beginners-guide-to-travis/" target="_blank">Travis</a> to test in (macOS and Linux) and Appveyor to test in Windows (you can set up both with usethis::use_travis, and usethis::use_appveyor). But in the linked blogpost of Julia Silge you'll find lot's of useful information.<br />
<br />
<h4>
Quality</h4>
<div style="text-align: left;">
<span style="font-weight: normal;">If you have test you will be interested to know if you are covering all your package or not. <a href="https://github.com/r-lib/covr" target="_blank">covr</a> package allows you to do so, and have it linked to the CI. In addition, you might want to have a README page of the coverage in the package, you can do this with <a href="https://github.com/yonicd/covrpage" target="_blank">covrpage</a>, although covr::report provides already an interactive page.</span></div>
<br />
In addition to know when a function is too complex I started to use <a href="https://github.com/MangoTheCat/cyclocomp">cyclocomp.</a> The reports are helpful to identify functions that could be divided into smaller modular functions. If you have many functions, classes and methods you might be interested to see how they are related using <a href="https://cran.r-project.org/package=mvbutils" target="_blank">mvbutils</a>::foodweb, or <a href="https://cran.r-project.org/package=CodeDepends" target="_blank">CodeDepends</a>, <a href="https://cran.r-project.org/package=codetools" target="_blank">codetools</a>, <a href="https://cran.r-project.org/package=pkggraph" target="_blank">pkggraph</a><br />
<br />
If some functionality is due to a dependency you can use <a href="https://github.com/jimhester/itdepends/" target="_blank">itdepends</a> to check the value other packages bring. See this <a href="https://speakerdeck.com/jimhester/it-depends" target="_blank">slides</a> to learn how to check a project or a package dependencies. <br />
<br />
Check the quality of your text with <a href="https://github.com/benmarwick/wordcountaddin" target="_blank">wordcountaddin</a>, how long does it take to read it, how difficult...And also <a href="https://github.com/ropenscilabs/gramr" target="_blank">gramr</a> for checking the grammar of your work<br />
<h4>
Licensing</h4>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmt3HLA0kljSF6pUqFkqlAu4163uqIs3u3e2QR_lg-4T2ZB2eXKQMAJUtFOMYxB4eh2IckuFasHA8YWYtclyQc6Ez-fO-xtY8rrDIwNkAlckLXllPiTMeQiDeH5DxRG-LpINuwiTSlr4P6/s1600/Screenshot+from+2018-10-28+11-21-24.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="397" data-original-width="918" height="138" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmt3HLA0kljSF6pUqFkqlAu4163uqIs3u3e2QR_lg-4T2ZB2eXKQMAJUtFOMYxB4eh2IckuFasHA8YWYtclyQc6Ez-fO-xtY8rrDIwNkAlckLXllPiTMeQiDeH5DxRG-LpINuwiTSlr4P6/s320/Screenshot+from+2018-10-28+11-21-24.png" width="320" /></a></div>
<br />
The <a href="https://opensource.org/">Open Source Initiative</a> and the R-community have a list of licenses. I started using <a href="https://choosealicense.com/licenses/gpl-3.0/">GPLv3</a>, but after reading more I think that MIT better, but that depends a bit on your software. You can have a look at <a href="https://choosealicense.com/" target="_blank">choosealicense</a> if you need more information. You can add some licenses using usethis::use_*_license<br />
<br />
I don't have contributors yet, if they appear I'll have the infrastructure with <a href="https://cla-assistant.io/" target="_blank">cia-assitant</a>, which checks if the contributions have been relevant and ask them to adhere to the license.<br />
<h4>
Code of conduct</h4>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwHSSautYGAv3L8iG6GyIW74Ac7JOOF_2RYkEl_cnb1MPz5FDtlwCEeWg08J7oNMdZAvjHzjjsxh1quBcHmpOj0K3MIO4Imx8p5Es6YpY4XZOj2xNiHMt0uCR-LUGv2iqK3dLc40pgrEgX/s1600/Screenshot+from+2018-10-28+11-15-09.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="107" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwHSSautYGAv3L8iG6GyIW74Ac7JOOF_2RYkEl_cnb1MPz5FDtlwCEeWg08J7oNMdZAvjHzjjsxh1quBcHmpOj0K3MIO4Imx8p5Es6YpY4XZOj2xNiHMt0uCR-LUGv2iqK3dLc40pgrEgX/s320/Screenshot+from+2018-10-28+11-15-09.png" width="320" /></a></div>
To make sure that contributions are welcome it is better to have a code of conduct that outlines what are the expected behaviours of the contributors. The most used is the <a href="https://www.contributor-covenant.org/version/1/4/code-of-conduct">Code of covenant</a> that you can have it with usethis::use_code_of_conduct. I'm using a variant of the related to <a href="https://github.com/domgetter/NCoC" target="_blank">NCoC. </a><br />
<span id="goog_1624162129"></span><span id="goog_1624162130"></span><br />
<h4>
Difusion</h4>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blog.mitchelloharawild.com/img/2018/07/featurewall.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="658" data-original-width="800" height="263" src="https://blog.mitchelloharawild.com/img/2018/07/featurewall.png" width="320" /></a></div>
If everything works out, you have your package, the quality, the problem. It is time that others benefit of your work. You can add a website hosted in github for your package using <a href="https://github.com/r-lib/pkgdown">pkgdown</a> (usethis::use_pkgdown).<br />
<br />
You can tweet on the <a href="https://twitter.com/search?q=%23rstats">#rstats</a> hasthag. Perhaps <a href="https://twitter.com/search?q=%23rstats">Mara Averick</a> will made a fantastic summary of your package or examples!<br />
<br />
One of the popular ways to let know your package is having a stickers. You can create one using <a href="https://github.com/GuangchuangYu/hexSticker" target="_blank">hexSticker</a> or <a href="https://connect.thinkr.fr/hexmake/" target="_blank">hexmake</a>. For instance you can find here <a href="https://github.com/Bioconductor/BiocStickers" target="_blank">Bioconductor stickers.</a><br />
<div><br /></div><div>You can submit your package to several venues (however some of them are incompatible), but if you submit to CRAN you can check the status of your submission <a href="https://lockedata.github.io/cransays/articles/dashboard.html" target="_blank">here</a> thanks to Locke Data.<br /></div><div><br /></div>
<h4>
Extension for Github</h4>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://user-images.githubusercontent.com/1402241/45664093-aa09c900-bb3c-11e8-86c6-ad4a0246aef4.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img align="right" alt="screenshot" border="0" height="215" src="https://user-images.githubusercontent.com/1402241/45664093-aa09c900-bb3c-11e8-86c6-ad4a0246aef4.png" style="max-width: 100%;" width="320" /></a></div>
This is not really related to R or the packages, but they might help in making your life easier: <a href="https://github.com/ovity/octotree">Octotree</a>, <a href="https://github.com/sindresorhus/refined-github">Refined Github</a>, <a href="https://github.com/tanmayrajani/notifications-preview-github">Notifications Preview on Github</a>. They are really useful.<br />
<br />
Also the bot <a href="https://github.com/apps/todo" target="_blank">todo</a> might hep to create issues while coding, as well as the <a href="https://github.com/probot/no-response" target="_blank">no-response</a> to close issues without enough information. The <a href="https://github.com/octobox/octobox" target="_blank">octobox</a> tool might be helpful if you handle lots of packages/repositories and issues<br />
<br />
<br />
<br />
<h4>
Extensions for your browser</h4>
<br />
Kirill Müller recently posted this tweet to acces CRAN packages if you use Firefox via <a href="https://mycroftproject.com/install.html?id=88346&basename=cran-package&icontype=png&name=CRAN+package" target="_blank">this complement</a>:<br />
<br />
<blockquote class="twitter-tweet" data-lang="es">
<div dir="ltr" lang="en">
Want to quickly search CRAN by package name in Firefox? Try my search addon <a href="https://t.co/9baBNgqrri">https://t.co/9baBNgqrri</a>, most useful with a keyword defined in about:preferences#search . Typing "cran tibble" opens <a href="https://t.co/0SHCkqcXh0">https://t.co/0SHCkqcXh0</a>. <a href="https://t.co/Eog3zlPVig">pic.twitter.com/Eog3zlPVig</a></div>
— Kirill Müller (@krlmlr) <a href="https://twitter.com/krlmlr/status/1061973501249314816?ref_src=twsrc%5Etfw">12 de noviembre de 2018</a></blockquote>
<br />
<h4>
<script async="" charset="utf-8" src="https://platform.twitter.com/widgets.js"></script>Extensions for Rstudio</h4>
<br />
There is a long list of addins at this <a href="https://github.com/daattali/addinslist" target="_blank">repository</a>. I recommend the <a href="https://github.com/crsh/citr" target="_blank">citr</a> package to add bibliography to the documents like vignettes.<br />
<br />
<br />
<br />b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-90796156549567607512018-10-23T11:55:00.003+02:002018-10-23T15:07:31.318+02:00Machine learning vs data learningOne of my last post was "<a href="https://b101nfo.blogspot.com/2018/06/i-dont-do-machine-learning.html" target="_blank">I don't do machine learning</a>". Now, I realized that I am actually doing it (more on this below). However what I was doing previously? I would say I was doing <b>data learning</b>.<br />
<br />
<h4>
What is different in machine learning to methods?</h4>
<br />
After reading a lot, I think that the differences are on the focus, a regression (substitute for other procedures that model something) can be used for both machine learning and data learning.<br />
<br />
<br />
When I do a linear regression in data learning I focus on which variables have more weight and improve the adjusted R<sup>2</sup>. I learn from the data what is <b>happening</b>. <br />
When I do machine learning I focus on which linear regression is better with the data I have (or with new data). I learn from the data what <b>models</b> are better. That model can be a simple regression or a complicated deep neural network.<br />
<br />
Both have the same data, but the goal is different. Of course, nowadays where it is not too computationally expensive we want both: Once we select "the best" model we want to know what is happening.<br />
<br />
As in machine learning the focus are on the models it is needed to check if the model generalize, using for instance cross-validation, bootstrapping, or validating it in another dataset. <br />
<br />
We can see the differences on the recent <a href="https://www.reuters.com/article/us-amazon-com-jobs-automation-insight/amazon-scraps-secret-ai-recruiting-tool-that-showed-bias-against-women-idUSKCN1MK08G" target="_blank">case of Amazon</a> changing the machine learning they used to select employers. They used machine learning to choose a model about how they picked their employers, but the data learning was deficient . They didn't understand the assumptions of the model until much later they started using it. When they finally look well into the model and discovered the assumptions it made is when they found the misbehavior of the model.<br />
<br />
Note that the more complex a model is, it will be more difficult to understand from the data. Also some might say that machine learning is the new word for statistics (and it could say the same from data learning!), but statistics has two topics: description, inference. While in machine learning and data learning can be thought as having both topics, describing the data, and inferring new models/data points. <br />
<br />
<h4>
Now lets dive a bit on my case: </h4>
<br />
I am using RGCCA to find the relationship between gut's microbiome and transcriptome. I am trying to understand/learn what happens in this relationship. My labmates are interested in knowing which microorganisms are the cause of the Crohn's disease or which genes are the cause and should be followed/analyzed more. Knowing the genes they interact with would help to design a drug to cure the patients or at least alleviate their sympthons and prevent relapse and reincidence. <br />
<br />
After analyzing two models I realized that I didn't know <b>which model</b> was "the best"! I simply assumed it, hence, now I am interested in how to model the data. <br />
<br />
Now I have two new problems:<br />
At first, (naively), I thought, lets try all the models of relationship and select "the best" model. However, this falls under the known over-fitting problem and I am now evaluating it by following a leave-one-out strategy. <br />
<br />
Second, I have too many models! When I say all models I found that there are 55648 models available of a symmetric design matrix with 5 blocks of data (using only three weights per position). Evaluating all of them would require lot of CPU time, so I am now looking into ways to reduce it. Basically I plan to do a 10% of the total amount of possible combinations and then use a linear model to try to assess which model could be better, test another few thousands and check.<br />
<br />
<br />
<br />
This also helps to identify the two aspects, I can select a perfect model for this data, but if I use it with other data my results will likely be invalid. So I need to validate both the model I use and the assumptions of the model. <br />
<br />
<h4>
Summary</h4>
<br />
Two activities can be defined about data: Learning about models (machine learning), learning about the data of the models (data learning). As seen in my case, machine learning doesn't appear out of the blue, but it appears naturally when you question your model (and yourself). b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-12246022424144306162018-07-02T15:35:00.000+02:002018-07-02T15:35:01.380+02:00RV coefficientI have recently learned about the <a href="https://en.wikipedia.org/wiki/RV_coefficient">RV coefficient</a> and I wanted to share it:<br />
<br />
The RV coefficient is like a correlation between several variables. In R I found so far several methods that seems to calculate it:<br />
<br />
<span style="font-family: "Courier New", Courier, monospace;">FactoMineR::coeffRV<br />subselect::rv.coef<br />MatrixCorrelation::RV</span><br />
<br />
However the rv.coeff function from the subselect package works with only one matrix, and the coeffRV and the RV functions differ in they results.<br />
<br />
This lead me to search for its definition. All the papers mention <span class="highlight">Escoufier as the originator of these idea.</span> The longest citation (and more relevant) can be found on a <a href="https://arxiv.org/pdf/0805.2879.pdf">preprint</a>, where it is mentioned the year, the author and that several of these papers are in French.<br />
<br />
In <a href="https://www.utdallas.edu/~herve/Abdi-RV2007-pretty.pdf">this document</a> we can find the definition which is only followed by the RV function, in the coeffRV function the values are scaled.<br />
<br />
You can check that:<br />
<br />
<span style="font-family: "Courier New", Courier, monospace;">RV(scale(X, scale = FALSE), scale(Y, scale = FALSE)) == coeffRV(X, Y)$rv</span>b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-19586003722584459932018-06-25T17:26:00.003+02:002018-06-25T17:26:57.263+02:00I don't do machine learningYes, the title is true even if I do data science in bioinformatics, I don't do machine learning.<br />
<br />
As seen recently if used correctly, regressions tend to work as well as machine learning. Classic tools (?) still work, I can't say I have tried all of them, but they are quite useful.<br />
<br />
Also in bioinformatics it is hard to get a big number of samples to make both a good and reliable generalization and to train reliable a model with enough confidence.<br />
<br />
Last, most machine learning methods are to me black boxes, I don't understand them (yet). I like to understand what I use. (Although I can't say I have deeply understood the differences between some regression methods I use). <br />
<br />
Then, why I am writing this?<br />
<br />
Because it seems like an hype to say things like "powerful network medicine tools", "machine learning model", without explaining them in detail. So it becomes a black box, and science is not about black boxes.<br />
In science we want to increase the knowledge and find how does the world work. Using insufficiency described methods won't help. b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-87118162607234774642018-03-10T11:15:00.001+01:002019-01-10T18:04:30.323+01:00Functional enrichment methods and pathwaysFor some time I have been working on one topic. I am not sure if this is how it started but I fail to see other reasons. So I'll describe why I'm now working with gene sets collections.<br />
<br />
<h4>
The trigger</h4>
<br />
I usually try to help others in <a href="http://www.biostars.org/">Biostars</a>, <a href="http://www.support.bioconductor.org/">Bioconductor</a>, and in the StackExchange network (specially in <a href="http://www.bioinformatics.stackexchange.com/">Bioinformatics</a>). On one of these sites I was trying to help some person, and in one of the <a href="https://bioinformatics.stackexchange.com/questions/844/how-can-i-find-the-relevant-pathway-map-from-gene-gene-or-protein-protein-intera#comment1508_844">comments</a> ( <span class="comment-date" dir="ltr"><a class="comment-link" href="https://bioinformatics.stackexchange.com/questions/844/how-can-i-find-the-relevant-pathway-map-from-gene-gene-or-protein-protein-intera#comment1508_844"><span class="relativetime-clean" title="2017-06-21 06:37:28Z">Jun 21 '17 </span></a>) </span>it says:<br />
<blockquote class="tr_bq">
<span class="comments">You don't build pathway maps from bioinformatics data, you build them from wet-lab experiments.</span></blockquote>
And I was : "<b>Why not?</b> We already know (kind of) the number of genes, and we have an idea or the number of metabolites in a cell. We have many data, why can't we build pathways?" But I did a brief literature search and I couldn't find anything (if there is something let me know in the comments).<br />
<h4>
</h4>
<h4>
The background</h4>
<br />
Let me explain why this comment got me puzzled: in my work I am usually asked what is the relevance of the lists of genes? <b>What are these genes doing</b>? My first reaction is using some of those wonderful tools of functional enrichment. Most (all?) of these tools use three methods:<br />
<ul>
<li>over representation analysis (ORA), </li>
<li>functional class scoring (FCS), and </li>
<li>pathway topology (PT) </li>
</ul>
Wonderfully explained and compared <a href="https://doi.org/10.1371/journal.pcbi.1002375">here</a>, and summarized in this figure:<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijpT71fz2Rok-5FKS_QoJ-VNH0lGneyZtVQ5Y2ncDZ3s72bZH_H6G-vCAxynBoOCEHNJ2gF78RowKWVoF2VNC6eSrvHX-eWweR2yQi9NyuPasAXYKxjSZOsKX1LvzJTxzVdVmVn0OmcdQT/s1600/journal.pcbi.1002375.g001.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="788" data-original-width="1600" height="314" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijpT71fz2Rok-5FKS_QoJ-VNH0lGneyZtVQ5Y2ncDZ3s72bZH_H6G-vCAxynBoOCEHNJ2gF78RowKWVoF2VNC6eSrvHX-eWweR2yQi9NyuPasAXYKxjSZOsKX1LvzJTxzVdVmVn0OmcdQT/s640/journal.pcbi.1002375.g001.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Functional pathways analysis methods. From: Ten Years of Pathway Analysis: Current Approaches and Outstanding Challenges, <i>Purvesh Khatri Marina Sirota Atul J. Butte </i></td></tr>
</tbody></table>
<br />
I lend towards using ORA methods with gene ontologies, with <a href="http://www.bioconductor.org/packages/topGO">topGO</a>, (See this <a href="http://b101nfo.blogspot.com/2017/03/gsea-in-bioconductor.html">other post</a>), and pathways from <a href="http://www.reactome.org/">Reactome</a>, with clusterProfiler or ReactomePA. And I also use <a href="http://www.bioconductor.org/packages/fgsea">fgsea</a> with the pathways or Reactome or from the list of <a href="http://software.broadinstitute.org/gsea/msigdb">gene sets</a> from the Broad Institute (NOT with gene ontologies, due to their relationship between them).<br />
<br />
As you can see all these methods tend to use a list of predefined genes associated with a category. But some time ago before that comment I <a href="https://support.bioconductor.org/p/92979/">found</a> that the data I (and I would say many other packages and users) relied upon it, was incorrect.<br />
<h4>
</h4>
<h4>
The adventure</h4>
<br />
Then I started to think about how do these pathways databases work. There are <a href="http://www.pathguide.org/">many</a>, and with some differences between them. "Which is the most reliable? Which one should I use? Which is most up to date"<br />
<br />
I asked for advice when using those enrichment tools but they say "It is okay what you already do, you can also use <a href="https://www.qiagenbioinformatics.com/products/ingenuity-pathway-analysis/">IPA</a>". We got interesting results. But I was unsure of my methods looked for some comparisons between databases and I couldn't find them.<br />
<br />
I realized, that comparing those databases is not trivial. They use different schemes, naming conventions, has different aims... so I thought, "That's why I can't find comparisons, it is too hard to do it." Although KEGG and REACTOME are the most established, I couldn't find a way to compare the pathways and the databases to select the most accurate one. <br />
<br />
Some time later (in December 2017) when I was at a symposium presenting <a href="http://www.bioconductor.org/packages/BioCor">BioCor</a> a friend asked me if there was some established pathway databases and if the software in BioCor handled approximations and errors. My poor answer was:<br />
<br />
<blockquote class="tr_bq">
No, it takes garbage in, and garbage out. There are too many differences between databases</blockquote>
<br />
But then I realized that the information that I use from those databases is not if there is a physical connection between two different proteins or the type of connection they have, like that a protein negatively regulates another. I just use the <b>list</b> of proteins. I would only need that information if I used TP methods (and even then depending on which method I wouldn't need to know more than the list of genes that are in a pathway) .<br />
<br />
So if I only use the list of genes or proteins the pathways database are similar to this extend and should be able to analyze that aspect of the database. I took some more time digging for comparisons of pathways but all I could find are how have they evolved, or improved from previous versions. I couldn't find a method to compare the databases by looking at the list of genes in a pathway. (If I overlooked some studies, please let me know)<br />
<br />
After I started working in a package to analyse those databases I found (27/02/2018) <a href="http://dx.plos.org/10.1371/journal.pcbi.1002240">this</a> work explaining that a gene set can be deemed as related to a trait but that the question is about if:<br />
<blockquote class="tr_bq">
it is more related to survival than random sets of genes.</blockquote>
So besides to compare databases, I (we) would need methods to compare pathways against random sets of genes. See this figure:<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhq2WoVVcwcGap24-a4MIaSYwj91vAGW5Mc3t6d0_N-cYmeMJgbBxoHHceeahdfTTqcvxoAy5efvLB_t1JOJ6pnDitnwyhZSTIDaT5c4iF3gbpUC4xVRxDOJ8GE8E4jq-496od0NlQ4Zcgz/s1600/journal.pcbi.1002240.g001.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="723" data-original-width="890" height="323" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhq2WoVVcwcGap24-a4MIaSYwj91vAGW5Mc3t6d0_N-cYmeMJgbBxoHHceeahdfTTqcvxoAy5efvLB_t1JOJ6pnDitnwyhZSTIDaT5c4iF3gbpUC4xVRxDOJ8GE8E4jq-496od0NlQ4Zcgz/s400/journal.pcbi.1002240.g001.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Modified from Figure 1 from <br />
<div style="-qt-block-indent: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;">
Most random gene expression signatures are significantly associated with breast cancer outcome</div>
</td></tr>
</tbody></table>
Are pathways random sets of genes or are they really non randomly selected? This is the only study I could find that instead of focusing in the methods focus on the data used for those methods. It presents the idea that we should test against random sets of genes. So we should also be able to generate them, but this made me think about if there is some "hidden" information in the databases, if the relationships between genes follow some kind of distribution of pattern. <br />
<h4>
</h4>
<h4>
The outcome </h4>
<br />
So I am now creating a <a href="http://www.github.com/llrs/GSEAdv">package</a> with methods to compare databases, create random gene sets and learn more from those lists of genes about the relationship between them. It is still on the early phase but comments and feedback are welcomed. <br />
<br />
<br />b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-36352533721791235542017-10-28T16:16:00.005+02:002022-07-06T10:15:06.606+02:00RISK cohortSince some time I am working with Crohn's Disease. One of the problems with the disease is that it is not known what happens. People has found associations with microorganisms, but the relationship between those microorganisms and the patient is still unknown. Also the risk factors for complications is largely unknown.<br />
<br />
This post follows up the use of a patient cohort data enrolled for identifying the risk factors of complications and health-care costs in pediatric and adult onset Crohn’s disease. Where we can see some usage of the data and the problems of unclear descriptions when using the same data.<br />
<br />
<h4>
Articles describing the RISK cohort</h4>
The first mention to the RISK cohort I could found is in <a href="http://www.sciencedirect.com/science/article/pii/S0016508513015011" target="_blank">this article</a> [1] where they describe a cohort as:<br />
<blockquote class="tr_bq">
an observational research program that enrolled patients younger than age 17 diagnosed with in flammatory (nonpenetrating, nonstricturing) CD from 2008 through 2012 at 28 pediatric gastroenterology centers in North America.</blockquote>
In that article the cohort had 552 patients at 2014. It doesn't provide where to find the data. In a later <a href="http://www.sciencedirect.com/science/article/pii/S0140673617306347" target="_blank">study</a> of 2017 it is described as a previous report [2]. It states that there are 1813 patients enrolled from which 913 had diagnosed with Crohn’s disease, with
complete information on disease location, without complications at diagnosis, and attend the follow-up visits. (See <a href="http://www.sciencedirect.com/science/article/pii/S0140673617306347" target="_blank">this comment</a> for some criticism on the mentioned article, and this <a href="http://www.sciencedirect.com/science/article/pii/S0140673617321578" target="_blank">other comment</a> about the composition of the cohort [3,4].)<br />
<br />
One <a href="https://www.nature.com/articles/ng.3947" target="_blank">article</a> that uses these data describe it on the first figure [5]. As
you can see on that figure the RISK cohort, according to this article, has
322 samples. In the body of the article the reference of the origin of
the data as following <a href="https://www.jci.org/articles/view/75436">article</a> [6]. Where the cohort is described as:<br />
<blockquote class="tr_bq">
<span class="level-4">The RISK cohort.</span> Ileal biopsy samples and
associated clinical information were obtained from the RISK study, an
ongoing, prospective observational IBD inception cohort sponsored by the
Crohn’s and Colitis Foundation of America. 1,656 children and
adolescents younger than 17 years, newly diagnosed with IBD and non-IBD
Ctls, were enrolled at 28 North American pediatric gastroenterology
centers between 2008 and 2012. All patients were required to undergo
baseline colonoscopy and confirmation of characteristic chronic active
colitis/ileitis by histology prior to diagnosis and treatment, with the
recording of findings in standardized fashion. Only subjects with a
confirmed persisting diagnosis of CD, UC, or Ctl during an average of 22
months follow-up to date were included in this analysis, which included
a representative subgroup of age-matched CD (<i>n</i> = 243), Ctl (<i>n</i> = 43), and disease Ctl UC (<i>n</i> = 73) patients.</blockquote>
Note
that between [2] and [6] there is some difference in the way to describe the data. It might seem that from those 1813 patients 1656 where younger than 17 years. But few seem to have a persisting diagnosed CD for 2 years, because the CD patients are reduced to 243. <br />
<br />
In <a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4059512/" target="_blank">another referenced article[7]</a> in [6] we can read about the RISK cohort that :<br />
<blockquote class="tr_bq">
A total of 447 children and adolescents (< 17 years) with newly
diagnosed CD and a control population composed of 221 subjects with
non-inflammatory conditions of the gastrointestinal tract were enrolled
to the RISK study in 28 participating pediatric gastroenterology centers
in North America between November 2008 and January 2012 </blockquote>
Which disagrees with the previous article about the total number of patients with less than 17 years with CD (226 instead of 243) maybe because they used a more restrictive subset of the cohort in the average time of follow up.<br />
<br />
A <a href="https://www.nature.com/ng/journal/v49/n10/full/ng.3936.html" target="_blank">different study</a>[8] referenced [2] and [6, 7] and describes the cohort as:<br />
<blockquote class="tr_bq">
The RISK study is an observational prospective cohort study that aims to
develop risk models for predicting complicated course in children with
Crohn's disease. From 2008 to 2012, the RISK study recruited more than
1,800 treatment-naive patients with a suspected diagnosis of Crohn's
disease at 28 pediatric gastroenterology centers in North America.</blockquote>
However they use 245 samples with ileal CD, but 35 lacked gut inflammation and were classified as non-IBD controls. Remaining 210 selected individuals showed persisting Crohn's disease and remained in complication-free B1 status for at least 90 d from the time of initial diagnosis. After 3 years of follow-up, 27 had a complicated disease course with progressions to further states B2 or B3.<br />
<br />
I can't understand how from those 1656 patients described in [6] it end up
with 322 patients in [7] instead of 243 patients with Crohn disease as in [6]. Also, it is not clear how in [6] we have 243 patients while the origin of data seems to be [7] where only 226 are described. And from [8] we learn that 245 had ileal CD which could mean that all the patients described in [6] and [7] could be from ileal samples. Furthermore, there isn't a reference between [6-7] and [2], which could mean that they are different cohort of patients despite being from the same (?) 28 centers in North America and being enrolled in the same time (November 2008 and January 2012). As this is unlikely, there is a lack of description on how they processed the same cohort of patients.<br />
<br />
This doubts drifted my interest to find the actual data where all these articles are based on, totally or partially.<br />
<h4>
Availability of the RISK cohort </h4>
<br />
The first article describing the RISK study doesn't describe a location where to find the data, neither the more recent article [2].<br />
<br />
Interestingly, Peters <i>et al.</i> ([5]) despite providing links to other datasets used, they don't provide a link or a reference were to find the RISK cohort. Indicating perhaps that it is not freely available or that there are other problems providing the data to the scientific community. <br />
<br />
Haberman <i>et al.</i> ([6]) link to a repository in the <a href="https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE57945">Gene Expression Omnibus</a> GSE57945. However in that dataset instead of the total 359 samples selected, there are
322 samples listed which match the total number of samples described in
[5] but does not match the total number of
samples selected in the original study of the cohort [2] nor their own total number of samples.<br />
<br />
Gevers, <i>et al.</i> ([7]) only provide references about the 16S projects not about the RISK RNA-seq expression data used. <br />
<i></i><br />
<br />
Marigorta <i>et al.</i> in [8] provide a link to another data set in the Gene Expression Ominbus, the <a href="https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE93624" target="_blank">GSE93624</a> data set, which has "210 treatment-naïve patients of pediatric Crohn's disease
and 35 non-IBD controls from the RISK study."<br />
<br />
From the original 913 patients with Crohn's disease at most 532 samples are made public, if the IDs of the patients in those two datasets are not the same. The GSE57945 was uploaded on 2014 but last updated on 2017 and provide more information than the GSE93624. I couldn't find a way to make sure if the same patient has samples in both datasets. <br />
<h4>
Conclusion</h4>
I don't know where I can find the whole RISK cohort.
Maybe more description of the process used with the datasets would be
helpful to clarify what is the RISK cohort. It is clear that the
GSE93624 and the GSE57945 data sets are both involved in that cohort but lack of the whole data set hinders replicability. <br />
<br />
<b>Update 24/01/2018: </b><br />
Found a web page of the RISK cohort <a href="https://prokiids.com/RISK_Public.html">here</a>, describing up to 2013 the state of the project.<br />
<br />
<b>Update 30/05/2018:</b><br />
Found another article [9] referring to RISK cohort, where 254 samples are described as having RNA-seq and only 158 of those has matching 16S data. BTW in this study there is a link to where to find the 16S data in <a href="https://qiita.ucsd.edu/">Qiita</a>, study 1939.<br />
<br />
<b>Update 13/06/2019 :</b><br />
Found another <a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6318335/" target="_blank">article</a>[10] referring to the RISK cohort which links to a <a href="https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE117993" target="_blank">GSE</a> (GSE117993) with RNAseq data from 190 samples (55 non-IBD controls, 43 UC patients, and 92 CD patients with rectal inflammation)<div><br /></div><div><b>Update 17/11/2021:</b></div><div>Found another article[11] describing it as having 441 ileal samples (184 control and 245 CD) and 218 stool samples. Although on the text they mention that RISK has over 700 patients and ∼30,000 mean number of reads per sample. It doesn't have a link to any GSE project or data repository.</div><div><br /></div><div><b>Update 23/03/2022:</b></div><div>New article using the RISK cohort [12], were they "reduced this data to 773 biopsy samples that were either controls or CD patients and ≤ 18 years old".</div><div>It links to <a href="https://www.ncbi.nlm.nih.gov/bioproject?term=PRJEB13679" target="_blank">PRJEB13679</a> which has Gevers's [7] as linked publication. According to <a href="https://trace.ncbi.nlm.nih.gov/Traces/sra/?study=ERP015241">SRA</a> the data was uploaded on 2019-09-05 (which would mean 5 years later than the first publication and 1 year later than the publication where it is referenced). It was registered on 26-Apr-2016, two years later than the initial publications.</div><div> </div><div><b>Update 06/07/2022</b>:</div><div><span style="font-family: inherit;"><span dir="ltr" role="presentation" style="font-size: 15.5825px; left: 67.5022px; top: 445.744px; transform: scaleX(0.920553);">On a new article [13] the RISK cohort is referenced to the project <a href="https://www.ncbi.nlm.nih.gov/bioproject/237362">PRJNA237362</a>. Which dates from </span> 2014-02-05. It only has microbiome data (in the article they say it is from stools) which was uploaded on </span> 2015-11-04. But I couldn't find information about the phenotype of the samples. In the article it is mentioned that it has 23 CD and 5 control samples and refers back to [7].<span style="font-family: inherit;"></span></div><div>
<h4>References</h4>
<ol>
<li>Walters, Thomas D., et al. "Increased effectiveness of early therapy
with anti-tumor necrosis factor-α vs an immunomodulator in children with
Crohn's disease." <i>Gastroenterology</i> 146.2 (2014): 383-391. </li>
<li>Kugathasan, Subra, et al. "Prediction
of complicated disease course for children newly diagnosed with Crohn's
disease: a multicentre inception cohort study." <i>The Lancet</i> 389.10080 (2017): 1710-1718. </li>
<li>Arijs, Ingrid, and Isabelle Cleynen. "RISK stratification in paediatric Crohn's disease." <i>The Lancet</i> 389.10080 (2017): 1672-1674.</li>
<li> Kugathasan, Subra, Lee A. Denson, and Jeffrey S. Hyams. "Exclusive and
partial enteral nutrition for Crohn's disease–Authors' reply." <i>The Lancet</i> 390.10101 (2017): 1486-1487.</li>
<li>Peters, Lauren A., et al. "A functional genomics predictive network model identifies regulators of inflammatory bowel disease." <i>Nature genetics</i> 49.10 (2017): 1437.</li>
<li><span itemprop="author" itemscope="itemscope" itemtype="http://schema.org/Person"><span itemprop="name">Haberman, Y.</span></span> <i>et al.</i> <cite>Pediatric Crohn disease patients exhibit specific ileal transcriptome and microbiome signature</cite>. <i>J. Clin. Invest.</i> <b>124</b>, 3617–3633 (2014).</li>
<li>Gevers, Dirk, et al. "The treatment-naive microbiome in new-onset Crohn’s disease." <i>Cell host & microbe</i> 15.3 (2014): 382-392.</li>
<li>Marigorta, Urko M., et al. "Transcriptional risk scores link GWAS to eQTLs and predict complications in Crohn's disease." <i>Nature genetics</i> 49.10 (2017): 1517. </li>
<li>Tang, Mei San, et al. "Integrated Analysis of Biopsies from Inflammatory
Bowel Disease Patients Identifies SAA1 as a Link Between Mucosal
Microbes with TH17 and TH22 Cells." <i>Inflammatory bowel diseases</i> 23.9 (2017): 1544-1554. </li>
<li>Haberman, Yael, et al. "Ulcerative colitis mucosal transcriptomes reveal
mitochondriopathy and personalized mechanisms underlying disease
severity and treatment response." <i>Nature communications</i> 10.1 (2019): 38. </li><li>Wang, Feng, et al. "Detecting microbial dysbiosis associated with pediatric Crohn disease despite the high variability of the gut microbiota." <i>Cell reports</i> 14.4 (2016): 945-955.</li><li>Douglas, Gavin M., et al. "Multi-omics differentially classify disease state and treatment outcome in pediatric Crohn’s disease." Microbiome 6.1 (2018): 1-12.</li><li><span dir="ltr" role="presentation" style="font-family: sans-serif; font-size: 15.5825px; left: 67.5022px; top: 445.744px; transform: scaleX(0.920553);">Reiter, Taylor E. et al "Meta-analysis of metagenomes via machine learning and assembly graphs reveals strain switches in Crohn’s disease" bioRxiv </span><span class="highwire-citation-authors"><span class="highwire-citation-author hw-author-orcid-logo-wrapper" data-delta="11"><span class="nlm-surname"></span></span></span>
<div class="highwire-cite-metadata"><span class="highwire-cite-metadata-doi highwire-cite-metadata"><span class="label">doi:</span> https://doi.org/10.1101/2022.06.30.498290 </span></div> </li>
</ol>
<br />
</div>b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-79356016161820055132017-05-19T11:18:00.001+02:002017-05-19T11:19:40.703+02:00Bioconductor histories with git-svn If you are developing a software you might be using a version control (If not do it :). Bioconductor until 05/2017 is using svn. However it is migrating to git, meanwhile a hybrid system is provided, where one submits the project through GitHub using git control version system and internally it uses svn. Here are some experiences developing in for Bioconductor in <a href="http://bioconductor.org/developers/how-to/git-mirrors/">this configuration</a>.<br />
<br />
After following the recommendations of the configuration .git/config ends up with:<br />
<blockquote class="tr_bq">
<br />
[core]<br />
repositoryformatversion = 0<br />
filemode = true<br />
bare = false<br />
logallrefupdates = true<br />
[remote "origin"]<br />
url = https://github.com/llrs/BioCor.git<br />
fetch = +refs/heads/*:refs/remotes/origin/*<br />
[branch "master"]<br />
remote = origin<br />
merge = refs/heads/master<br />
[remote "bioc"]<br />
url = https://github.com/Bioconductor-mirror/BioCor.git<br />
fetch = +refs/heads/*:refs/remotes/bioc/*<br />
[svn-remote "devel"]<br />
url = https://hedgehog.fhcrc.org/bioconductor//trunk/madman/Rpacks/BioCor<br />
fetch = :refs/remotes/git-svn-devel<br />
[svn-remote "release-3.5"]<br />
url = https://hedgehog.fhcrc.org/bioconductor//branches/RELEASE_3_5/madman/Rpacks/BioCor<br />
fetch = :refs/remotes/git-svn-release-3.5<br />
[branch "release-3.5"]<br />
remote = bioc<br />
merge = refs/heads/release-3.5<br />
[branch "devel"]<br />
remote = bioc<br />
merge = refs/heads/master</blockquote>
<br />
This configuration creates a devel branch forked from Github Bioconductor's mirror, which is equivalent to the devel trunk in svn.<br />
However when I develop my package I do so in master branch which creates the hassle to bring (merge or cherry-pick) the changes (commits) from master to devel branch for later release on Bioconductor or for hot fix in a release-* branch.<br />
<br />
Also make sure to try if you have the permissions to write on the repository in Bioconductor <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-6758560438351262912017-03-31T16:25:00.000+02:002018-02-03T12:29:25.237+01:00GSEA in Bioconductor <br />
Gene Set Enrichment Analysis is a test thought to find if the position of a group along a list implies some difference. The most know method is the one maintained by the <a href="http://software.broadinstitute.org/gsea/index.jsp" target="">Broad Institute</a>. As it was the first widely used in biology and holds several collection of gene sets. A gene set is a collection of genes related, by either a function or an experiment, it is as fuzzy described as a pathway. <br />
<br />
In <a href="http://bioconductor.org/" target="">Bioconductor</a> there is the under used tool of <a href="https://www.bioconductor.org/packages/release/BiocViews.html" target="">BiocViews</a>, a topic for package classificacion. We can find a category for GSEAs under <a href="https://www.bioconductor.org/packages/release/BiocViews.html#___GeneSetEnrichment" target="">Software>BiologicalQuestion>GeneSetEnrichment</a>. <br />
<br />
This category list 74 packages at the time of writing, which provide function for Gene Set Enrichment Analysis. It will be too long (and too hard for me) to describe all the packages in that category. However, it doesn't include all the packages that perform gene set enrichment. <br />
<br />
The first package for GSEA in Bioconductor one should look is <a href="https://www.bioconductor.org/packages/release/bioc/html/GSEABase.html" target="">GSEABase</a> which provides with tools for reading files from the Broad Institute and translating the Ids of those gene sets.<br />
<br />
There are several types of enrichment analysis (EA or simply enrichment), which can be classified by the null hypothesis, between if it is self contained or not, if it uses phenotype, so if it is supervised or unsupervised, and depending on the unit of the enrichment score, if it is for each sample or for all the samples.<br />
<br />
And we could further classify them by if they take into account the relationship between the genes, and if they take into account the relationship between the gene sets.<br />
<br />
I would like to highlight some packages from Bioconductor performing GSEA: <a href="https://www.bioconductor.org/packages/release/bioc/html/limma.html">limma</a>, <a href="https://www.bioconductor.org/packages/release/bioc/html/GSAR.html">GSAR</a>, <a href="https://www.bioconductor.org/packages/release/bioc/html/GSVA.html">GSVA</a>, <a href="https://www.bioconductor.org/packages/release/bioc/html/piano.html">piano</a>, <a href="https://www.bioconductor.org/packages/release/bioc/html/fgsea.html">fgsea</a>, and <a href="https://www.bioconductor.org/packages/release/bioc/html/topGO.html">topGO</a>.<br />
<br /><ul>
<li>From <b>limma</b> I would like to highlight that some of the functions it provides for GSEA are corrected by correlation of expression of the genes in the gene set. The functions are mroast, roast, fry, camera and romer. barcodeplot is the function for plotting the enrichment in that package.</li>
</ul>
<br /><ul>
<li>From <b>GSAR</b> package is interesting because most of the methods to do GSEA are graph/network based, interesting functions: WWtest, KStest, MDtest, RKStest, RMDtest, AggrFtest and GSNCAtest. Also the function plotMST2.pathway which allows to visualize network of the Gene sets is interesting.</li>
</ul>
<br /><ul>
<li>From <b>GSVA</b> package is interesting the gsva function, which allows to use several methods as zScore, PLAGE and it's own method gsva.</li>
</ul>
<br /><ul>
<li><b>piano</b> package has implemented in R the same algorithm as the one in the Broad Institute and several other methods in the function runGSA.</li>
</ul>
<br /><ul>
<li>From <b>fgsea</b> package I highlight the speed of fgsea function and the plotEnrichment function to represent it. </li>
</ul>
<br /><ul>
<li>From <b>topGO</b> is the only package that takes advantatge of the structure of <a href="http://geneontology.org/">gene ontologies</a> but it has several bugs (I am trying to improve it <a href="http://github.com/llrs/topGO">here</a>). Still, the theory behind helps to find the best and accurate GO terms. </li>
</ul>
<br />
<br />
<br />
Other interesting packages are GAGE, anamiR, PGSEA, EGSEA, GSEAlm, GOseq, SigPathway, ReactomePA, Meshes, EWCE. <br />
<br />b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-53052863511421766082017-03-19T11:21:00.000+01:002017-03-19T11:21:47.862+01:00BioCor: My first package in Bioconductor<br />
Yesterday I received an amazing email:<br />
<br />
<h3 class="hP" id=":e6" tabindex="-1">
<span style="font-size: x-large;">Congratulations, BioCor has been added to Bioconductor!</span></h3>
<br />
Yes, I had submitted a package for the <a href="http://bioconductor.org/" target="_blank">Bioconductor</a> project at the beginning of the week.<br />
<br />
The package calculates similarities between pathways, genes and clusters of genes based on their pathways. A pathway is a group of functionally related proteins, thus this similarities calculates the functional similarity of the pathway or genes in question.<br />
<br />
<br />
If anyone is curious what the email had this was in the body (I didn't know what to expect when I knew that it would be accepted):<br />
<br />
<br />
<blockquote class="tr_bq">
Hi Lluís,<br />
<br />
Congratulations, BioCor has been added to Bioconductor!<br />
Currently, the definitive location for your Bioconductor package is<br />
in our SVN repository. The following information is to help you in<br />
your role as a package maintainer. You’ll need the following<br />
credentials to maintain your package:<br />
<br />
Subversion user ID: myuser<br />
Password: mypassword<br />
<br />
Package ‘landing pages’<br />
<br />
Every package in Bioconductor gets its own landing page. Contents<br />
from your DESCRIPTION file are pulled out to populate this page. Your<br />
package’s permanent URL is<br />
<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=https://bioconductor.org/packages/BioCor/&source=gmail&ust=1490003834922000&usg=AFQjCNGDNgccziwUBN7LNA1uz4El4Bv4UA" href="https://bioconductor.org/packages/BioCor/" rel="noreferrer" target="_blank">https://bioconductor.org/<wbr></wbr>packages/BioCor/</a><br />
<br />
This URL will redirect to the release landing page of your package<br />
(and until it’s released, the devel landing page); this is the URL<br />
that should be used (in publications, etc.) to refer to your package.<br />
You can also refer specifically to the devel, release, or specific<br />
numbered version of Bioconductor:<br />
<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=https://bioconductor.org/packages/devel/BioCor/&source=gmail&ust=1490003834922000&usg=AFQjCNHVzB0FkO0VzbMKmWwAziaIUvHcww" href="https://bioconductor.org/packages/devel/BioCor/" rel="noreferrer" target="_blank">https://bioconductor.org/<wbr></wbr>packages/devel/BioCor/</a><br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=https://bioconductor.org/packages/release/BioCor/&source=gmail&ust=1490003834922000&usg=AFQjCNGCm-5_aOCHnhCVD1Mk-jCVFt44lQ" href="https://bioconductor.org/packages/release/BioCor/" rel="noreferrer" target="_blank">https://bioconductor.org/<wbr></wbr>packages/release/BioCor/</a><br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=https://bioconductor.org/packages/3.5/BioCor/&source=gmail&ust=1490003834923000&usg=AFQjCNE1JM6xiSTE2zvCaq2f5vYPX-zfvg" href="https://bioconductor.org/packages/3.5/BioCor/" rel="noreferrer" target="_blank">https://bioconductor.org/<wbr></wbr>packages/3.5/BioCor/</a><br />
<br />
Maintaining your package<br />
<br />
See<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/developers/how-to/source-control%23experiment-data-packages&source=gmail&ust=1490003834923000&usg=AFQjCNHzuMK7uUpKkkOZqyGS-UfG5RUiyA" href="http://bioconductor.org/developers/how-to/source-control#experiment-data-packages" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>developers/how-to/source-<wbr></wbr>control#experiment-data-<wbr></wbr>packages</a><br />
for special instructions relating to ExperimentData package<br />
maintenance.<br />
<br />
Bioconductor currently maintains software packages in ‘release’ and<br />
‘devel’ branches of a subversion (svn) repository.<br />
<br />
The release branch is meant for end-users. A new release branch is<br />
created once very 6 months, in April and October. At the release, the<br />
current devel version of your package becomes the release<br />
version. Only ‘bug fixes’ are made to the release branch. Since your<br />
package has not gone through a release cycle, you do not yet have a<br />
release branch — your package is only available to users of Bioc<br />
‘devel’.<br />
<br />
The devel branch is where new packages are added, and where new<br />
features are added to existing packages. Your package has been added<br />
to the devel branch, and is available immediately to those<br />
Bioconductor users who have chosen to ‘use devel’<br />
<br />
Make any changes to the devel branch, and watch the release schedule<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/developers/release-schedule/&source=gmail&ust=1490003834923000&usg=AFQjCNEJZZwNX3_NTW40hIeW6Uxw0HctgQ" href="http://bioconductor.org/developers/release-schedule/" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>developers/release-schedule/</a> for details of<br />
the next release.<br />
<br />
At the next release, your package code in the devel branch will be<br />
become the release version of your package. The release version number<br />
will be changed to 1.0.0. The code in the devel branch will continue,<br />
but with version 1.1.0. If necessary, you’ll continue adding features<br />
or updating your package in the devel branch, creating versions 1.1.1,<br />
1.1.2, …; you’ll port bug fixes (NOT new features, or any change to<br />
the ‘API’ seen by users!) to the release branch, creating versions<br />
1.0.1, 1.0.2, …<br />
<br />
This process will repeat at the next release, where the version of<br />
your package available in devel will become version 1.2.0, and the<br />
devel branch will continue with version 1.3.0.<br />
<br />
Subversion<br />
<br />
Bioconductor packages are maintained under Subversion source<br />
control. Use Subversion (or git, described below) to update your<br />
package; see our short svn guide:<br />
<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/developers/how-to/source-control/&source=gmail&ust=1490003834924000&usg=AFQjCNEUSg1Cq_SegCvNS2GeuRB9DxeS3Q" href="http://bioconductor.org/developers/how-to/source-control/" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>developers/how-to/source-<wbr></wbr>control/</a><br />
<br />
Your subversion account credentials are at the top of this email, or<br />
are already known to you. The credentials give you read access to the<br />
whole Bioconductor repository and WRITE permissions to the devel<br />
(and eventually release) version of your package.<br />
<br />
To update your package in the devel branch, you need to do the<br />
following steps:<br />
<br />
a) Install subversion(svn) on your machine, if it is not already installed.<br />
<br />
b) Use the following command to checkout your packages files from the<br />
Bioconductor subversion repository.<br />
<br />
svn co --username myuser --password XXXXXXXXX<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/BioCor&source=gmail&ust=1490003834924000&usg=AFQjCNEW6xkOPQElFmdkh2CZTjoYQh8DUw" href="https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/BioCor" rel="noreferrer" target="_blank">https://hedgehog.fhcrc.org/<wbr></wbr>bioconductor/trunk/madman/<wbr></wbr>Rpacks/BioCor</a><br />
<br />
c) Make the necessary changes to your package.<br />
<br />
d) Bump the version from x.y.z to x.y.(z+1) in your package’s<br />
DESCRIPTION file. If the version is not properly changed your<br />
changes will not be made available in the public repository.<br />
<br />
e) Build your package tar ball<br />
<br />
R CMD build BioCor<br />
<br />
f) Check that the changes have produced a package consistent with R’s<br />
check facility<br />
<br />
R CMD check BioCor_x.y.(z+1).tar.gz<br />
<br />
g) Fix any Warnings or Errors from step (e) and (f)<br />
<br />
h) Check the updated source code in to Subversion<br />
<br />
svn ci BioCor<br />
<br />
g) Check the build report next day (see point 3 for details)<br />
<br />
Please let me know if you have any questions or issues with your SVN<br />
access.<br />
<br />
Remember, all new features and bug fixes are made to devel branch of<br />
your package; only tested bug fixes should be ported to the release<br />
branch. When testing your changes, be sure to use the ‘devel’ version<br />
of Bioconductor (<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/developers/how-to/useDevel&source=gmail&ust=1490003834925000&usg=AFQjCNFxpdwfEV_je1ujJECWyPWS5AoInA" href="http://bioconductor.org/developers/how-to/useDevel" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>developers/how-to/useDevel</a>)<br />
and the appropriate version of R.<br />
<br />
Git and github mirrors<br />
<br />
If you prefer to use Git and / or GitHub instead of Subversion, you<br />
can use the Bioconductor Git mirrors which are documented at<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/developers/how-to/git-mirror/&source=gmail&ust=1490003834925000&usg=AFQjCNGSGkutBYGsOc5pK-vK7qpgmnGMhA" href="http://bioconductor.org/developers/how-to/git-mirror/" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>developers/how-to/git-mirror/</a><br />
<br />
Build report<br />
<br />
When you make a change to the devel branch of your package, please<br />
remember to bump the version of your package in the DESCRIPTION FILE.<br />
Everyday at around 5pm PST, the build system takes a snapshot of all<br />
the packages inside Bioconductor and then the next day after 12 noon<br />
PST <a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/checkResults/&source=gmail&ust=1490003834925000&usg=AFQjCNGfWVpxVL_U01FxEcj_7ClC3TFX4Q" href="http://bioconductor.org/checkResults/" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>checkResults/</a> is created containing the<br />
output of R CMD build and check on all platforms for each package.<br />
<br />
When reading the above, please pay attention to the date displayed<br />
next to - “Snapshot Date:” and “This page was generated on”. Please<br />
keep an eye on the build/check daily reports for the Bioconductor<br />
devel packages: <a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/checkResults/&source=gmail&ust=1490003834926000&usg=AFQjCNHR3tm874-V-MAiU5ZO3hedV5vBjA" href="http://bioconductor.org/checkResults/" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>checkResults/</a> and promptly<br />
address any warnings or errors from your packages build report.<br />
<br />
RSS feeds:<br />
<br />
You can find the RSS feed for software packages at<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/rss/build/packages/BioCor.rss&source=gmail&ust=1490003834926000&usg=AFQjCNF-6HPoXXWwGyt2ou6byX1as5uVow" href="http://bioconductor.org/rss/build/packages/BioCor.rss" rel="noreferrer" target="_blank">http://bioconductor.org/rss/<wbr></wbr>build/packages/BioCor.rss</a><br />
<br />
Using the support site and bioc-devel mailing list<br />
<br />
Please be sure that you have registered on the support site<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=https://support.bioconductor.org/accounts/login/&source=gmail&ust=1490003834926000&usg=AFQjCNE38IZNzjXOOzomxCSbrepWFS1Kag" href="https://support.bioconductor.org/accounts/login/" rel="noreferrer" target="_blank">https://support.bioconductor.<wbr></wbr>org/accounts/login/</a>. Subscribe to the tag<br />
corresponding to your package by editing your user profile to include<br />
the package name in the ‘My Tags’ field. This way, you will be<br />
notified when someone is asking a question about your package. Please<br />
respond promptly to bug reports or user questions on the support site.<br />
We recommend that you ‘follow’ tags that match your own package (such<br />
as your package name) so that<br />
<br />
Please maintain your subscription to the Bioc-devel mailing, so that<br />
you are aware of Bioconductor project and other developments,<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/help/support/%23bioc-devel&source=gmail&ust=1490003834926000&usg=AFQjCNE86HDHkuvz8M-uLl3CXMBz6-SD0A" href="http://bioconductor.org/help/support/#bioc-devel" rel="noreferrer" target="_blank">http://bioconductor.org/help/<wbr></wbr>support/#bioc-devel</a>. Also, after your<br />
package has passed the build report’s CHECK test for the first time,<br />
you may send a note to Bioc-devel to announce its public availability<br />
(with a short description) so other developers are aware of it.<br />
<br />
Updating maintainer status<br />
<br />
If for some reason, your email address changes, please update the<br />
maintainer field in your DESCRIPTION file. We may need to reach you if<br />
there are issues building your package (this could happen as a result<br />
of changes to R or to packages you depend on). If we are unable to<br />
contact you for a period of time, we may be forced to remove your<br />
package from Bioconductor.<br />
<br />
If you want to add a new maintainer or transfer responsibility to<br />
someone else, please email us at <a href="mailto:packages@bioconductor.org">packages@bioconductor.org</a> and clearly<br />
state the new maintainers name, email address and CC them on the<br />
email.<br />
<br />
If you no longer want to maintain your package, please let us know and<br />
we will remove it from Bioconductor, or (with your permission) find<br />
a new maintainer for it. See<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/developers/package-end-of-life/&source=gmail&ust=1490003834927000&usg=AFQjCNHh5Tmz8TGudrNrrwb1-Md5ebnTcg" href="http://bioconductor.org/developers/package-end-of-life/" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>developers/package-end-of-<wbr></wbr>life/</a><br />
<br />
Helpful things to know about Bioconductor<br />
<br />
Developer resources: <a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/developers&source=gmail&ust=1490003834927000&usg=AFQjCNFYuCLBcnpIaZ1TMlnRyWfGxAEFig" href="http://bioconductor.org/developers" rel="noreferrer" target="_blank">http://bioconductor.org/<wbr></wbr>developers</a><br />
<br />
Bioconductor Newsletter: <a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/help/newsletters/&source=gmail&ust=1490003834927000&usg=AFQjCNFUuDz5Vg9gw9kxbp9J2qIsfFhE5w" href="http://bioconductor.org/help/newsletters/" rel="noreferrer" target="_blank">http://bioconductor.org/help/<wbr></wbr>newsletters/</a><br />
<br />
Upcoming Courses: <a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/help/events/&source=gmail&ust=1490003834927000&usg=AFQjCNGu7tL953eBfmlRKsY3MmzX3gGCEw" href="http://bioconductor.org/help/events/" rel="noreferrer" target="_blank">http://bioconductor.org/help/<wbr></wbr>events/</a><br />
<br />
Course Material: <a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=http://bioconductor.org/help/course-materials/&source=gmail&ust=1490003834927000&usg=AFQjCNGgora_oB7M5e1pNOWbZ3O4bp4zIw" href="http://bioconductor.org/help/course-materials/" rel="noreferrer" target="_blank">http://bioconductor.org/help/<wbr></wbr>course-materials/</a><br />
<br />
Twitter: <a data-saferedirecturl="https://www.google.com/url?hl=en-GB&q=https://twitter.com/Bioconductor&source=gmail&ust=1490003834927000&usg=AFQjCNFdpC0i1mvQqGTRFYCceiT0_asTKw" href="https://twitter.com/Bioconductor" rel="noreferrer" target="_blank">https://twitter.com/<wbr></wbr>Bioconductor</a><br />
<br />
Thank you for contributing to the Bioconductor project!<br />
<br />
Martin Morgan</blockquote>
<br />
Many thanks for accepting the package! I hope you'll find it useful.b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-73116378123096487892016-11-02T16:24:00.000+01:002016-11-02T16:24:37.822+01:00ParalelizationAfter some trouble I must say that in public:<br />
<br />
If you have a big task which takes many time and decide to parallelize. DO NOT PARALLELIZE EVERYHING! Otherwise you will have a parallel task inside another parallel task!<br />
<br />
Just a friendly reminder :Db101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-67976129802100914062016-10-23T12:32:00.002+02:002016-10-23T12:32:56.963+02:00Renaming the blogI am renaming the blog, as I talk very little about biotech and a lot more of bioinformatics :D You can check it yourself!b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-47881540864183244532016-07-23T16:38:00.000+02:002016-08-14T17:38:23.735+02:00Why does thyroid carcinoma affects more women than men?One of my projects for the master was to investigate using data of the <a href="http://cancergenome.nih.gov/" target="_blank">TCGA </a>project. We (my teammates and me) decided to use data of the thyroid. We aimed to discover the reasons why women suffer more thyroid carcinoma than men.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_VeYyH6VV_AQr_LpXbI9vqMnC7-MG4gVG2XvfW7nXXKUY9Mwyz2LqhyXxeUKtcnG1TwyZnlqCkavp86QTFpkKlXaKWCHE4s6JaLsg4hBkra991kiCJG3STGCnmEf2S1jpCv_a2hYDrsna/s1600/histogram_samples_sex.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="223" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_VeYyH6VV_AQr_LpXbI9vqMnC7-MG4gVG2XvfW7nXXKUY9Mwyz2LqhyXxeUKtcnG1TwyZnlqCkavp86QTFpkKlXaKWCHE4s6JaLsg4hBkra991kiCJG3STGCnmEf2S1jpCv_a2hYDrsna/s320/histogram_samples_sex.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Distribution of samples of the TCGA dataset from the thyroid, separated by sex</td></tr>
</tbody></table>
I don't want to repeat all the information on the report we did, you can find the work we did, you can find everything <b><a href="http://llrs.github.io/IEO/IEO_report.html" target="_blank">here</a></b>.<br />
<br />
The summary of the study is:<br />
<blockquote class="tr_bq">
Papillary Thyroid Carcinoma (PTC) is the most common type of thyroid cancer (Agrawal et al. 2014). It is more prevalent in women than men and its common diagnosis occurs between 25 and 65 years old (The Cancer Genome Atlas Accessed: 2016-06-1). The aim of our project is to study differentially expressed genes between tumor and normal samples taking into account whether there could be a gender effect on the tumorgenesis of PTC. Using data from the The Cancer Genome Atlas (Accessed: 2016-06-1) we have performed a differential expression analysis. Comparisons were made according to the patients gender and the disease state of the sample (tumor or normal) and revealed that Female-Normal samples have more up-regulated (over-expressed) genes respect to Female-Tumor samples as well as more than to Male-Tumor samples and Male-Normal samples. Functional enrichment performed with GO annotations suggested that there might be an impurity of the samples due to the presence of some paratiroides cells in them as well as DE genes belonging to lipid and cholesterol-associated pathways. To our knowledge, a thyroid cancer form leading to an hypothyroidism can result into a more agressive thyroid cancer due to the cholesterol and lipid accumulation in the cells (Beloribi-Djefaflia et al. 2016; Healthline Accessed: 2016-06-19). Therefore, the fact that there is a greater difference in under-expression of genes between Tumor-Female vs Normal-Female samples than the comparison Tumor-Male vs. Normal-Male samples might be the explanation why thyroid cancer is more prevalent in women than men. Nevertheless, further investigation must be done so our results should be treated with caution.</blockquote>
<br />
In case you want to do something similar or check the study, the report is with all the code used, you will only need the dataset you need to download from the <a href="https://gdc-portal.nci.nih.gov/projects/TCGA-THCA" target="_blank">website</a>. We started with a preprocessed data of fpkm in form of a ExpressionSet provided by our professor, but you should be able to create it.<br />
<br />
<br />
I just want to explain the way we used the package sva to find the surrogate variables between our two models:<br />
<br />
<br />
<br />
<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img alt="" src="data:image/png;base64,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" style="margin-left: auto; margin-right: auto;" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Models used in the analysis of the data, F = Female, M = Male, T = Tumor, N = Normal, I = Intercept, G = Gender, T = Type, Barcode identifies the patients as paired</td></tr>
</tbody></table>
<br />
In the alternative model we used the interaction of sex and status while on the null model we didn't, we just used the sex and the type of sample in the model. This models were chose to maximize the difference in the interaction between the sex and the tumor in order to see how does the tumor affect differently women than men.<br />
You kind find more on the complete article/report <a href="https://drive.google.com/file/d/0B3enV2pvJu3Sczd5ZWxBYUMyUk0/view?usp=sharing" target="_blank">here.</a> <br />
<br />
<span id="goog_1714992909"></span><span id="goog_1714992910"></span>b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-4730120716448532202016-03-22T10:22:00.001+01:002016-03-22T10:22:55.745+01:00Possibilities and scienceI must admit I was shocked when I heard it:<br />
<blockquote class="tr_bq">
If there is a possibility that doing this we can cure something is enough for me to do it.</blockquote>
That was what a friend said talking about modifying human germinal lines.<br />
<br />
A week later, discussing about transhumanism another friend told me that "Science will solve all problems".<br />
<br />
This two sentences were said some months ago but I still have them fixed and would like to write about them.<br />
<br />
First of all I follow a principle: <b>Just because we can do something we have not to do it.</b> As an example no one would give a friend with pine nuts if he/she is allergic to them. We don't do it because it is not good for him/her. The reasons why we do something are as important as why we don't do something. In this case (modifying human germinal lines) we have the possibility to gain the piece of knowledge to cure some big deseases (cancers, senescence, autoinmmune diseases...) but at the cost of losing the<b> common biological definition of our humanity</b>.<br />
<br />
For me modifying a human is not about the risks and benefits of doing but the reasons that lead to do that modification, if the reasons are bad, or weak we don't really gain anything, we don't solve a problem. At most we could suggest a new tool to do, but not solving a problem, and even on the pool of problems modifying the germinal line of humans won't solve many of the hardest problems of people: what should I do, and why should I do that, I am acting correctly, could I be better?b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-75242325276694648202016-01-20T10:58:00.000+01:002016-08-28T20:10:01.888+02:00Més enllà del màsterEscric aquesta entrada com a recopilatori de la informació sobre les beques un cop es compleixen requisits per inscriure's en un programa de doctorat.<br />
<br />
Els requisits per inscriure's en un programa de doctorat actualment amb els nous crèdits ECTS són:<br />
<br />
<ul>
<li>Disposar del títol de una carrera amb un mínim de 240 crèdits ECTS.</li>
<li>Haver aprovat 60 crèdits ECTS d'un màster (No implica haver-lo acabat, important en el cas dels màsters de dos anys)</li>
</ul>
<div>
Podem classificar les beques per tipus de entitat que les otorga:</div>
<div>
<ul>
<li>Ministeri</li>
<li>Conselleria</li>
<li>Universitats</li>
<li>Entitats financeres</li>
<li>Fundacions</li>
<li>Instituts</li>
<li>Altres</li>
</ul>
<div>
O a qui s'atorguen:</div>
</div>
<div>
<br /></div>
<div>
<ul>
<li>Projecte de recerca</li>
<li>Group de recerca</li>
<li>Persona física</li>
<li>Institució</li>
</ul>
<div>
Pel que sembla la única manera de saber quines són les opcions disponibles és mirar totes les pàgines que puguin tenir informació al respecte. Sí que hi ha una associació (<a href="http://precarios.org/Qui%C3%A9nes+somos">Federación de Jóvenes investigadores/Precarios</a>) que porta en un forum informació al respecte però no hi ha cap pàgina al respecte que ho faci automàticament. En el <a href="http://precarios.org/tiki-view_forum.php?forumId=102">forum</a> de la associació hi ha informació sobre les beques, i es van penjat la informació a mesura que va sortint. Pot ser un bon lloc per preguntar dubtes.</div>
<div>
<br /></div>
<div>
En la següent taula he classificat les beques en funció de com s'assignen:</div>
<div>
<br /></div>
<div>
<div class="nobrtable" style="align: center;">
<table border="2" bordercolor="#0033FF" cellpadding="3" cellspacing="3" center="" text-align:=""><caption>Classificació beques</caption> <tbody>
<tr><td colspan="2" rowspan="2" style="text-align: center;"></td><th colspan="7">Institució que atorga la beca</th></tr>
<tr 4px="" 5px="" color:="" padding-bottom:="" padding-top:="" white=""> <th>Estatal</th> <th>Comunitat autónoma</th> <th>Universitats/<br />
Departaments</th><th>Entitats financeres</th><th>Fundacions</th><th>Instituts</th><th>Altres</th></tr>
<tr class="alt"> <td rowspan="5"><span style="text-align: start;"><b>Beneficiari</b></span></td><td><b>Projecte de recerca</b></td> <td>FPI</td> <td></td><td></td><td>BBVA</td><td><a href="http://fundaciontatianapgb.org/" target="_blank">Tatiana Perez Guzman</a></td><td></td><td><a href="http://ec.europa.eu/research/mariecurieactions/index_en.htm" target="_blank">Marie-Curie</a></td> </tr>
<tr><td><b>Group de recerca</b></td> <td></td> <td></td><td>UPF: DCEXS</td><td></td><td><a href="http://www.fundacionareces.es/" target="_blank">Ramón Areces</a></td><td></td><td></td> </tr>
<tr class="alt"><td><b>Persona física</b></td> <td>FPU<br />
FGIN</td> <td><a href="http://agaur.gencat.cat/ca/beques-i-ajuts/convocatories-per-temes/Ajuts-per-a-tesis-doctorals-en-catala-TDCAT-2015?category=61680f2d-9295-11e5-a40e-005056924a59" target="_blank">TDCAT</a><br />
<a href="http://agaur.gencat.cat/ca/beques-i-ajuts/convocatories-per-temes/Ajuts-per-a-la-formacio-i-contractacio-de-personal-investigador-novell-FI-2016?category=61680f2d-9295-11e5-a40e-005056924a59" target="_blank">FI</a></td><td></td><td><a href="https://obrasocial.lacaixa.es/ambitos/becas/becasdeposgrado_es.html" target="_blank">La Caixa</a><br />
Santander</td><td><br /></td><td><a href="http://www.isciii.es/ISCIII/es/contenidos/fd-investigacion/fd-financiacion/fd-convocatorias-ayudas-accion-estrategica-salud/fd-seguimiento-cientifico-economico/seguimiento-ayudas-predoctorales-de-formacion-en-investigacion-en-salud.shtml">PFIS</a> </td><td>Boheringer</td> </tr>
<tr><td><b>Institució</b></td> <td>DI</td> <td><a href="http://doctoratsindustrials.gencat.cat/en" target="_blank">DI</a></td><td></td><td></td><td></td><td></td><td></td> </tr>
</tbody></table>
<br />
Si trobeu més informació o hi ha algo desactualitzat estaré encantat de rectificar la informació.<br />
<br />
<br /></div>
</div>
</div>
b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-19418929606652220362015-12-03T12:30:00.000+01:002015-12-03T12:45:38.155+01:00Hexamer likelihood <h3>
Do you ever heard about hexamer likelihood used to determine if a sequence is coding or not?</h3>
In one of my assigments on my master of Bioinformatics there was a project to use hexamers instead. The hexamers are defined with 6 nucleotides on a sequence. The idea behind using hexamers is considering that in coding regions there is an influence of the previous codon to the next codon, whereas on the intronic or non-coding regions there isn't.<br />
<br />
<br />
<div style="line-height: 100%; margin-bottom: 0in;">
The script works
need three fasta files, the first one with intronic sequences, the
second one with coding sequences, and the last one with sequences to
analyze. All files must use the IUPAC code for sequences, and on the
right frame. This is due to the way of signaling in which frame a
sequence should be, which varies between programs and descriptions.
It is also more difficult to calculate the best score for the unknown
sequence, without presenting two scores or biasing for a training
set. Assuming everything is on frame is safer and easier and more
intuitive.
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
<br /></div>
<div style="line-height: 100%; margin-bottom: 0in;">
We can run <a href="https://github.com/llrs/Perl/blob/master/hexamer_likelihood.pl">the program</a> with:</div>
<div style="line-height: 100%; margin-bottom: 0in;">
$ ./hexamer_likelihood.pl
intronic.fasta coding.fasta unknown.fasta 2>hexamer_likelihood.log
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
The script print in
the STDERR channel information about the execution. It can be stored
in the hexamer_likelihood.log file using 2>hexamer_likelihood.log while the output is
printed on the terminal:</div>
<div style="line-height: 100%; margin-bottom: 0in;">
<br /></div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_012
395bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_016
265bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_001
56bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_006
65bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_019
81bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_020
735bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_002
158bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_018
435bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_011
1341bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_014
164bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_009
62bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_015
1141bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_017
91bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_003
2390bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_004
1552bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_007
427bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_010
59bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Intronic unknown_008
1205bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Coding unknown_013
205bp
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
<br /></div>
<div style="line-height: 100%; margin-bottom: 0in;">
Note that the result
printed is Intronic or Coding and the identifier and description of
the sequence, the sequence order may change as it is not sorted.</div>
<div style="line-height: 100%; margin-bottom: 0in;">
To retrieve this
output the program reads first the fasta file to analyse, then the
intronic fasta file is read and the frequency of the hexamers for the
whole file is calculated, followed by the same process for the
coding.fasta file, then for each sequence of the unknown file and for
each hexamer the logarithm of the frequencies between intronic and
coding for that hexamer is calculated and added up. Then it is
divided by the number of hexamers on the sequences to obtain a score
of the sequence. With this score we classify each sequence into
Coding or Intronic.</div>
<div style="line-height: 100%; margin-bottom: 0in;">
The script has
documentation about the functions and how to use them using pod, to
access these information you can use $ perldoc deliver_final.pl</div>
<div style="line-height: 100%; margin-bottom: 0in;">
The created script
works with the files provided (2000, 2000 and 20 sequences
respectively) in 1 wallclock secs ( 1.20 usr + 0.19 sys = 1.39
CPU). It is fast due to the use of references whenever there is a
variable with large information, I.e.: between the hash of
frequencies for each hexamer in both training files, and with the
hashes with the fasta files read.</div>
<div style="line-height: 100%; margin-bottom: 0in;">
The complexity of
the algorithm depends on the max length of the sequences and the
number of sequences of the three files. If we consider the maximum
number of hexamers in the longest sequence, the number of sequences
as n, and the number indicate each file 1 intronic, 2 coding, 3 data
to analyze then the complexity of the algorithm is: O(n<sub>1</sub>*m<sub>1</sub>²+n<sub>2</sub>*m<sub>2</sub>²
+n<sub>3</sub>*m<sub>3</sub>) So in the worst case the algorithm
scales following a quadratic function.</div>
<div style="line-height: 100%; margin-bottom: 0in;">
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
To test it longer
some files with the first x sequences of the training set files were
created provided on the assignment keeping constant the other one.
The range were the first 100, 500, 1000, and 1500 sequences:<br />
<br /></div>
<div style="line-height: 100%; margin-bottom: 0in;">
<img align="left" alt="" border="0" height="299" name="Image1" src="data:image/png;base64,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" title="Time of execution of the hexamer likelihood pogram with different datsets" width="412" /><br />
<br /></div>
<div style="line-height: 100%; margin-bottom: 0in;">
On the previous
image we can see how the mean time needed by the program when the
number of sequences of the files change. The files are too short to
differentiate clearly the complexity of the algorithm but we can
observe that the longer a files are, the longer time it needs.
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
<a href="https://www.blogger.com/blogger.g?blogID=7700687607897283065" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img align="left" alt="" border="0" height="640" name="Image1" src="data:image/png;base64,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" style="cursor: move;" title="Time of the hexamer likelihood program with different training sets" width="0" /></a></div>
<div style="line-height: 100%; margin-bottom: 0in;">
I created a new file
half.fasta which is a mix of sequences from the coding.fasta and from
intronic.fasta, with the first 1000 sequences of each file.</div>
<div style="line-height: 100%; margin-bottom: 0in;">
Testing if it is
accurate I downloaded a file from NCBI from the RefSeq NM_206781, as the training set is from the Drosophila melanogaster, and
created three files with it, one with the complete sequence of the
gene, one with an intronic sequence, and another one with the a
coding sequence.</div>
<div style="line-height: 100%; margin-bottom: 0in;">
<br /></div>
<table cellpadding="4" cellspacing="0" style="width: 516px;">
<colgroup><col width="135"></col>
<col width="56"></col>
<col width="54"></col>
<col width="54"></col>
<col width="54"></col>
<col width="54"></col>
<col width="50"></col>
</colgroup><tbody>
<tr valign="top">
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: 1px solid #000000; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0.04in;" width="135"><br />
<br /></td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: 1px solid #000000; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0.04in;" width="56"><span style="font-size: x-small;">half intronic </span>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: 1px solid #000000; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0.04in;" width="54"><span style="font-size: x-small;">intronic half </span>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: 1px solid #000000; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0.04in;" width="54"><span style="font-size: x-small;">half coding </span>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: 1px solid #000000; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0.04in;" width="54"><span style="font-size: x-small;">coding half </span>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: 1px solid #000000; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0.04in;" width="54"><span style="font-size: x-small;">intronic coding </span>
</td>
<td style="border: 1px solid #000000; padding: 0.04in;" width="50"><span style="font-size: x-small;">coding intronic </span>
</td>
</tr>
<tr valign="top">
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="135"><span style="font-size: x-small;">intronic_NM_206781 </span>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="56"><div style="background: #66ff66;">
<span style="font-size: x-small;">Intronic</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><div style="background: #ff3333;">
<span style="font-size: x-small;">Coding</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><div style="background: #66ff66;">
<span style="font-size: x-small;">Intronic</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><div style="background: #ff3333;">
<span style="font-size: x-small;">Coding</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><div style="background: #66ff66;">
<span style="font-size: x-small;">Intronic</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0.04in; padding-top: 0in;" width="50"><div style="background: #ff3333;">
<span style="font-size: x-small;">Coding</span></div>
</td>
</tr>
<tr valign="top">
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="135"><span style="font-size: x-small;">coding_NM_206781 </span>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="56"><div style="background: #ff3333;">
<span style="font-size: x-small;">Intronic</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><div style="background: #66ff66;">
<span style="font-size: x-small;">Coding</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><div style="background: #66ff66;">
<span style="font-size: x-small;">Coding</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><div style="background: #ff3333;">
<span style="font-size: x-small;">Intronic</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><div style="background: #66ff66;">
<span style="font-size: x-small;">Coding</span></div>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0.04in; padding-top: 0in;" width="50"><div style="background: #ff3333;">
<span style="font-size: x-small;">Intronic</span></div>
</td>
</tr>
<tr valign="top">
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="135"><span style="font-size: x-small;">complete_NM_206781 </span>
</td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="56"><span style="font-size: x-small;">Intronic</span></td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><span style="font-size: x-small;">Coding</span></td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><span style="font-size: x-small;">Coding</span></td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><span style="font-size: x-small;">Intronic</span></td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: none; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0in; padding-top: 0in;" width="54"><span style="font-size: x-small;">Coding</span></td>
<td style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: none; padding-bottom: 0.04in; padding-left: 0.04in; padding-right: 0.04in; padding-top: 0in;" width="50"><span style="font-size: x-small;">Intronic</span></td>
</tr>
</tbody></table>
<div style="line-height: 100%; margin-bottom: 0in;">
<br /></div>
<div style="line-height: 100%; margin-bottom: 0in;">
We can see on this
table that for the training set it is not biased. If we swap the
files from their expected positions the result change accordingly.
And that with the half file we can reach the same conclusion. On the
other hand on the complete sequence it detects that there are coding
regions, but it could go undetected if the coding region is shorter
than the non-coding region.</div>
<div style="line-height: 100%; margin-bottom: 0in;">
<br /></div>
<div style="line-height: 100%; margin-bottom: 0in;">
</div>
<div style="line-height: 100%; margin-bottom: 0in;">
I run the program
analyzing the own training datasets. The coding.fasta file contains
237 intronic sequences and 1755, (the remaining 8 sequences are too
short to have hexamers). The intronic.fasta file contains 55 coding
sequences according to the algorithm and 1945 intronic. </div>
<div style="line-height: 100%; margin-bottom: 0in;">
<br /></div>
b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-23234460929225828612015-06-16T20:35:00.002+02:002015-06-16T20:35:59.422+02:00DelayI'm sorry this month the news post will come with some delay, but there will be another post with it.<br />
<br />
If you like potatoes take one:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://www.digitaljournal.com/img/4/2/9/0/i/4/1/7/o/8ab1aa702fece1872973ac17aec85b6f.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.digitaljournal.com/img/4/2/9/0/i/4/1/7/o/8ab1aa702fece1872973ac17aec85b6f.jpg" height="209" width="320" /></a></div>
<br />b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.comtag:blogger.com,1999:blog-7700687607897283065.post-41381515694179537712015-05-17T17:44:00.000+02:002015-05-17T17:50:10.834+02:00Bioinformatics News MayNow again I want to share with you some news:<br />
<ul>
<li><a href="http://www.eurekalert.org/pub_releases/2015-04/tgac-nob041615.php">Novel online bioinformatics tool significantly reduces time of multiple genome analysis</a></li>
<li><a href="http://www.biomedcentral.com/1471-2105/16/S6/S3">Machine-learning scoring functions for identifying native poses of ligands docked to known and novel proteins</a></li>
<li><a href="http://globenewswire.com/news-release/2015/04/22/727137/10130182/en/In-the-First-Bioinformatics-Hackathon-Computer-Scientists-Meeting-in-Russia-Use-their-Computer-Skills-to-Fight-Deadly-Diseases.html">In the First Bioinformatics Hackathon, Computer Scientists Meeting in Russia Use their Computer Skills to Fight Deadly Diseases</a></li>
<li><a href="http://chemicals%20giant%20dupont%20buying%20taxon%20biosciences/">Chemicals giant DuPont buying Taxon Biosciences</a></li>
<li><a href="http://phys.org/news/2015-04-markerminer-easy-to-use-bioinformatics-platform-dna.html">MarkerMiner 1.0: An easy-to-use bioinformatics platform for DNA analysis in angiosperms</a></li>
<li><a href="http://scicasts.com/bio-it/1844-bioinformatics/9325-new-3-d-method-improves-the-study-of-proteins/">New 3-D Method Improves the Study of Proteins</a></li>
<li><a href="http://www.washingtonpost.com/business/capitalbusiness/opgen-raises17-million-in-initial-public-offering/2015/05/05/9441879c-f34a-11e4-bcc4-e8141e5eb0c9_story.html">OpGen raises $17 million in initial public offering</a>, to develops tests to help hospitals identify drug-resistant bacteria </li>
<li><a href="http://phys.org/news/2015-05-massively-parallel-biology-students.html">Massively parallel biology students: More than 900 students co-author genomics research paper</a>, an interessting effort to do science</li>
<li><a href="http://phys.org/news/2015-05-precise-epigenetic-mutation.html">Researchers obtain precise estimates of the epigenetic mutation rate</a></li>
</ul>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="http://bioinformaticsbarcelona.eu/logoALTA_BIB_centrat_RGB.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img alt="Bioinformatics Barcelona - BIB" border="0" src="http://bioinformaticsbarcelona.eu/logoALTA_BIB_centrat_RGB.jpg" height="200" title="" width="184" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><a href="http://bioinformaticsbarcelona.eu/">BIB logo of their website.</a></td></tr>
</tbody></table>
<div>
<br /></div>
<div>
And last but not least, there was the announcement from the BIB of a new degree in Bioinformatics in Catalonia. It will be the first university degree of 3 years of Bolonya's plan in Spain. I hope this will be accompanied with lower master taxes in the public universities. I will not extend more, but I hope this will help people to understand the bioinformatician duties and role.</div>
b101nfohttp://www.blogger.com/profile/02008785807459252885noreply@blogger.com