<?xml version='1.0'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:atom="http://www.w3.org/2005/Atom" >
<channel>
	<title><![CDATA[BOL: Related items]]></title>
	<link>https://bioinformaticsonline.com/related/37586?offset=150</link>
	<atom:link href="https://bioinformaticsonline.com/related/37586?offset=150" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/37590/parallel-processing-with-perl</guid>
	<pubDate>Sat, 25 Aug 2018 11:32:40 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/37590/parallel-processing-with-perl</link>
	<title><![CDATA[Parallel Processing with Perl !]]></title>
	<description><![CDATA[<p>Here is a small tutorial on how to make best use of multiple processors for bioinformatics analysis. One best way is using perl threads and forks. Knowing how these threads and forks work is very important before implementing them. Getting to know how these work would be really useful before reading this tutorial.</p><p>Many times in bioinformatics we need to deal with huge datasets which&nbsp; are more than 100GB size. The traditional way to analysis a file is using the while loop</p><p>while (FILE){</p><p>Do something;</p><p>}</p><p>This is very slow(since we are using only one processor) and if we have 500 million lines in the dataset it takes more than a day to iterate through the whole dataset. So how do we make best use of all our processors and get the work done quickly?</p><p>Here is a very simple and efficient technique with perl which i have been using. I am&nbsp; more inclined towards using perl fork than perl threads.</p><p>One of the oldest way to fork is</p><blockquote><p>my $fork = fork();<br />if($fork){&nbsp;&nbsp;&nbsp;<br />push (@childs,$fork);&nbsp;<br />}<br />elseif($fork==0){<br /><strong>your code here;</strong><br />exit(0);<br />}<br />else{die &ldquo;Couldnt fork : $!&rdquo;;}</p><p>## wait for the child process to finish<br />foreach(@childs){<br />my $tmp=waitid($_,0);<br />}</p></blockquote><p>what a fork does is it creates a child process and takes the variables and code with it to analyze it separately (detached from the parent process) and thus a separate process is created( which usually runs on a separate processor). Thats it!! One big disadvantage of forking is its very difficult to share variables among the different processes. I will show you how to do it easily but still it has its own drawbacks.</p><blockquote><p>Okie, now if you really do not want to use fork in your code, that&rsquo;s okie too..There are many useful modules which do it for you very efficiently. One really useful module is Parallel::ForkManager. You can use Parallel::ForkManager to manage the number of forks you want to generate (number of processors you want to use).</p><p><strong>Simple usage:</strong><br />use Parallel::ForkManager;<br />my $max_processors=8;<br />my $fork= new Parallel::ForkManager($max_processors);<br />foreach (@dna) {<br />$fork-&gt;start and next; # do the fork<br /><strong>you code here;</strong><br />$fork-&gt;finish; # do the exit in the child process<br />}<br />$pm-&gt;wait_all_children;</p></blockquote><p>so you will be generating 8 forks which do the same thing for your each element of array. when one child finishes, Parallel::ForkManager generates a new one and thus you will be using all your processors to analyze the data. Now, if you have generated 8 child processes and want to write the data to one file. You need to lock the file to do this, because you will have problems with the buffering. You can lock the file using flock command.</p><blockquote><p>open (my $QUAL, &ldquo;myfile.txt&rdquo;);<br />flock $QUAL, LOCK_EX or die &ldquo;cant lock file $!&rdquo;;<br />print $QUAL &ldquo;$output&rdquo;;<br />flock $QUAL, LOCK_UN or die &ldquo;$!&rdquo;;<br />close $QUAL;</p></blockquote><p>I would not suggest using flock when dealing with multiple processes because it will decrease the processing efficiency( each child process must wait for the lock to be released by the other child process). Instead, I would suggest each fork writing to a separate file and after the processing just concatenating them.</p><p><strong>Putting it all together, If you have 100GB data you can do this</strong></p><blockquote><p><strong>step 1</strong>&nbsp;: split the dataset equally according to number of processors you have. this may take a few hours(about 2-3 hrs for 100GB file)<br />You can use unix &ldquo;split&rdquo; command for this<br />for example:<br />my $number_split=int($number_of_entries_in_your_dataset/$max_processors);<br />my $split_Files=`split -l $number_split &ldquo;your_file.fasta&rdquo; &ldquo;file_name&rdquo;`;</p><p><strong>step2</strong>: open you directory comtaining you split files and start Parallel::ForkManager.<br /><strong>For example:</strong><br />opendir(DIRECTORY, $split_files_directory) or die $!; ### open the directory<br />my $fork= new Parallel::ForkManager($max_processors);<br />while (my $file = readdir(DIRECTORY)) { ### read the directory<br />if($file=~/^\./){next;}<br />print $file,&rdquo;\n&rdquo;;<br />########## Start fork ##########<br />my $pid= $super_fork-&gt;start and next;<br /><strong>Whatever you want to do with the split file ;</strong><br /><strong>analyze my piece of $file;</strong><br />######### end fork ###############<br />$super_fork-&gt;finish;<br />}<br />$super_fork-&gt;wait_all_children;</p></blockquote><p>So basically each processor will be active with its piece of data (split file) and thus you have created 8 processes at one time which run without interfering with the other process. I again will not suggest writing output from each child process to one file(for reasons above). Write output from each fork to a separate file and finally concatenate them. Thats it, you have just increased your program speed by 8 times!! Isnt it easy?</p><p><strong>Note:</strong><br />You may worry about concatenation of the output each child generates, since it does take some time(remember 100GB). I think now you can use a mysql database LOAD DATA LOCAL INFILE command to load all the files into a single table(Should take about 3hrs for 100Gb dataset) and then export the whole table into one file. This should be faster than just concatenating them using &ldquo;cat&rdquo; command.(correct me if I am wrong)</p><p>Or much simpler way is to use pipes</p><p>cat output_dir/* | my_pipe or my_pipe &lt;(file1) final_file;</p><p>Thats it guys!! Enjoy programming and please do comment. I am not a computer scientist so forgive me for any mistakes and if any please report them. Thank you.</p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/news/view/140/python-education-material</guid>
	<pubDate>Wed, 10 Jul 2013 16:38:23 -0500</pubDate>
	<link>https://bioinformaticsonline.com/news/view/140/python-education-material</link>
	<title><![CDATA[Python Education Material]]></title>
	<description><![CDATA[<p><span>Google provide free class for people with a little bit of programming experience who want to learn Python. The google python class includes written materials, lecture videos, and lots of code exercises to practice Python coding. These materials are used within Google to introduce Python to people who have just a little programming experience.</span></p><p><span>Find more @&nbsp;<a href="https://developers.google.com/edu/python/">https://developers.google.com/edu/python/</a></span></p>]]></description>
	<dc:creator>Jitendra Narayan</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/12963/cosmos-our-workflow-management-system-for-ngs-data</guid>
	<pubDate>Wed, 23 Jul 2014 07:29:14 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/12963/cosmos-our-workflow-management-system-for-ngs-data</link>
	<title><![CDATA[COSMOS, our workflow management system for NGS data]]></title>
	<description><![CDATA[<p><strong>COSMOS</strong>, our Python-based management system for implementing large-scale parallel workflows focusing on, but not restricted to, large-scale short-read "NGS" sequencing data is open-access published via <a href="http://bioinformatics.oxfordjournals.org/content/early/2014/06/29/bioinformatics.btu385.abstract">Advance Access</a> in <em>Bioinformatics</em> (<a href="http://scholar.harvard.edu/lancaster/publications/cosmos-python-library-massively-parallel-workflows">Gafni et al. 2014</a>).&nbsp; It is also available for download for non-commercial academic and research purposes at:</p>
<p><strong>&nbsp;<a href="http://cosmos.hms.harvard.edu/">http://cosmos.hms.harvard.edu/</a></strong>.</p><p>Address of the bookmark: <a href="https://cosmos.hms.harvard.edu/" rel="nofollow">https://cosmos.hms.harvard.edu/</a></p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/35805/python-learning-resources-for-bioinformatics-and-computational-biologist</guid>
	<pubDate>Fri, 02 Mar 2018 06:54:15 -0600</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/35805/python-learning-resources-for-bioinformatics-and-computational-biologist</link>
	<title><![CDATA[Python learning resources for bioinformatics and computational biologist !]]></title>
	<description><![CDATA[<p>Python is a general-purpose language, which means it can be used to build just about anything, which will be made easy with the right tools/libraries.</p><p>Professionally, Python is great for backend web development, data analysis, artificial intelligence, and scientific computing. Many developers have also used Python to build productivity tools, games, and desktop apps, so there are plenty of resources to help you learn how to do those as well.</p><p>For pros and cons visit&nbsp;http://www.bestprogramminglanguagefor.me/why-learn-python and&nbsp;http://bioinformaticsonline.com/discussion/view/459/python-vs-perl</p><p>More resources at&nbsp;https://github.com/CodementorIO/Python-Learning-Resources</p><p>Following are the list of useful python programming resources:</p><ul>
<li><a href="http://www.oreilly.com/programming/free/20-python-libraries-you-arent-using-but-should.csp">20 Python Libraries You Aren't Using (But Should)</a>&nbsp;<em>(Just fill the fields with any values)</em></li>
<li><a href="https://en.wikibooks.org/wiki/A_Beginner%27s_Python_Tutorial">A Beginner's Python Tutorial</a></li>
<li><a href="https://python.swaroopch.com/">A Byte of Python</a>&nbsp;(3.x) (HTML, PDF, EPUB, Mobi)</li>
<li><a href="https://github.com/RafeKettler/magicmethods">A Guide to Python's Magic Methods</a>&nbsp;- Rafe Kettler</li>
<li><a href="http://www.oreilly.com/programming/free/files/a-whirlwind-tour-of-python.pdf">A Whirlwind Tour of Python</a>&nbsp;- Jake VanderPlas (PDF)&nbsp;<a href="http://www.oreilly.com/programming/free/a-whirlwind-tour-of-python.csp?download=yes">(EPUB, MOBI)</a></li>
<li><a href="http://automatetheboringstuff.com/chapter0/">Automate the Boring Stuff</a>&nbsp;- Al Sweigart</li>
<li><a href="http://biopython.org/DIST/docs/tutorial/Tutorial.pdf">Biopython</a>&nbsp;(PDF)</li>
<li><a href="http://github.com/thewhitetulip/build-app-with-python-antitextbook">Build applications in Python the antitextbook</a>&nbsp;(3.x) (HTML, PDF, EPUB, Mobi)</li>
<li><a href="https://www.packtpub.com/packt/free-ebook/python-machine-learning-algorithms">Building Machine Learning Systems with Python</a>&nbsp;- Willi Richert &amp; Luis Pedro Coelho, Packt.&nbsp;<em>(Just fill the fields with any values)</em></li>
<li><a href="http://www.itmaybeahack.com/book/oodesign-python-2.1/latex/BuildingSkillsinOODesign.pdf">Building Skills in Object-Oriented Design (Python)</a>&nbsp;(PDF) (2.1.1)</li>
<li><a href="http://www.itmaybeahack.com/book/python-2.6/latex/BuildingSkillsinPython.pdf">Building Skills in Python</a>&nbsp;(PDF) (2.6)</li>
<li><a href="http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html">Code Like a Pythonista: Idiomatic Python</a></li>
<li><a href="https://www.codecademy.com/learn/python">CodeCademy Python</a></li>
<li><a href="http://composingprograms.com/">Composing Programs</a>&nbsp;(3.x)</li>
<li><a href="https://web.archive.org/web/20161016153130/http://www.brpreiss.com/books/opus7/html/book.html">Data Structures and Algorithms in Python</a>&nbsp;- B. R. Preiss (PDF)</li>
<li><a href="http://getpython3.com/diveintopython3/">Dive into Python 3</a>&nbsp;- Mark Pilgrim (3.0)
<ul>
<li><a href="http://www.diveintopython.net/">Dive into Python</a>&nbsp;- Mark Pilgrim (2.3)</li>
</ul>
</li>
<li><a href="http://www.labri.fr/perso/nrougier/from-python-to-numpy/">From Python to NumPy</a></li>
<li><a href="http://www.fullstackpython.com/">Full Stack Python</a></li>
<li><a href="http://www.oreilly.com/programming/free/functional-programming-python.csp">Functional Programming in Python</a>&nbsp;<em>(Just fill the fields with any values)</em></li>
<li><a href="http://python.cs.southern.edu/pythonbook/pythonbook.pdf">Fundamentals of Python Programming</a>&nbsp;- Richard L. Halterman (PDF) (3.2)</li>
<li><a href="https://developers.google.com/edu/python/">Google's Python Class</a>&nbsp;(2.4 - 2.x)</li>
<li><a href="https://google.github.io/styleguide/pyguide.html">Google's Python Style Guide</a></li>
<li><a href="http://inventwithpython.com/hacking/chapters/">Hacking Secret Cyphers with Python</a>&nbsp;- Al Sweigart (3.3)</li>
<li><a href="http://www.oreilly.com/programming/free/hadoop-with-python.csp">Hadoop with Python</a>&nbsp;<em>(Just fill the fields with any values)</em></li>
<li><a href="http://ianozsvald.com/HighPerformancePythonfromTrainingatEuroPython2011_v0.2.pdf">High Performance Python</a>&nbsp;(PDF)</li>
<li><a href="http://docs.python-guide.org/en/latest/">Hitchhiker's Guide to Python!</a>&nbsp;(2.6)</li>
<li><a href="http://www.oreilly.com/programming/free/files/how-to-make-mistakes-in-python.pdf">How to Make Mistakes in Python</a>&nbsp;- Mike Pirnat (PDF) (1st edition)</li>
<li><a href="http://interactivepython.org/courselib/static/thinkcspy/index.html">How to Think Like a Computer Scientist: Learning with Python, Interactive Edition</a>&nbsp;(3.2)
<ul>
<li><a href="http://www.greenteapress.com/thinkpython/thinkCSpy/">How to Think Like a Computer Scientist: Learning with Python</a>&nbsp;- Allen B. Downey, Jeff Elkner and Chris Meyers (2.4)</li>
<li><a href="http://www.greenteapress.com/thinkpython/">Think Python</a>&nbsp;- Allen B. Downey (2.x &amp; 3.0)</li>
</ul>
</li>
<li><a href="http://book.pythontips.com/en/latest/index.html">Intermediate Python</a>&nbsp;- Muhammad Yasoob Ullah Khalid (1st edition)</li>
<li><a href="http://opentechschool.github.io/python-beginners/en/">Introduction to Programming with Python</a>&nbsp;(3.3)
<ul>
<li><a href="http://python-ebook.blogspot.co.uk/">Introduction to Programming Using Python</a>&nbsp;- Cody Jackson (1st edition) (2.3)</li>
</ul>
</li>
<li><a href="http://kracekumar.com/post/71171551647/introduction-to-python">Introduction to Python</a>&nbsp;- Kracekumar (2.7.3)</li>
<li><a href="http://inventwithpython.com/chapters/">Invent Your Own Computer Games With Python</a>&nbsp;- Al Sweigart (3.1)</li>
<li><a href="http://learnpythonbreakpython.com/">Learn Python, Break Python</a></li>
<li><a href="https://learnxinyminutes.com/docs/python/">Learn Python in Y minutes</a></li>
<li><a href="http://learnpythonthehardway.org/book/">Learn Python The Hard Way</a>&nbsp;(2.5 - 2.6)</li>
<li><a href="https://www.ida.liu.se/~732A47/literature/PythonBook.pdf">Learn to Program Using Python</a>&nbsp;- Cody Jackson (PDF)</li>
<li><a href="https://www.packtpub.com/packt/free-ebook/learning-python">Learning Python</a>&nbsp;- Fabrizio Romano, Packt.&nbsp;<em>(Just fill the fields with any values)</em></li>
<li><a href="http://www.alan-g.me.uk/">Learning to Program</a></li>
<li><a href="https://github.com/jrjohansson/scientific-python-lectures">Lectures on scientific computing with python</a>&nbsp;- J.R. Johansson (2.7)</li>
<li><a href="http://inventwithpython.com/pygame/chapters/">Making Games with Python &amp; Pygame</a>&nbsp;- Al Sweigart (2.7)</li>
<li><a href="http://www.clips.ua.ac.be/sites/default/files/modeling-creativity.pdf">Modeling Creativity: Case Studies in Python</a>&nbsp;- Tom D. De Smedt (PDF)</li>
<li><a href="http://www.nltk.org/book/">Natural Language Processing with Python</a>&nbsp;(3.x)</li>
<li><a href="https://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python_3">Non-Programmer's Tutorial for Python 3</a>&nbsp;(3.3)
<ul>
<li><a href="https://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python_2.6">Non-Programmer's Tutorial for Python 2.6</a>&nbsp;(2.6)</li>
</ul>
</li>
<li><a href="http://www.oreilly.com/programming/free/from-future-import-python.csp">Picking a Python Version: A Manifesto</a>&nbsp;<em>(Just fill the fields with any values)</em></li>
<li><a href="http://python3porting.com/">Porting to Python 3: An In-Depth Guide</a>&nbsp;(2.6 - 2.x &amp; 3.1 - 3.x)</li>
<li><a href="https://launchpadlibrarian.net/165489933/PracticalProgrammingPython2014.pdf">Practical Programming in Python</a>&nbsp;- Jeffrey Elkner (PDF)</li>
<li><a href="http://interactivepython.org/runestone/static/pythonds/index.html">Problem Solving with Algorithms and Data Structures using Python</a>&nbsp;- Bradley N. Miller and David L. Ranum</li>
<li><a href="http://programarcadegames.com/">Program Arcade Games With Python And Pygame</a>&nbsp;(3.3)</li>
<li><a href="http://programmingcomputervision.com/downloads/ProgrammingComputerVision_CCdraft.pdf">Programming Computer Vision with Python</a>&nbsp;(PDF)</li>
<li><a href="https://docs.python.org/2/download.html">Python 2 Official Documentation</a>&nbsp;(PDF, HTML, TEXT) (2.x)</li>
<li><a href="http://infohost.nmt.edu/tcc/help/pubs/python/web/">Python 2.7 quick reference</a>&nbsp;- New Mexico Tech (2.7)</li>
<li><a href="https://docs.python.org/3/download.html">Python 3 Official Documentation</a>&nbsp;(PDF, EPUB, HTML, TEXT) (3.x)</li>
<li><a href="http://chimera.labs.oreilly.com/books/1230000000393/index.html">Python Cookbook</a>&nbsp;- David Beazley</li>
<li><a href="https://github.com/jakevdp/PythonDataScienceHandbook">Python Data Science Handbook</a>&nbsp;- Jake VanderPlas (HTML, Jupyter Notebooks)</li>
<li><a href="http://www.kevinsheppard.com/images/0/09/Python_introduction.pdf">Python for Econometrics</a>&nbsp;- Kevin Sheppard (PDF) (2.7.5)</li>
<li><a href="http://py4e.com/book.php">Python for Everybody Exploring Data Using Python 3</a>&nbsp;- Charles Severance (PDF, EPUB, HTML)
<ul>
<li><a href="http://www.pythonlearn.com/book.php">Python for Informatics: Exploring Information</a>&nbsp;(2.7.5)</li>
</ul>
</li>
<li><a href="http://pymbook.readthedocs.org/en/latest/">Python for you and me</a>&nbsp;(2.7.3)</li>
<li><a href="http://pymbook.readthedocs.org/en/py3/">Python for you and me</a>&nbsp;(3.x)</li>
<li><a href="http://safehammad.com/downloads/python-idioms-2014-01-16.pdf">Python Idioms</a>&nbsp;(PDF)</li>
<li><a href="http://www.oreilly.com/programming/free/python-in-education.csp">Python in Education</a>&nbsp;<em>(Just fill the fields with any values)</em></li>
<li><a href="http://www.greenteapress.com/pythonhydro/pythonhydro.html">Python in Hydrology</a>&nbsp;- Sat Kumar Tomer</li>
<li><a href="https://github.com/gregmalcolm/python_koans">Python Koans</a>&nbsp;(2.7 or 3.x)</li>
<li><a href="https://pymotw.com/3/">Python Module of the Week</a>&nbsp;(3.x)
<ul>
<li><a href="https://pymotw.com/2/">Python Module of the Week</a>&nbsp;(2.x)</li>
</ul>
</li>
<li><a href="http://books.goalkicker.com/PythonBook/">Python Notes for Professionals</a>&nbsp;- Compiled from StackOverflow documentation (3.x)</li>
<li><a href="http://anandology.com/python-practice-book/index.html">Python Practice Book</a>&nbsp;(2.7.1)</li>
<li><a href="http://pythonpracticeprojects.com/">Python Practice Projects</a></li>
<li><a href="https://upload.wikimedia.org/wikipedia/commons/9/91/Python_Programming.pdf">Python Programming</a>&nbsp;(PDF) (2.6)</li>
<li><a href="http://scipy-lectures.github.io/">Scipy Lecture Notes</a></li>
<li><a href="http://www-inst.eecs.berkeley.edu/~cs61a/sp12/book/">SICP in Python</a>&nbsp;(3.2)</li>
<li><a href="http://www.briggs.net.nz/snake-wrangling-for-kids.html">Snake Wrangling For Kids</a>&nbsp;(3.x)</li>
<li><a href="http://python3porting.com/">Suporting Python 3: An In-Depth Guide</a>&nbsp;(2.6 - 2.x &amp; 3.1 - 3.x)</li>
<li><a href="http://chimera.labs.oreilly.com/books/1234000000754/index.html">Test-Driven Web Development with Python</a>&nbsp;(3.3 - 3.x)</li>
<li><a href="http://gnosis.cx/TPiP/">Text Processing in Python</a>&nbsp;- David Mertz (2.3 - 2.x)</li>
<li><a href="http://www.spronck.net/pythonbook/">The Coder's Apprentice: Learning Programming with Python 3</a>&nbsp;- Pieter Spronck (PDF) (3.x)</li>
<li><a href="http://www.jython.org/jythonbook/en/1.0">The Definitive Guide to Jython, Python for the Java Platform</a>&nbsp;- Josh Juneau, Jim Baker, Victor Ng, Leo Soto, Frank Wierzbicki (2.5)</li>
<li><a href="http://docs.quantifiedcode.com/python-anti-patterns/">The Little Book of Python Anti-Patterns</a>&nbsp;(<a href="https://github.com/quantifiedcode/python-anti-patterns">Source</a>)</li>
<li><a href="http://niche-canada.org/research/niche-digital-infrastructure-project/the-programming-historian/">The Programming Historian</a>&nbsp;- William J. Turkel, Adam Crymble and Alan MacEachern</li>
<li><a href="http://mirnazim.org/writings/python-ecosystem-introduction/">The Python Ecosystem: An Introduction</a></li>
<li><a href="http://python-gtk-3-tutorial.readthedocs.org/en/latest/">The Python GTK+ 3 Tutorial</a></li>
<li><a href="http://effbot.org/librarybook/">The Standard Python Library</a>&nbsp;- Fredrik Lundh</li>
<li><a href="http://greenteapress.com/complexity/">Think Complexity</a>&nbsp;- Allen B. Downey (2nd Edition) (PDF, HTML)</li>
<li><a href="http://web2py.com/book">Web2py: Complete Reference Manual, 6th Edition (pre-release)</a>&nbsp;(2.5 - 2.x)</li>
<li><a href="https://en.wikibooks.org/wiki/Python_Programming">Wikibooks: Python Programming</a>&nbsp;(2.7)</li>
</ul>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/37627/setting-python-version-as-default-on-linux</guid>
	<pubDate>Tue, 04 Sep 2018 10:15:47 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/37627/setting-python-version-as-default-on-linux</link>
	<title><![CDATA[Setting python version as default on Linux]]></title>
	<description><![CDATA[<p>If you have a later version than 2.6 you'll need to set 2.6 as the default Python. Later versions would be 2.7 and 3.1; see what you have by typing</p><pre>python -V
</pre><p><span>at the terminal. For purposes of this example we'll assume you have 3.1 installed. You'll next need to execute the following commands:</span></p><p>&nbsp;</p><pre>sudo apt-get install python2.6 idle-python2.6
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.1 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.6 10
sudo update-alternatives --config python
</pre><p>This last command will allow you to choose which version of python to use by default. If you have done everything above correctly, python2.6 should already be set as the default. If it is not, choose it to be the default. From now on, running python should start version 2.6.</p><div><p>Undoing These Changes</p><p>In some cases (e.g., installing or updating certain packages), you'll get an error message if you've run the commands above. To update these packages, you'll have to temporarily undo these changes. Here's how to do that:</p><pre>sudo update-alternatives --remove-all python
sudo ln -s python3.1 /usr/bin/python
</pre><p>Once you're done updating these packages, execute the commands at the top to set python2.6 as the default again.</p></div>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/40834/nucleus-python-and-c-code-for-reading-and-writing-genomics-data</guid>
	<pubDate>Sun, 02 Feb 2020 08:14:19 -0600</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/40834/nucleus-python-and-c-code-for-reading-and-writing-genomics-data</link>
	<title><![CDATA[Nucleus: Python and C++ code for reading and writing genomics data.]]></title>
	<description><![CDATA[<p>Nucleus is a library of Python and C++ code designed to make it easy to read, write and analyze data in common genomics file formats like SAM and VCF. In addition, Nucleus enables painless integration with the TensorFlow machine learning framework, as anywhere a genomics file is consumed or produced, a TensorFlow tfrecords file may be used instead.</p><p>Address of the bookmark: <a href="https://github.com/google/nucleus" rel="nofollow">https://github.com/google/nucleus</a></p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/42923/flanker</guid>
	<pubDate>Sat, 27 Feb 2021 22:04:53 -0600</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/42923/flanker</link>
	<title><![CDATA[Flanker]]></title>
	<description><![CDATA[<p><span>Flanker, a Python package which performs alignment-free clustering of gene flanking sequences in a consistent format, allowing investigation of&nbsp;<span>mobile genetic elements (</span>MGEs) without prior knowledge of their structure.&nbsp;<span>Flanker can be flexibly parameterised to finetune outputs by characterising upstream and downstream regions separately and investigating variable lengths of flanking sequence.</span></span></p>
<p><span><img src="https://github.com/wtmatlock/flanker/raw/main/docs/frontpage.png" alt="image" style="border: 0px;"></span></p><p>Address of the bookmark: <a href="https://github.com/wtmatlock/flanker" rel="nofollow">https://github.com/wtmatlock/flanker</a></p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/34567/jobtree-based-python-wrapper-to-run-the-genome-simulation-tool-suite-evolver</guid>
	<pubDate>Fri, 08 Dec 2017 16:26:32 -0600</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/34567/jobtree-based-python-wrapper-to-run-the-genome-simulation-tool-suite-evolver</link>
	<title><![CDATA[jobTree based python wrapper to run the genome simulation tool suite Evolver]]></title>
	<description><![CDATA[<p><span>evolverSimControl</span><span>&nbsp;(</span><span>eSC</span><span>) can be used to simulate multi-chromosome genome evolution on an arbitrary phylogeny (</span><a href="http://evolution.genetics.washington.edu/phylip/newicktree.html">Newick format</a><span>). In addition to simply running evolver,&nbsp;</span><span>eSC</span><span>&nbsp;also automatically creates statistical summaries of the simulation as it runs including text and image files. Also included are convenience scripts to: check on a running simulation and see detailed status and logging information; extract fasta sequence files from the leaf nodes of a completed simulation; extract pairwise multiple alignment files (</span><a href="http://genome.ucsc.edu/FAQ/FAQformat.html#format5">.maf</a><span>) from leaf and branch nodes from a completed simulation and with the help of&nbsp;</span><a href="https://github.com/dentearl/mafTools/">mafJoin</a><span>, join them together into a single maf covering the entire simulation.</span></p><p>Address of the bookmark: <a href="https://github.com/dentearl/evolverSimControl" rel="nofollow">https://github.com/dentearl/evolverSimControl</a></p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/40099/contiguator</guid>
	<pubDate>Fri, 04 Oct 2019 01:27:58 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/40099/contiguator</link>
	<title><![CDATA[CONTIGuator !]]></title>
	<description><![CDATA[<p><span>CONTIGuator is a Python script for Linux environments whose purpose is to speed-up the bacterial genome assembly process and to obtain a first insight of the genome structure using the well-known artemis comparison tool (ACT).</span></p>
<p>&nbsp;</p><p>Address of the bookmark: <a href="https://sourceforge.net/projects/contiguator/" rel="nofollow">https://sourceforge.net/projects/contiguator/</a></p>]]></description>
	<dc:creator>BioStar</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/44373/mitohifi-a-python-pipeline-for-mitochondrial-genome-assembly-from-pacbio-high-fidelity-reads</guid>
	<pubDate>Tue, 05 Sep 2023 07:31:35 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/44373/mitohifi-a-python-pipeline-for-mitochondrial-genome-assembly-from-pacbio-high-fidelity-reads</link>
	<title><![CDATA[MitoHiFi: a python pipeline for mitochondrial genome assembly from PacBio high fidelity reads]]></title>
	<description><![CDATA[<p dir="auto">MitoHiFi v3.2 is a python pipeline distributed under&nbsp;<a href="https://github.com/marcelauliano/MitoHiFi/blob/master/LICENSE">MIT License</a>&nbsp;!</p>
<p dir="auto">MitoHiFi was first developed to assemble the mitogenomes for a wide range of species in the Darwin Tree of Life Project (DToL)</p>
<p dir="auto">https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-023-05385-y&nbsp;</p>
<p dir="auto"><a href="https://github.com/marcelauliano/MitoHiFi/blob/master/docs/dtol-logo-round-300x132.png" target="_blank"><img src="https://github.com/marcelauliano/MitoHiFi/raw/master/docs/dtol-logo-round-300x132.png" alt="" style="border: 0px; border: 0px;"></a></p><p>Address of the bookmark: <a href="https://github.com/marcelauliano/MitoHiFi" rel="nofollow">https://github.com/marcelauliano/MitoHiFi</a></p>]]></description>
	<dc:creator>Abhi</dc:creator>
</item>

</channel>
</rss>