<?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: All site blogs]]></title>
	<link>https://bioinformaticsonline.com/blog/all?offset=130</link>
	<atom:link href="https://bioinformaticsonline.com/blog/all?offset=130" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/40404/exchange-programme-for-indian-scientist</guid>
	<pubDate>Wed, 18 Dec 2019 21:11:22 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/40404/exchange-programme-for-indian-scientist</link>
	<title><![CDATA[Exchange Programme for Indian scientist !!]]></title>
	<description><![CDATA[<p>The Indian National Science Academy (INSA) is a premier scientific learned body (established in 1935) representing all branches of science &ndash;Physical and Biological Sciences including Engineering, Medicine and Agricultural Sciences. The Academy has been promoting scientific cooperation with Academies/Organisations of several countries the world over. The Academy has links with the Academies and Organisations in Asia, Europe<br />and South America. These programmes provide opportunities to scientists working in various scientific institutions and organizations in the country for exchange of ideas, knowledge, establish new links, strengthen old links and undertake joint projects with their research partners in leading laboratories and institutions abroad.</p><p>The Academy has an International Exchange Programme with Academies/Organizations in the countries:&nbsp;<span>Brazil, China, France, Hungary, Iran, Israel, Nepal, Philippines, Poland, Scotland, Slovak Republic, Republic of Slovenia, Sudan and Taiwan.</span></p><p>Applications are invited from Indian Nationals for consideration by the Academy for the next calendar year.</p><ul>
<li>The applicant should be a scientist holding a regular (<span>permanent</span>) position in a recognized S &amp; T Institution/University and actively engaged in research work in frontline areas.</li>
<li>He/She should not have been abroad during the last 3 years under any INSA Programme.</li>
<li>The scientist should have been accepted to work in an Institute/Laboratory in the country to be visited and this should be supported by a&nbsp;<span>letter of invitation</span>&nbsp;from the host abroad.</li>
<li>Those who wish to visit abroad for three months should submit a detailed programme of their collaborative research work to be conducted.</li>
</ul><p>All applications duly completed should be forwarded to the academy through proper channel by the employer/head of the Institute.</p><ul>
<li>Scientists selected for deputation abroad would be provided&nbsp;<span>100% travel support (by only Air India excursion class airfare, through shortest route from the place of duty in India to the nearest airport of host Institute and back)</span>&nbsp;by INSA.</li>
<li>Medical Insurance purchased in India.</li>
<li>Visa fee (if any).</li>
<li>The receiving Academy/Organization would provide local hospitality including internal travel abroad.</li>
</ul><p>Contact for detail at&nbsp;</p><p><a href="http://www.insaindia.res.in/" target="_blank"><span>www.insaindia.res.in</span></a></p><p><span>INDIAN NATIONAL SCIENCE ACADEMY</span><br /><span>Bahadur Shah Zafar Marg, New Delhi &ndash; 110 002.</span><br /><span>Telephone: 91-11-23221931 &ndash; 23221950 (EPABX),</span><br /><span>Fax: 91-11- 23235648, 23231095</span></p>]]></description>
	<dc:creator>Shruti Paniwala</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/39469/introduction-to-bioinformatics</guid>
	<pubDate>Wed, 05 Jun 2019 14:58:11 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/39469/introduction-to-bioinformatics</link>
	<title><![CDATA[Introduction to Bioinformatics]]></title>
	<description><![CDATA[<p><img src="https://edu.t-bio.info/wp-content/uploads/2017/07/Introduction-Course-Title-11.jpg" alt="Introduction to Bioinformatics Course" width="600" height="315.6" style="vertical-align: top; border: 0px; border: 0px;"></p><p>Introduction to bioinformatics is a course for biologists and clinicians that would like to learn more about the way bioinformatics is used in healthcare, biotech and pharmaceuitcal industry as well as basic research. The course covers many of the topics transformed by the emergence of big data and computational technologies. To learn more about the course, visit:&nbsp;<a href="https://edu.t-bio.info/course/introduction-bioinformatics/">https://edu.t-bio.info/course/introduction-bioinformatics/</a></p>]]></description>
	<dc:creator>eliabrodsky</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/39307/awk-for-beginners</guid>
	<pubDate>Fri, 26 Apr 2019 16:19:41 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/39307/awk-for-beginners</link>
	<title><![CDATA[AWK for beginners !]]></title>
	<description><![CDATA[<p>AWK is a standard tool on every POSIX-compliant UNIX system. It&rsquo;s like flex/lex, from the command-line, perfect for text-processing tasks and other scripting needs. It has a C-like syntax, but without mandatory semicolons (although, you should use them anyway, because they are required when you&rsquo;re writing one-liners, something AWK excels at), manual memory management, or static typing. It excels at text processing. You can call to it from a shell script, or you can use it as a stand-alone scripting language.</p><p>Why use AWK instead of Perl? Readability. AWK is easier to read than Perl. For simple text-processing scripts, particularly ones that read files line by line and split on delimiters, AWK is probably the right tool for the job.</p><div><pre><span>#!/usr/bin/awk -f</span>

<span># Comments are like this</span>


<span># AWK programs consist of a collection of patterns and actions.</span>
<span>pattern1</span> <span>{</span> <span>action</span><span>;</span> <span>}</span> <span># just like lex</span>
<span>pattern2</span> <span>{</span> <span>action</span><span>;</span> <span>}</span>

<span># There is an implied loop and AWK automatically reads and parses each</span>
<span># record of each file supplied. Each record is split by the FS delimiter,</span>
<span># which defaults to white-space (multiple spaces,tabs count as one)</span>
<span># You can assign FS either on the command line (-F C) or in your BEGIN</span>
<span># pattern</span>

<span># One of the special patterns is BEGIN. The BEGIN pattern is true</span>
<span># BEFORE any of the files are read. The END pattern is true after</span>
<span># an End-of-file from the last file (or standard-in if no files specified)</span>
<span># There is also an output field separator (OFS) that you can assign, which</span>
<span># defaults to a single space</span>

<span>BEGIN</span> <span>{</span>

    <span># BEGIN will run at the beginning of the program. It's where you put all</span>
    <span># the preliminary set-up code, before you process any text files. If you</span>
    <span># have no text files, then think of BEGIN as the main entry point.</span>

    <span># Variables are global. Just set them or use them, no need to declare..</span>
    <span>count</span> <span>=</span> <span>0</span><span>;</span>

    <span># Operators just like in C and friends</span>
    <span>a</span> <span>=</span> <span>count</span> <span>+</span> <span>1</span><span>;</span>
    <span>b</span> <span>=</span> <span>count</span> <span>-</span> <span>1</span><span>;</span>
    <span>c</span> <span>=</span> <span>count</span> <span>*</span> <span>1</span><span>;</span>
    <span>d</span> <span>=</span> <span>count</span> <span>/</span> <span>1</span><span>;</span> <span># integer division</span>
    <span>e</span> <span>=</span> <span>count</span> <span>%</span> <span>1</span><span>;</span> <span># modulus</span>
    <span>f</span> <span>=</span> <span>count</span> <span>^</span> <span>1</span><span>;</span> <span># exponentiation</span>

    <span>a</span> <span>+=</span> <span>1</span><span>;</span>
    <span>b</span> <span>-=</span> <span>1</span><span>;</span>
    <span>c</span> <span>*=</span> <span>1</span><span>;</span>
    <span>d</span> <span>/=</span> <span>1</span><span>;</span>
    <span>e</span> <span>%=</span> <span>1</span><span>;</span>
    <span>f</span> <span>^=</span> <span>1</span><span>;</span>

    <span># Incrementing and decrementing by one</span>
    <span>a</span><span>++</span><span>;</span>
    <span>b</span><span>--</span><span>;</span>

    <span># As a prefix operator, it returns the incremented value</span>
    <span>++</span><span>a</span><span>;</span>
    <span>--</span><span>b</span><span>;</span>

    <span># Notice, also, no punctuation such as semicolons to terminate statements</span>

    <span># Control statements</span>
    <span>if</span> <span>(</span><span>count</span> <span>==</span> <span>0</span><span>)</span>
        <span>print</span> <span>"Starting with count of 0"</span><span>;</span>
    <span>else</span>
        <span>print</span> <span>"Huh?"</span><span>;</span>

    <span># Or you could use the ternary operator</span>
    <span>print</span> <span>(</span><span>count</span> <span>==</span> <span>0</span><span>)</span> <span>?</span> <span>"Starting with count of 0"</span> <span>:</span> <span>"Huh?"</span><span>;</span>

    <span># Blocks consisting of multiple lines use braces</span>
    <span>while</span> <span>(</span><span>a</span> <span>&lt;</span> <span>10</span><span>)</span> <span>{</span>
        <span>print</span> <span>"String concatenation is done"</span> <span>" with a series"</span> <span>" of"</span>
            <span>" space-separated strings"</span><span>;</span>
        <span>print</span> <span>a</span><span>;</span>

        <span>a</span><span>++</span><span>;</span>
    <span>}</span>

    <span>for</span> <span>(</span><span>i</span> <span>=</span> <span>0</span><span>;</span> <span>i</span> <span>&lt;</span> <span>10</span><span>;</span> <span>i</span><span>++</span><span>)</span>
        <span>print</span> <span>"Good ol' for loop"</span><span>;</span>

    <span># As for comparisons, they're the standards:</span>
    <span># a &lt; b   # Less than</span>
    <span># a &lt;= b  # Less than or equal</span>
    <span># a != b  # Not equal</span>
    <span># a == b  # Equal</span>
    <span># a &gt; b   # Greater than</span>
    <span># a &gt;= b  # Greater than or equal</span>

    <span># Logical operators as well</span>
    <span># a &amp;&amp; b  # AND</span>
    <span># a || b  # OR</span>

    <span># In addition, there's the super useful regular expression match</span>
    <span>if</span> <span>(</span><span>"foo"</span> <span>~</span> <span>"^fo+$"</span><span>)</span>
        <span>print</span> <span>"Fooey!"</span><span>;</span>
    <span>if</span> <span>(</span><span>"boo"</span> <span>!~</span> <span>"^fo+$"</span><span>)</span>
        <span>print</span> <span>"Boo!"</span><span>;</span>

    <span># Arrays</span>
    <span>arr</span><span>[</span><span>0</span><span>]</span> <span>=</span> <span>"foo"</span><span>;</span>
    <span>arr</span><span>[</span><span>1</span><span>]</span> <span>=</span> <span>"bar"</span><span>;</span>

    <span># You can also initialize an array with the built-in function split()</span>

    <span>n</span> <span>=</span> <span>split</span><span>(</span><span>"foo:bar:baz"</span><span>,</span> <span>arr</span><span>,</span> <span>":"</span><span>);</span>

    <span># You also have associative arrays (actually, they're all associative arrays)</span>
    <span>assoc</span><span>[</span><span>"foo"</span><span>]</span> <span>=</span> <span>"bar"</span><span>;</span>
    <span>assoc</span><span>[</span><span>"bar"</span><span>]</span> <span>=</span> <span>"baz"</span><span>;</span>

    <span># And multi-dimensional arrays, with some limitations I won't mention here</span>
    <span>multidim</span><span>[</span><span>0</span><span>,</span><span>0</span><span>]</span> <span>=</span> <span>"foo"</span><span>;</span>
    <span>multidim</span><span>[</span><span>0</span><span>,</span><span>1</span><span>]</span> <span>=</span> <span>"bar"</span><span>;</span>
    <span>multidim</span><span>[</span><span>1</span><span>,</span><span>0</span><span>]</span> <span>=</span> <span>"baz"</span><span>;</span>
    <span>multidim</span><span>[</span><span>1</span><span>,</span><span>1</span><span>]</span> <span>=</span> <span>"boo"</span><span>;</span>

    <span># You can test for array membership</span>
    <span>if</span> <span>(</span><span>"foo"</span> <span>in</span> <span>assoc</span><span>)</span>
        <span>print</span> <span>"Fooey!"</span><span>;</span>

    <span># You can also use the 'in' operator to traverse the keys of an array</span>
    <span>for</span> <span>(</span><span>key</span> <span>in</span> <span>assoc</span><span>)</span>
        <span>print</span> <span>assoc</span><span>[</span><span>key</span><span>];</span>

    <span># The command line is in a special array called ARGV</span>
    <span>for</span> <span>(</span><span>argnum</span> <span>in</span> <span>ARGV</span><span>)</span>
        <span>print</span> <span>ARGV</span><span>[</span><span>argnum</span><span>];</span>

    <span># You can remove elements of an array</span>
    <span># This is particularly useful to prevent AWK from assuming the arguments</span>
    <span># are files for it to process</span>
    <span>delete</span> <span>ARGV</span><span>[</span><span>1</span><span>];</span>

    <span># The number of command line arguments is in a variable called ARGC</span>
    <span>print</span> <span>ARGC</span><span>;</span>

    <span># AWK has several built-in functions. They fall into three categories. I'll</span>
    <span># demonstrate each of them in their own functions, defined later.</span>

    <span>return_value</span> <span>=</span> <span>arithmetic_functions</span><span>(</span><span>a</span><span>,</span> <span>b</span><span>,</span> <span>c</span><span>);</span>
    <span>string_functions</span><span>();</span>
    <span>io_functions</span><span>();</span>
<span>}</span>

<span># Here's how you define a function</span>
<span>function</span> <span>arithmetic_functions</span><span>(</span><span>a</span><span>,</span> <span>b</span><span>,</span> <span>c</span><span>,</span>     <span>d</span><span>)</span> <span>{</span>

    <span># Probably the most annoying part of AWK is that there are no local</span>
    <span># variables. Everything is global. For short scripts, this is fine, even</span>
    <span># useful, but for longer scripts, this can be a problem.</span>

    <span># There is a work-around (ahem, hack). Function arguments are local to the</span>
    <span># function, and AWK allows you to define more function arguments than it</span>
    <span># needs. So just stick local variable in the function declaration, like I</span>
    <span># did above. As a convention, stick in some extra whitespace to distinguish</span>
    <span># between actual function parameters and local variables. In this example,</span>
    <span># a, b, and c are actual parameters, while d is merely a local variable.</span>

    <span># Now, to demonstrate the arithmetic functions</span>

    <span># Most AWK implementations have some standard trig functions</span>
    <span>localvar</span> <span>=</span> <span>sin</span><span>(</span><span>a</span><span>);</span>
    <span>localvar</span> <span>=</span> <span>cos</span><span>(</span><span>a</span><span>);</span>
    <span>localvar</span> <span>=</span> <span>atan2</span><span>(</span><span>b</span><span>,</span> <span>a</span><span>);</span> <span># arc tangent of b / a</span>

    <span># And logarithmic stuff</span>
    <span>localvar</span> <span>=</span> <span>exp</span><span>(</span><span>a</span><span>);</span>
    <span>localvar</span> <span>=</span> <span>log</span><span>(</span><span>a</span><span>);</span>

    <span># Square root</span>
    <span>localvar</span> <span>=</span> <span>sqrt</span><span>(</span><span>a</span><span>);</span>

    <span># Truncate floating point to integer</span>
    <span>localvar</span> <span>=</span> <span>int</span><span>(</span><span>5.34</span><span>);</span> <span># localvar =&gt; 5</span>

    <span># Random numbers</span>
    <span>srand</span><span>();</span> <span># Supply a seed as an argument. By default, it uses the time of day</span>
    <span>localvar</span> <span>=</span> <span>rand</span><span>();</span> <span># Random number between 0 and 1.</span>

    <span># Here's how to return a value</span>
    <span>return</span> <span>localvar</span><span>;</span>
<span>}</span>

<span>function</span> <span>string_functions</span><span>(</span>    <span>localvar</span><span>,</span> <span>arr</span><span>)</span> <span>{</span>

    <span># AWK, being a string-processing language, has several string-related</span>
    <span># functions, many of which rely heavily on regular expressions.</span>

    <span># Search and replace, first instance (sub) or all instances (gsub)</span>
    <span># Both return number of matches replaced</span>
    <span>localvar</span> <span>=</span> <span>"fooooobar"</span><span>;</span>
    <span>sub</span><span>(</span><span>"fo+"</span><span>,</span> <span>"Meet me at the "</span><span>,</span> <span>localvar</span><span>);</span> <span># localvar =&gt; "Meet me at the bar"</span>
    <span>gsub</span><span>(</span><span>"e+"</span><span>,</span> <span>"."</span><span>,</span> <span>localvar</span><span>);</span> <span># localvar =&gt; "m..t m. at th. bar"</span>

    <span># Search for a string that matches a regular expression</span>
    <span># index() does the same thing, but doesn't allow a regular expression</span>
    <span>match</span><span>(</span><span>localvar</span><span>,</span> <span>"t"</span><span>);</span> <span># =&gt; 4, since the 't' is the fourth character</span>

    <span># Split on a delimiter</span>
    <span>n</span> <span>=</span> <span>split</span><span>(</span><span>"foo-bar-baz"</span><span>,</span> <span>arr</span><span>,</span> <span>"-"</span><span>);</span> <span># a[1] = "foo"; a[2] = "bar"; a[3] = "baz"; n = 3</span>

    <span># Other useful stuff</span>
    <span>sprintf</span><span>(</span><span>"%s %d %d %d"</span><span>,</span> <span>"Testing"</span><span>,</span> <span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>);</span> <span># =&gt; "Testing 1 2 3"</span>
    <span>substr</span><span>(</span><span>"foobar"</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>);</span> <span># =&gt; "oob"</span>
    <span>substr</span><span>(</span><span>"foobar"</span><span>,</span> <span>4</span><span>);</span> <span># =&gt; "bar"</span>
    <span>length</span><span>(</span><span>"foo"</span><span>);</span> <span># =&gt; 3</span>
    <span>tolower</span><span>(</span><span>"FOO"</span><span>);</span> <span># =&gt; "foo"</span>
    <span>toupper</span><span>(</span><span>"foo"</span><span>);</span> <span># =&gt; "FOO"</span>
<span>}</span>

<span>function</span> <span>io_functions</span><span>(</span>    <span>localvar</span><span>)</span> <span>{</span>

    <span># You've already seen print</span>
    <span>print</span> <span>"Hello world"</span><span>;</span>

    <span># There's also printf</span>
    <span>printf</span><span>(</span><span>"%s %d %d %d\n"</span><span>,</span> <span>"Testing"</span><span>,</span> <span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>);</span>

    <span># AWK doesn't have file handles, per se. It will automatically open a file</span>
    <span># handle for you when you use something that needs one. The string you used</span>
    <span># for this can be treated as a file handle, for purposes of I/O. This makes</span>
    <span># it feel sort of like shell scripting, but to get the same output, the string</span>
    <span># must match exactly, so use a variable:</span>

    <span>outfile</span> <span>=</span> <span>"/tmp/foobar.txt"</span><span>;</span>

    <span>print</span> <span>"foobar"</span> <span>&gt;</span> <span>outfile</span><span>;</span>

    <span># Now the string outfile is a file handle. You can close it:</span>
    <span>close</span><span>(</span><span>outfile</span><span>);</span>

    <span># Here's how you run something in the shell</span>
    <span>system</span><span>(</span><span>"echo foobar"</span><span>);</span> <span># =&gt; prints foobar</span>

    <span># Reads a line from standard input and stores in localvar</span>
    <span>getline</span> <span>localvar</span><span>;</span>

    <span># Reads a line from a pipe (again, use a string so you close it properly)</span>
    <span>cmd</span> <span>=</span> <span>"echo foobar"</span><span>;</span>
    <span>cmd</span> <span>|</span> <span>getline</span> <span>localvar</span><span>;</span> <span># localvar =&gt; "foobar"</span>
    <span>close</span><span>(</span><span>cmd</span><span>);</span>

    <span># Reads a line from a file and stores in localvar</span>
    <span>infile</span> <span>=</span> <span>"/tmp/foobar.txt"</span><span>;</span>
    <span>getline</span> <span>localvar</span> <span>&lt;</span> <span>infile</span><span>;</span> 
    <span>close</span><span>(</span><span>infile</span><span>);</span>
<span>}</span>

<span># As I said at the beginning, AWK programs consist of a collection of patterns</span>
<span># and actions. You've already seen the BEGIN pattern. Other</span>
<span># patterns are used only if you're processing lines from files or standard</span>
<span># input.</span>
<span>#</span>
<span># When you pass arguments to AWK, they are treated as file names to process.</span>
<span># It will process them all, in order. Think of it like an implicit for loop,</span>
<span># iterating over the lines in these files. these patterns and actions are like</span>
<span># switch statements inside the loop. </span>

<span>/^fo+bar$/</span> <span>{</span>

    <span># This action will execute for every line that matches the regular</span>
    <span># expression, /^fo+bar$/, and will be skipped for any line that fails to</span>
    <span># match it. Let's just print the line:</span>

    <span>print</span><span>;</span>

    <span># Whoa, no argument! That's because print has a default argument: $0.</span>
    <span># $0 is the name of the current line being processed. It is created</span>
    <span># automatically for you.</span>

    <span># You can probably guess there are other $ variables. Every line is</span>
    <span># implicitly split before every action is called, much like the shell</span>
    <span># does. And, like the shell, each field can be access with a dollar sign</span>

    <span># This will print the second and fourth fields in the line</span>
    <span>print</span> <span>$</span><span>2</span><span>,</span> <span>$</span><span>4</span><span>;</span>

    <span># AWK automatically defines many other variables to help you inspect and</span>
    <span># process each line. The most important one is NF</span>

    <span># Prints the number of fields on this line</span>
    <span>print</span> <span>NF</span><span>;</span>

    <span># Print the last field on this line</span>
    <span>print</span> <span>$</span><span>NF</span><span>;</span>
<span>}</span>

<span># Every pattern is actually a true/false test. The regular expression in the</span>
<span># last pattern is also a true/false test, but part of it was hidden. If you</span>
<span># don't give it a string to test, it will assume $0, the line that it's</span>
<span># currently processing. Thus, the complete version of it is this:</span>

<span>$</span><span>0</span> <span>~</span> <span>/^fo+bar$/</span> <span>{</span>
    <span>print</span> <span>"Equivalent to the last pattern"</span><span>;</span>
<span>}</span>

<span>a</span> <span>&gt;</span> <span>0</span> <span>{</span>
    <span># This will execute once for each line, as long as a is positive</span>
<span>}</span>

<span># You get the idea. Processing text files, reading in a line at a time, and</span>
<span># doing something with it, particularly splitting on a delimiter, is so common</span>
<span># in UNIX that AWK is a scripting language that does all of it for you, without</span>
<span># you needing to ask. All you have to do is write the patterns and actions</span>
<span># based on what you expect of the input, and what you want to do with it.</span>

<span># Here's a quick example of a simple script, the sort of thing AWK is perfect</span>
<span># for. It will read a name from standard input and then will print the average</span>
<span># age of everyone with that first name. Let's say you supply as an argument the</span>
<span># name of a this data file:</span>
<span>#</span>
<span># Bob Jones 32</span>
<span># Jane Doe 22</span>
<span># Steve Stevens 83</span>
<span># Bob Smith 29</span>
<span># Bob Barker 72</span>
<span>#</span>
<span># Here's the script:</span>

<span>BEGIN</span> <span>{</span>

    <span># First, ask the user for the name</span>
    <span>print</span> <span>"What name would you like the average age for?"</span><span>;</span>

    <span># Get a line from standard input, not from files on the command line</span>
    <span>getline</span> <span>name</span> <span>&lt;</span> <span>"/dev/stdin"</span><span>;</span>
<span>}</span>

<span># Now, match every line whose first field is the given name</span>
<span>$</span><span>1</span> <span>==</span> <span>name</span> <span>{</span>

    <span># Inside here, we have access to a number of useful variables, already</span>
    <span># pre-loaded for us:</span>
    <span># $0 is the entire line</span>
    <span># $3 is the third field, the age, which is what we're interested in here</span>
    <span># NF is the number of fields, which should be 3</span>
    <span># NR is the number of records (lines) seen so far</span>
    <span># FILENAME is the name of the file being processed</span>
    <span># FS is the field separator being used, which is " " here</span>
    <span># ...etc. There are plenty more, documented in the man page.</span>

    <span># Keep track of a running total and how many lines matched</span>
    <span>sum</span> <span>+=</span> <span>$</span><span>3</span><span>;</span>
    <span>nlines</span><span>++</span><span>;</span>
<span>}</span>

<span># Another special pattern is called END. It will run after processing all the</span>
<span># text files. Unlike BEGIN, it will only run if you've given it input to</span>
<span># process. It will run after all the files have been read and processed</span>
<span># according to the rules and actions you've provided. The purpose of it is</span>
<span># usually to output some kind of final report, or do something with the</span>
<span># aggregate of the data you've accumulated over the course of the script.</span>

<span>END</span> <span>{</span>
    <span>if</span> <span>(</span><span>nlines</span><span>)</span>
        <span>print</span> <span>"The average age for "</span> <span>name</span> <span>" is "</span> <span>sum</span> <span>/</span> <span>nlines</span><span>;</span>
<span>}</span>
</pre><p><span>&nbsp;</span></p></div>]]></description>
	<dc:creator>BioJoker</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/39302/understanding-reads-mapping-and-flags</guid>
	<pubDate>Thu, 25 Apr 2019 09:06:20 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/39302/understanding-reads-mapping-and-flags</link>
	<title><![CDATA[Understanding reads mapping and flags !]]></title>
	<description><![CDATA[<p><strong>Linear Alignment:</strong>&nbsp;An alignment of a read to a single reference sequence that may&nbsp;<q>include insertions, deletions, skips and clipping</q>,&nbsp;<span style="text-decoration: underline;">but may not include direction changes</span>&nbsp;(i.e. one portion of the alignment on forward strand and another portion of alignment on reverse strand).<sup id="fnref:1"><a href="https://yulijia.net/en/bioinformatics/2015/12/21/Linear-Chimeric-Supplementary-Primary-and-Secondary-Alignments.html#fn:1"><br /></a></sup></p><p><strong>Chimeric Alignment:</strong>&nbsp;An alignment of a read that cannot be represented as a linear alignment. Typically, one of the linear alignments in a chimeric alignment is considered the &ldquo;representative&rdquo; alignment, and the others are called &ldquo;supplementary&rdquo; and are distinguished by the supplementary alignment flag.<sup id="fnref:1:1"><a href="https://yulijia.net/en/bioinformatics/2015/12/21/Linear-Chimeric-Supplementary-Primary-and-Secondary-Alignments.html#fn:1"><br /></a></sup></p><p>Chimeric reads are indicative of structural variation in DNA-seq and it may indicate the presence of&nbsp;<a href="https://en.wikipedia.org/wiki/Chimeric_gene">chimeric genes</a>&nbsp;in RNA-seq.<sup id="fnref:2"><a href="https://yulijia.net/en/bioinformatics/2015/12/21/Linear-Chimeric-Supplementary-Primary-and-Secondary-Alignments.html#fn:2"><br /></a></sup></p><p>In short, chimeric reads can be split in to two or more parts, each part would be mapped to reference(it&rsquo;s not&nbsp;<a href="https://www.biostars.org/p/119537/">hard-clipped</a>), the total length of the mapped part is longger than read length.<sup id="fnref:3"><a href="https://yulijia.net/en/bioinformatics/2015/12/21/Linear-Chimeric-Supplementary-Primary-and-Secondary-Alignments.html#fn:3"><br /></a></sup></p><p><strong>Representative alignment:</strong>&nbsp;A chimeric alignment that is represented as a set of linear alignments that do not have large overlaps typically has one linear alignment that is considered the representative alignment.<sup id="fnref:4"><a href="https://yulijia.net/en/bioinformatics/2015/12/21/Linear-Chimeric-Supplementary-Primary-and-Secondary-Alignments.html#fn:4"><br /></a></sup></p><p>One read can align to multiple positions, we can find one alignmnet position which sequence do not have large overlaps, it called representative alighment, for other alignment positions, we called them supplementary alignment.</p><p>It seems that GATK can realignment those representative reads to the correctly position via&nbsp;<q>RealignerTargetCreator and IndelRealigner</q>. (WARNING: I am not quite sure if I understand this correctly. If someone could help me, please leave me a message below, thanks, thanks.)</p><p><strong>Supplementary Alignment:</strong>&nbsp;A chimeric reads but not a representative reads.</p><p><strong>Primary Alignment and Secondary Alignment:</strong>&nbsp;A read may map ambiguously to multiple locations, e.g. due to repeats.&nbsp;<strong>Only one of the multiple read alignments is considered primary</strong>,<span style="text-decoration: underline;">&nbsp;and this decision may be arbitrary</span>. All other alignments have the secondary alignment flag.<sup id="fnref:5"><a href="https://yulijia.net/en/bioinformatics/2015/12/21/Linear-Chimeric-Supplementary-Primary-and-Secondary-Alignments.html#fn:5"><br /></a></sup></p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/38765/list-of-tools-frequently-used-while-genome-assembly</guid>
	<pubDate>Tue, 22 Jan 2019 09:39:02 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/38765/list-of-tools-frequently-used-while-genome-assembly</link>
	<title><![CDATA[List of tools frequently used while genome assembly]]></title>
	<description><![CDATA[<h4>List of tools frequently used while genome assembly:</h4><p>I have used the following assemblers</p><ul>
<li><a href="http://bioinf.spbau.ru/spades">Spades</a>&nbsp;(v. 3.10.1)</li>
<li><a href="http://canu.readthedocs.io/en/stable/index.html">CANU</a>&nbsp;(v. 1.6)</li>
<li><a href="https://github.com/rrwick/Unicycler">Unicycler&nbsp;</a>(v. v0.4.1)</li>
<li><a href="https://github.com/lh3/miniasm">Miniasm</a>&nbsp;(v. 0.2-r137-dirty)</li>
</ul><p>I have used the following mappers</p><ul>
<li><a href="https://github.com/lh3/minimap2">minimap2</a>&nbsp;(v.&nbsp;2.0rc1-r232)</li>
<li><a href="https://github.com/lh3/minimap">minimap&nbsp;</a>(v. 0.2-r124-dirty)</li>
<li><a href="https://github.com/lh3/bwa">bwa</a>&nbsp;(v.&nbsp;0.7.12-r1039)</li>
</ul><p>I have used the following polishing tools</p><ul>
<li><a href="https://github.com/isovic/racon">Racon</a>&nbsp;(v. not available)</li>
<li><a href="https://github.com/broadinstitute/pilon">Pilon</a>&nbsp;(v. 1.18)</li>
<li><a href="https://github.com/jts/nanopolish">Nanopolish</a>&nbsp;(v. 0.8.3)</li>
</ul><p>I have used the following tools to assess genome assembly characteristics</p><ul>
<li><a href="https://github.com/chjp/ANI">ANI.pl</a>&nbsp;(https://github.com/chjp/ANI)</li>
<li><a href="http://ecogenomics.github.io/CheckM/">CheckM</a>&nbsp;(v. 1.0.7)</li>
<li><a href="https://github.com/tseemann/prokka">Prokka</a>&nbsp;(v. 1.12)</li>
<li><a href="http://bioinf.spbau.ru/en/quast">QUAST</a>&nbsp;(v. 2.3)</li>
<li><a href="http://mummer.sourceforge.net/">mummer&nbsp;</a>(v. not available)</li>
</ul><p>If you have any ideas or superior tools we have missed please let us know in the comments.</p>]]></description>
	<dc:creator>BioStar</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/38642/thank-you-email-after-bioinformatics-interview</guid>
	<pubDate>Tue, 08 Jan 2019 15:37:33 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/38642/thank-you-email-after-bioinformatics-interview</link>
	<title><![CDATA[Thank You Email After Bioinformatics Interview !]]></title>
	<description><![CDATA[<p>A good interview thank you email or note should contain three essential pieces:</p><p>a) Show appreciation for their time and thank them</p><p>b) Mention something specific you talked about in the interview, so they know it&rsquo;s not a cut &amp; paste email</p><p>c) Express interest in the position and tell them you&rsquo;re excited to learn more</p><p>d)&nbsp;Invite them to contact you if they have any questions/concerns, or need clarification on anything discussed</p><p>First sample:</p><blockquote><p>Dear Dr XYZ<br />I enjoyed speaking with you today about the XXX position&nbsp;at the X Lab, Uni. The job seems to be an excellent match for my&nbsp;skills and interests.<br /><br />The lab loaded with new updated technology and international experts,&nbsp;that you informed while interviewing confirmed my desire to work with&nbsp;X lab.<br /><br />In addition to my enthusiasm, I will bring to the position strong&nbsp;writing skills, assertiveness, and the ability to encourage others to&nbsp;work cooperatively with the group<br /><br />I appreciate the time you took to interview me. I am very interested&nbsp;in working with you and look forward to hearing from you regarding&nbsp;this position.<br /><br />Sincerely,<br />XXX</p></blockquote><p>Second sample:</p><p>&nbsp;</p><blockquote><p>Dear Dr XXX,</p><p>I wanted to take a second to thank you for your time . I enjoyed our conversation about and enjoyed learning about the position overall.</p><p>It sounds like an exciting opportunity, and an opportunity I could succeed and excel in! I&rsquo;m looking forward to hearing any updates you can share, and don&rsquo;t hesitate to contact me if you have any questions or concerns in the meantime.</p><p>Thanks again for the great conversation .</p><p>Best Regards,<br />XXX</p></blockquote>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/38618/canu-genome-assembly-parameters</guid>
	<pubDate>Mon, 07 Jan 2019 08:40:37 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/38618/canu-genome-assembly-parameters</link>
	<title><![CDATA[CANU genome assembly parameters !]]></title>
	<description><![CDATA[<p>Choose the appropriate parameters to run Canu and run it. The assembly will take about an hour. You can use two cores (parameter&nbsp;<code>-maxThreads=2</code>) and you would like to disable cluster option, since we compute on a single Amazon server set off the option to compute on cluster&nbsp;<code>useGrid=false</code>. This specifications should be for your project discussed with a local computing guru. The parameters that are in square brackets&nbsp;<code>[]</code>&nbsp;are optional, symbol&nbsp;<code>|</code>&nbsp;stands for "or".</p><pre><code>usage:   canu [-correct | -trim | -assemble | -trim-assemble] \
              [-s ] \
               -p  \
               -d  \
               genomeSize=[g|m|k] \
               -maxThreads=2 \
               useGrid=false \
              [other-options] \
               read_file.fastq.gz
</code></pre><p>A default&nbsp;<code>Canu</code>&nbsp;run produces usually high quality assembly, example of a command that was used for testing can be found below. However, there are still a lot of parameters that are possible to tweak. For example if we desire to assemble haplotypes separately of if we want to smash them together, we can alternate the error correction process.</p><pre><code>canu -p test_asmbl \
     -d asm_test3 \
     genomeSize=2m \
     -maxThreads=2 useGrid=false \
     -pacbio-raw \ ~/pacbio/dna/sample_reads.fastq.gz</code></pre><p>There is a brilliant&nbsp;<a href="http://canu.readthedocs.io/en/latest/faq.html#what-parameters-can-i-tweak">section in documentation</a>&nbsp;about parameter tweaking.</p><p>The output directory contains will contain many files. The most interesting ones are:</p><ul>
<li><code>*.correctedReads.fasta.gz</code>&nbsp;: file containing the input sequences after correction, trim and split based on consensus evidence.</li>
<li><code>*.trimmedReads.fastq</code>&nbsp;: file containing the sequences after correction and final trimming</li>
<li><code>*.layout</code>&nbsp;: file containing informations about read inclusion in the final assembly</li>
<li><code>*.gfa</code>&nbsp;: file containing the assembly graph by Canu</li>
<li><code>*.contigs.fasta</code>&nbsp;: file containing everything that could be assembled and is part of the primary assembly</li>
</ul><p>The basic stats of assembly can be read from reports generated by the assembler, or calculated using standard UNIX command line tools.</p><p>More at&nbsp;https://canu.readthedocs.io/en/latest/faq.html</p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/38277/understating-pacbio-reads-name</guid>
	<pubDate>Fri, 23 Nov 2018 07:36:46 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/38277/understating-pacbio-reads-name</link>
	<title><![CDATA[Understating pacbio reads name !]]></title>
	<description><![CDATA[<pre>m140415_143853_42175_c100635972550000001823121909121417_s1_p0/553/3100_11230 0.99 24
└1┘└─────2─────┘└──3─┘└────────────────4────────────────┘└5┘└6┘└7┘└────8────┘└─9─┘└10┘
</pre><ol>
<li>"<code>m</code>" =&nbsp;<em>movie</em></li>
<li>Time of Run Start (<code>yymmdd_hhmmss</code>)</li>
<li>Instrument Serial Number</li>
<li>SMRT Cell Barcode</li>
<li>Set Number (a.k.a. "Look Number". Deprecated field, used in earlier version of RS)</li>
<li>Part Number (usually "<code>p0</code>", "<code>X0</code>" when using expired reagents)</li>
<li>ZMW hole number</li>
<li>Subread Region (<code>start_stop</code>&nbsp;using polymerase read coordinates)</li>
<li>readScore</li>
<li>barcodeScore</li>
</ol>]]></description>
	<dc:creator>BioJoker</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/38248/how-to-set-up-ssh-on-ubuntu-1804</guid>
	<pubDate>Thu, 22 Nov 2018 10:12:00 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/38248/how-to-set-up-ssh-on-ubuntu-1804</link>
	<title><![CDATA[How to set up SSH on Ubuntu 18.04]]></title>
	<description><![CDATA[<p>SSH, also known as Secure Shell or Secure Socket Shell, is a network protocol that gives users, particularly system administrators, a secure way to access a computer over an unsecured network. SSH also refers to the suite of utilities that implement the SSH protocol.</p><p>Here are the commands used to connect by Secure SHell:</p><p>On the server side</p><blockquote><p><span style="font-size: 12.8px;">sudo apt-get install ssh</span></p><p><span style="font-size: 12.8px;">sudo apt-get install openssh-server</span></p><p><span style="font-size: 12.8px;">sudo /etc/init.d/ssh start</span></p><p>sudo nano /etc/ssh/sshd_config</p><p>Uncomment port 22<br />Uncomment HostKey /etc/ssh/ssh_host_rsa_key<br />Uncomment AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2<br />Set pubkey authentication to "yes"</p></blockquote><p>sudo systemctl restart sshd.service # or sudo /etc/init.d/ssh reload</p><p><br />On the client side:<br />in ~/.ssh</p><blockquote><p>ssh-keygen -t rsa # set passphrase or not<br />ssh-copy-id -i ~/.ssh/id_rsa user@100.100.10.100</p></blockquote><p>--&gt; write "yes" then password in</p><blockquote><p><br />ssh user@100.100.10.100</p></blockquote><p>--&gt; write password --&gt; you should be in</p><p>--&gt; in /home/user/.ssh/config type:<br /><strong>Host WhateverName</strong><br /><strong> HostName 100.100.10.100</strong><br /><strong> User username</strong><br /><strong> ForwardX11 yes</strong><br /><strong> ForwardAgent yes</strong><br /><strong> IdentityFile ~/.ssh/id_rsa</strong></p><p>--&gt; you should now be able to connect with :</p><blockquote><p>ssh WhateverName</p></blockquote>]]></description>
	<dc:creator>AnHo</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/38238/list-of-motif-discovery-tools</guid>
	<pubDate>Tue, 20 Nov 2018 03:54:26 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/38238/list-of-motif-discovery-tools</link>
	<title><![CDATA[List of motif discovery tools !]]></title>
	<description><![CDATA[<div><div>In genetics, a sequence motif is a nucleotide or amino-acid sequence pattern that is widespread and has, or is conjectured to have, a biological significance. For proteins, a sequence motif is distinguished from a structural motif, a motif formed by the three-dimensional arrangement of amino acids which may not be adjacent.</div><div>&nbsp;</div><div>Following are the list of tools for motif discovery:</div><div>&nbsp;</div><div><a href="http://genius.embnet.dkfz-heidelberg.de/menu/biounit/open-husar/">2Dsweep -- protein annotation by secondary structure elements</a></div><p>Perform secondary structure predictions on protein sequences.</p></div><div><div><a href="http://floresta.eead.csic.es/3dfootprint/">3D-footprint -- database of DNA-binding protein structures</a></div><p>Find binding specificity information about DNA-protein complexes.</p></div><div><div><a href="http://floresta.eead.csic.es/3dfootprint/">3D-footprint: DNA-binding protein database</a></div><p>Find information about the binding specificity of DNA-binding proteins.</p></div><div><div><a href="http://3d-partner.life.nctu.edu.tw/">3D-partner -- a web server to infer interacting partners and binding models</a></div><p>Predict interacting partners and binding models.</p></div><div><div><a href="http://motif.stanford.edu/distributions/3motif/">3MOTIF -- a protein structure visualization system for conserved sequence motifs</a></div><p>Use this web-based sequence motif visualization system to display sequence motif information in its appropriate three-dimensional (3D) context.</p></div><div><div><a href="http://bioinfo.mpiz-koeln.mpg.de/afawe/">AFAWE -- Automatic functional annotation in a distributed Web Services Environment</a></div><p>Protein function prediction and annotation in an integrated environment powered by web service.</p></div><div><div><a href="http://anchor.enzim.hu/">ANCHOR -- Prediction of Protein Binding Regions in Disordered Proteins</a></div><p>Find information about protein binding.</p></div><div><div><a href="http://annie.bii.a-star.edu.sg/annie/home.do">ANNIE -- ANNotation and Interpretation Environment for Protein Sequences</a></div><p>Use to predict function from de novo protein sequences.</p></div><div><div><a href="http://bioinformatica.isa.cnr.it/ASC/">Active Sequences Collection (ASC) database -- A new tool to assign functions to protein sequences</a></div><p>Search for short active protein sequences with demonstrated biological activities.</p></div><div><div><a href="http://blocks.fhcrc.org/">Blocks -- Ungapped segments in conserved protein sequences</a></div><p>Search for ungapped segments corresponding to the most highly conserved regions of proteins.</p></div><div><div><a href="http://cast.engr.uic.edu/">CASTp -- computed atlas of surface topography of proteins with structural and topographical mapping of functionally annotated residues</a></div><p>Identify and measure surface accessible pockets as well as interior inaccessible cavities, for proteins and other molecules.</p></div><div><div><a href="http://www.ebi.ac.uk/thornton-srv/databases/CSA">CSA -- The Catalytic Site Atlas</a></div><p>To search for catalytic residue annotation for enzymes in the Protein Data Bank.</p></div><div><div><a href="http://www.sbg.bio.ic.ac.uk/~confunc/">ConFunc -- Conserved residue Protein Function Prediction Server</a></div><p>Predict protein function using Gene Ontology.</p></div><div><div><a href="http://consurf.tau.ac.il/">ConSurf-DB -- evolutionary conservation profiles of protein structures database</a></div><p>Automatically calculate evolutionary conservation scores of key amino acid residues and map them on protein structures.</p></div><div><div><a href="http://salilab.org/DBAli/">DBAli -- A Database of Structure Alignments</a></div><p>Mine the protein structure space.</p></div><div><div><a href="http://dilimot.embl.de/">DILIMOT -- discovery of linear motifs in proteins</a></div><p>Predict short linear motifs (3-8 residues) in a set of protein sequences.</p></div><div><div><a href="http://www.ebi.ac.uk/dasty/">Dasty2 -- an Ajax protein DAS client</a></div><p>A web client for visualizing protein sequence feature information using DAS.</p></div><div><div><a href="http://genius.embnet.dkfz-heidelberg.de/menu/biounit/open-husar/">DomainSweep -- protein annotation by domain analysis</a></div><p>Identify the domain architecture within a protein sequence.</p></div><div><div><a href="http://e1ds.csbb.ntu.edu.tw/">E1DS -- catalytic site prediction based on 1D signatures of concurrent conservation</a></div><p>Predict enzyme catalytic site.</p></div><div><div><a href="http://elm.eu.org/">ELM -- Eukarotic Linear Motif Resource</a></div><p>Predict functional sites in eukaryotic proteins.</p></div><div><div><a href="http://us.expasy.org/tools/#proteome">EXPASY Proteome Tools Collection</a></div><p>Use a collection of tools for protein analyses.</p></div><div><div><a href="http://us.expasy.org/tools/findmod/">EXPASY-Findmod</a></div><p>Predict potential protein post-translational modifications and find potential single amino acid substitutions in peptides.</p></div><div><div><a href="http://mbs.cbrc.jp/EzCatDB/">EzCatDB -- the Enzyme Catalytic-mechanism Database</a></div><p>Search for information related to the catalytic mechanisms of enzymes.</p></div><div><div><a href="http://bioinf.cs.ucl.ac.uk/ffpred/">FFPred -- feature-based function prediction</a></div><p>An integrated feature-based function prediction server for vertebrate proteomes.</p></div><div><div><a href="http://www.ebi.ac.uk/printsscan/">FingerPRINT Scan</a></div><p>Identify the closest matching PRINTS sequence motif fingerprints in a protein sequence.</p></div><div><div><a href="http://firedb.bioinfo.cnio.es/">FireDB -- a database of functionally important residues from proteins of known structure</a></div><p>Search for functional annotation of important sites in proteins with known structures.</p></div><div><div><a href="http://bioserv.rpbs.univ-paris-diderot.fr/cgi-bin/Frog2">Frog2 -- a FRee Online druG 3D conformation generator</a></div><p>Produce 3D conformations of small drug compounds.</p></div><div><div><a href="http://www.hgpd.jp/">HGPD -- Human Gene and Protein Database</a></div><p>A database presenting experiment-based results in human proteomics.</p></div><div><div><a href="http://hhsenser.tuebingen.mpg.de/">HHsenser -- exhaustive transitive profile search using HMMx96HMM comparison</a></div><p>Conduct exhaustive intermediate profile searches of a set of homologous protein sequences.</p></div><div><div><a href="http://loschmidt.chemi.muni.cz/hotspotwizard/">HotSpot Wizard -- Substrate Specificity Hot Spot Identification web server</a></div><p>Design protein mutations in site-directed mutagenesis.</p></div><div><div><a href="http://phylogenomics.berkeley.edu/intrepid/">INTREPID -- INformation-theoretic TREe traversal for Protein functional site IDentification</a></div><p>Use for protein functional site identification.</p></div><div><div><a href="http://www.cbs.dtu.dk/">Integrating protein annotation resources through the Distributed Annotation System</a></div><p>Annotate protein using this integrated annotation resource.</p></div><div><div><a href="http://www.ebi.ac.uk/InterProScan/">InterProScan -- protein domains identifier</a></div><p>Identify protein family (and DNA) domains, patterns, motifs, protein families, and functional sites.</p></div><div><div><a href="http://kfc.mitchell-lab.org/">KFC -- Knowledge-based FADE and Contacts</a></div><p>Interactive forecasting of protein interaction hot spots.</p></div><div><div><a href="http://biominer.bime.ntu.edu.tw/magiicpro/">MAGIIC-PRO -- detecting functional signatures by efficient discovery of long patterns in protein sequences</a></div><p>Discover long patterns in protein sequences.</p></div><div><div><a href="http://prodata.swmed.edu/malisam">MALISAM -- Manual ALIgnments for Structurally Analogous Motifs</a></div><p>Database containing pairs of structural analogs and their alignments.</p></div><div><div><a href="http://meme.nbcr.net/">MEME -- discovering and analyzing DNA and protein sequence motifs</a></div><p>Find sequence patterns in DNA and protein sequences.</p></div><div><div><a href="http://www.nii.res.in/modpropep.html">MODPROPEP -- a program for knowledge-based modeling of protein-peptide complexes</a></div><p>A web server for knowledge-based modeling of protein-peptide complexes, specifically peptides in complex with major histocompatibility complex (MHC) proteins and kinases.</p></div><div><div><a href="http://www.bioinfo.tsinghua.edu.cn/~tigerchen/memo.html">MeMo -- a web tool for prediction of protein methylation modifications</a></div><p>Predict protein methylation sites.</p></div><div><div><a href="http://caps.ncbs.res.in/MegaMotifbase/index.html">MegaMotifBase -- a database of structural motifs in protein families and superfamilies</a></div><p>Find structural segments or motifs for protein structures.</p></div><div><div><a href="http://mnm.engr.uconn.edu/MNM/SMSSearchServlet">Minimotif Miner -- a tool for investigating protein function</a></div><p>Find motifs in a protein sequence.</p></div><div><div><a href="http://umber.sbs.man.ac.uk/dbbrowser/motif3d/motif3d.html">Motif3D -- Relating protein sequence motifs to 3D structure</a></div><p>Visualize protein sequence motifs on the 3D protein structures.</p></div><div><div><a href="http://myhits.isb-sib.ch/cgi-bin/motif_scan">MotifScan</a></div><p>Find presence of any known protein motif (Prosite and Pfam) in a protein sequence.</p></div><div><div><a href="http://bioinfo3d.cs.tau.ac.il/MultiBind">MultiBind -- Multiple Alignment of Protein Binding Sites</a></div><p>Recognize spatial chemical binding patterns common to a set of protein structures.</p></div><div><div><a href="http://mendel.imp.univie.ac.at/myristate/SUPLpredictor.htm">NMT -- The MYR Predictor</a></div><p>Analyze proteins for the presence of N-terminal N-myristoylation site.</p></div><div><div><a href="http://www.cbs.dtu.dk/services/NetNGlyc/">NetNGlyc -- N-Glycosylation sites prediction tool</a></div><p>Find the presence of N-Glycosylation sites in human proteins.</p></div><div><div><a href="http://www.cbs.dtu.dk/services/NetOGlyc/">NetOGly 3.1 -- O-glycosylation sites prediction tool</a></div><p>Find the presence of O-GalNAc (mucin type) glycosylation sites in mammalian proteins.</p></div><div><div><a href="http://www.cbs.dtu.dk/services/NetPhos/">NetPhos 2.0 -- Phosphorylation sites predictions</a></div><p>Analyze eukaryotic proteins for the presence of serine, threonine and tyrosine phosphorylation sites.</p></div><div><div><a href="http://www.cbs.dtu.dk/services/NetPhosK/">NetPhosK 1.0 Server -- kinase specific eukaryotic protein phosphorylation sites prediction tool</a></div><p>Find possible kinase specific phosphorylation sites in eukaryotic proteins.</p></div><div><div><a href="http://networkin.info/search.php">NetworKIN -- a resource for exploring cellular phosphorylation networks</a></div><div>&nbsp;</div></div><div><div><a href="http://neuroproteomics.scs.uiuc.edu/neuropred.html">NeuroPred -- a tool to predict cleavage sites in neuropeptide precursors and provide the masses of the resulting peptides</a></div><p>Predict cleavage sites at basic amino acid locations in neuropeptide precursor sequences.</p></div><div><div><a href="http://www.ebi.ac.uk/patentdata/nr/">Non-Redundant Patent Sequences - Patented Sequence Database</a></div><p>Find information about patented nucleotide and protein sequences.</p></div><div><div><a href="http://www.cbs.dtu.dk/databases/OGLYCBASE/">O-GLYCBASE</a></div><p>Search for information about glycoproteins with O-linked and C-linked glycosylation sites.</p></div><div><div><a href="http://www.pandora.cs.huji.ac.il/">PANDORA -- Protein ANnotation Diagram ORiented Analysis</a></div><p>Find information about protein sequence annotations.</p></div><div><div><a href="http://sunserver.cdfd.org.in:8080/protease/PAR_3D/index.html">PAR-3D -- Protein Active site Residue - 3D structural motif</a></div><p>A server to predict protein active site residues.</p></div><div><div><a href="http://wwwmgs.bionet.nsc.ru/mgs/gnw/pdbsite/">PDBSite -- a database of the 3D structure of protein functional sites</a></div><p>Search for structural and functional information on the protein functional sites.</p></div><div><div><a href="http://wwwmgs.bionet.nsc.ru/mgs/systems/fastprot/pdbsitescan.html">PDBSiteScan -- A program for searching for active, binding and posttranslational modification sites in the 3D structures of proteins</a></div><p>Search 3D protein fragments similar in structure to known active, binding and posttranslational modification sites.</p></div><div><div><a href="http://pedant.gsf.de/">PEDANT -- Protein Extraction, Description and ANalysis Tool</a></div><p>Conduct genome wide functional and structural analysis.</p></div><div><div><a href="http://phosida.org/">PHOSIDA -- Phosphorylation site database</a></div><p>Search for phosphorylation data of any protein of interest.</p></div><div><div><a href="http://www.phosphorylation.biochem.vt.edu/">PHOSPHORYLATION SITE DATABASE</a></div><p>Search for information on prokaryotic proteins that undergo serine, threonine, or tyrosine phosphorylation.</p></div><div><div><a href="http://www.jcvi.org/pn-utility/web/smarty_wrapper/about.php">PNU -- Protein Naming Utility</a></div><p>Determine correct names for proteins.</p></div><div><div><a href="http://mbs.cbrc.jp/poodle/poodle-s.html">POODLE-S -- Predicition Of Order and Disorder by machine LEarning</a></div><p>Web application for predicting protein disorder by using physicochemical features and reduced amino acid set of a position-specific scoring matrix.</p></div><div><div><a href="http://gemdock.life.nctu.edu.tw/ppisearch/">PPISearch -- Protein-Protein Interaction Search</a></div><p>Find homologous protein-protein interactions across multiple species.</p></div><div><div><a href="http://www.ebi.ac.uk/ppsearch/">PPSearch</a></div><p>Search your query sequence against PROSITE pattern database for protein motifs.</p></div><div><div><a href="http://pridb.gdcb.iastate.edu/">PRIDB -- Protein-RNA Interface DataBase</a></div><p>Find information about protein-RNA complexes from the Protein Data Bank (PDB).</p></div><div><div><a href="http://umber.sbs.man.ac.uk/dbbrowser/PRINTS/">PRINTS and its automatic supplement, prePRINTS -- A compendium of protein fingerprints</a></div><p>Search for protein fingerprints.</p></div><div><div><a href="http://www.expasy.org/prosite/">PROSITE</a></div><p>Identify protein families and domains for a given protein sequence.</p></div><div><div><a href="http://www.imtech.res.in/raghava/prrdb/">PRRDB -- Pattern Recognition Receptor Database</a></div><p>A comprehensive database of pattern-recognition receptors and their ligands.</p></div><div><div><a href="http://www.arabidopsis.org/cgi-bin/patmatch/nph-patmatch.pl">PatMatch -- a program for finding patterns in peptide and nucleotide sequences</a></div><p>Search for short nucleotide or peptide sequences such as cis-elements in nucleotide sequences or small domains and motifs in protein sequences.</p></div><div><div><a href="http://pepcyber.umn.edu/PPEP/">PepCyber:P~PEP -- a database of human protein protein interactions mediated by phosphoprotein-binding domains</a></div><p>Database specialized in documenting human PPBD-containing proteins and PPBD-mediated interactions.</p></div><div><div><a href="http://us.expasy.org/tools/peptidecutter/">PeptideCutter -- protein cleavage sites prediction tool</a></div><p>Predicts potential protease cleavage sites and sites cleaved by chemicals in a given protein sequence.</p></div><div><div><a href="http://phobius.binf.ku.dk/">Phobius -- A combined transmembrane topology and signal peptide predictor</a></div><p>Predict combined transmembrane topology and signal peptides.</p></div><div><div><a href="http://phospho.elm.eu.org/">Phospho.ELM -- a database of phosphorylation sites</a></div><p>Search for eukaryotic phosphorylation sites.</p></div><div><div><a href="http://www.phospho3d.org/">Phospho3D -- a database of three-dimensional structures of protein phosphorylation sites</a></div><p>Search for 3D structure and functional annotation of phosphorylation sites in proteins.</p></div><div><div><a href="http://www.phosphosite.org/">PhosphoSite -- A bioinformatics resource dedicated to physiological protein phosphorylation.</a></div><p>Search the database of in vivo phosphorylation sites of human and mouse proteins</p></div><div><div><a href="http://pxgrid.med.monash.edu.au/polyq/">PolyQ -- Polyglutamine Database</a></div><p>Find information about polyglutamine (polyQ) repeats.</p></div><div><div><a href="http://www.ebi.ac.uk/pratt/">Pratt Protein motif and pattern discovery</a></div><p>Find the presence of protein motifs and patterns in an amino acid sequence.</p></div><div><div><a href="http://www.predisi.de/">PrediSi -- Prediction of Signal Peptides and their Cleavage Positions</a></div><p>Predict signal peptide sequences and their cleavage positions in bacterial and eukaryotic amino acid sequences.</p></div><div><div><a href="http://www.ebi.ac.uk/thornton-srv/databases/ProFunc/">ProFunc -- a server for predicting protein function from 3D structure</a></div><p>Predict protein functions based on known structures.</p></div><div><div><a href="http://bioinfo41.weizmann.ac.il/promate/promateus.html">ProMateus--an open research approach to protein-binding sites analysis</a></div><p>Predict the location of potential protein-protein binding sites for unbound proteins.</p></div><div><div><a href="http://www.proteus.cs.huji.ac.il/">ProTeus -- identifying signatures in protein termini</a></div><p>Identify short linear signatures in protein termini.</p></div><div><div><a href="http://genius.embnet.dkfz-heidelberg.de/menu/cgi-bin/w2h-open/w2h.open/w2h.startthis?SIMGO=w2h%2ewelcome">ProtSweep -- protein annotation by homology</a></div><p>Analyze and identify newly obtained protein sequences.</p></div><div><div><a href="http://protemot.csbb.ntu.edu.tw/">Protemot -- prediction of protein binding sites with automatically extracted geometrical templates</a></div><p>Predict protein binding sites in a protein sequence based on geometrical analysis of protein tertiary substructures.</p></div><div><div><a href="http://quasimotifinder.tau.ac.il/">QuasiMotiFinder -- protein annotation by searching for evolutionarily conserved motif-like patterns</a></div><p>Search for evolutionarily conserved motif-like patterns in protein sequences.</p></div><div><div><a href="http://bindr.gdcb.iastate.edu/RNABindR">RNABindR -- software for prediction of RNA binding residues in proteins</a></div><p>Web-based server for analyzing and predicting RNA binding sites in proteins.</p></div><div><div><a href="http://caps.ncbs.res.in/scanmot/scanmot.html">SCANMOT -- searching for similar sequences using a simultaneous scan of multiple sequence motifs</a></div><p>Search for similarities between proteins by simultaneous matching of multiple motifs.</p></div><div><div><a href="http://bioinf.fbb.msu.ru/SDPpred/">SDPpred -- A Tool for Prediction of Amino Acid Residues that Determine Differences in Functional Specificity of Homologous Proteins</a></div><p>Predict residues in protein sequences that determine the proteins' functional specificity.</p></div><div><div><a href="http://tamm.mit.edu/SDR/">SDR -- Specificity Determining Residues Database</a></div><p>Predict specificity-determining residues in protein families.</p></div><div><div><a href="http://bioware.ucd.ie/~slimdisc/">SLiMDisc -- Short, Linear Motif Discovery</a></div><p>Find shared motifs in proteins with a common attribute.</p></div><div><div><a href="http://sumosp.biocuckoo.org/">SUMOsp -- a web server for sumoylation site prediction</a></div><p>Conduct in silico sumoylation sites prediction.</p></div><div><div><a href="http://oxytricha.princeton.edu/SWAKK/">SWAKK -- a web server for detecting positive selection in proteins using a sliding window substitution rate analysis</a></div><p>Detect protein sequence section under positive evolution selection.</p></div><div><div><a href="http://www.expasy.org/tools/scanprosite/">ScanProsite</a></div><p>Search for motifs and patterns within protein sequences.</p></div><div><div><a href="http://www.expasy.org/tools/scanprosite/">ScanProsite -- detection of PROSITE signature matches and ProRule-associated functional and structural residues in proteins</a></div><p>Detect patterns, profiles and motifs in a protein sequence.</p></div><div><div><a href="http://scansite.mit.edu/">ScanSite 2.0 -- Proteome-wide prediction of cell signaling interactions using short sequence motifs</a></div><p>Search for motifs within proteins that are likely to be phosphorylated by specific protein kinases or bind to domains such as SH2 domains, 14-3-3 domains or PDZ domains.</p></div><div><div><a href="http://sepresa.bio-x.cn/">SePreSA -- SErver for the PREdiction of populations susceptible to Serious Adverse drug reaction</a></div><p>Find information about populations carrying polymorphisms within protein binding pockets that make them susceptible to serious adverse drug reaction (SADR).</p></div><div><div><a href="http://motif.genome.jp/">Sequence Motif Search</a></div><p>Search the presence of a motif in either amino acid sequence or nucleotide sequence.</p></div><div><div><a href="http://www.csbio.sjtu.edu.cn/bioinf/Signal-3L/">Signal-3L -- A 3-layer approach for predicting signal peptides</a></div><p>Predict signal peptides.</p></div><div><div><a href="http://www.cbs.dtu.dk/services/SignalP/">SignalP -- Machine learning approaches to the prediction of signal peptides, their cleavage sites, and other protein sorting signals</a></div><p>Predict signal peptides and their cleavage sites.</p></div><div><div><a href="http://us.expasy.org/tools/sulfinator/">Sulfinator -- tyrosine sulfation sites prediction tool</a></div><p>Predict the presence of tyrosine sulfation sites in protein sequences</p></div><div><div><a href="http://bioinf-services.charite.de/supersite/">SuperSite -- Ligand Binding Site Database</a></div><p>Look at protein structure from a ligand and binding site perspective.</p></div><div><div><a href="http://www.ch.embnet.org/">Swiss EMBnet node web server</a></div><p>Use a collection of bioinformatics tools at this portal site.</p></div><div><div><a href="http://bioinfo.montp.cnrs.fr/?r=t-reks">T-REKS -- identification of Tandem REpeats in sequences with a K-meanS based algorithm</a></div><p>Find information about tandem repeats in proteins that carry fundamental biological functions and are related to a number of human diseases.</p></div><div><div><a href="http://tmbeta-genome.cbrc.jp/TMFunction/">TMFunction -- The Functional Database of Membrane Proteins</a></div><p>Find information about functional residues in alpha-helical and beta-barrel membrane proteins.</p></div><div><div><a href="http://topdom.enzim.hu/">TOPDOM -- Conservatively Located Domains and Motifs in Transmembrane Proteins</a></div><p>Database of domains and motifs with conservative location in transmembrane proteins.</p></div><div><div><a href="http://motif.stanford.edu/distributions/emotif/">The EMOTIF database</a></div><p>Search for highly conserved and specific protein sequence motifs.</p></div><div><div><a href="http://treedetv2.bioinfo.cnio.es/treedet/index.html">TreeDet -- Predicting Functional Residues in Protein Sequence Alignments</a></div><p>Predict functional sites in protein sequence alignments use different methodologies.</p></div><div><div><a href="http://motif.bmi.ohio-state.edu/ChIPMotifs/">W-ChIPMotifs -- ChIP-based protein Motif discovery web server</a></div><p>Find de novo protein motifs from chromatin immunoprecipitation data.</p></div><div><div><a href="http://feature.stanford.edu/webfeature/">WebFEATURE -- an interactive web tool for identifying and visualizing functional sites on macromolecular structures</a></div><p>Scan query structures for functional sites in both proteins and nucleic acids.</p></div><div><div><a href="http://wwwmgs.bionet.nsc.ru/mgs/programs/panalyst/">WebProAnalyst -- an interactive tool for analysis of quantitative structurex96activity relationships in protein families</a></div><p>Analyze quantitative structure-activity relationship of related protein families.</p></div><div><div><a href="http://motif.stanford.edu/distributions/eblocks/">eBLOCKs -- enumerating conserved protein blocks to achieve maximal sensitivity and specificity</a></div><p>Search for ungapped alignments of highly conserved regions among a protein family or superfamily.</p></div><div><div><a href="http://ef-site.hgc.jp/eF-seek/">eF-seek -- prediction of the functional sites of proteins by searching for similar electrostatic potential and molecular surface shape</a></div><p>Predict the functional sites of proteins.</p></div><div><div><a href="http://firedb.bioinfo.cnio.es/Php/FireStar.php">firestar -- prediction of functionally important residues using structural templates and alignment reliability</a></div><p>An expert system for predicting ligand-binding residues in protein structures.</p></div><div><div><a href="http://caps.ncbs.res.in/imotdb/">iMOTdb -- a comprehensive collection of spatially interacting motifs in proteins</a></div><p>Automatically identify spatially interacting motifs among distantly related proteins sharing similar folds and possessing common ancestral lineage.</p></div>]]></description>
	<dc:creator>Neel</dc:creator>
</item>

</channel>
</rss>