<?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/11175?offset=150</link>
	<atom:link href="https://bioinformaticsonline.com/related/11175?offset=150" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/news/view/22133/r-320-is-released</guid>
	<pubDate>Sat, 18 Apr 2015 05:06:44 -0500</pubDate>
	<link>https://bioinformaticsonline.com/news/view/22133/r-320-is-released</link>
	<title><![CDATA[R 3.2.0 is released]]></title>
	<description><![CDATA[<p>R 3.2.0 (codename &ldquo;Full of Ingredients&rdquo;)&nbsp;was <a href="http://r.789695.n4.nabble.com/R-3-2-0-is-released-td4705933.html" target="_blank">released yesterday</a>.&nbsp;You can get the latest binaries version <strong><a href="http://cran.rstudio.com/" target="_blank">from here</a>.</strong>&nbsp;(or the .tar.gz&nbsp;<strong>source</strong> code from <a href="http://cran.r-project.org/src/base/R-3/R-3.2.0.tar.gz" target="_blank">here</a>).&nbsp;The full list of new features and bug fixes is provided below.</p><h3>Upgrading to R 3.2.0 on Windows</h3><p>If you are using <strong>Windows&nbsp;</strong>you can easily upgrade to the latest version of R using <a href="http://cran.r-project.org/web/packages/installr/" target="_blank">the installr package</a>. Simply run the following code:</p><div><table>
<tbody>
<tr id="p612572">
<td id="p61257code2">
<pre><span style="color: #228b22;"># installing/loading the latest installr package:</span>
<span style="color: #0000ff; font-weight: bold;">install.<span>packages</span></span><span style="color: #080;">(</span><span style="color: #ff0000;">"installr"</span><span style="color: #080;">)</span><span style="color: #080;">;</span> <span style="color: #0000ff; font-weight: bold;">library</span><span style="color: #080;">(</span>installr<span style="color: #080;">)</span> <span style="color: #228b22;">#load / install+load installr</span>
&nbsp;
updateR<span style="color: #080;">(</span><span style="color: #080;">)</span> <span style="color: #228b22;"># updating R.</span></pre>
</td>
</tr>
</tbody>
</table></div><p><span>Running &ldquo;updateR()&rdquo; will detect if there is a new R version available, and if so it will download+install it (etc.).</span></p><p><span><strong>If you are an R blogger yourself</strong> you are invited to <a href="http://www.r-bloggers.com/add-your-blog/">add your own R content feed to this site</a> (<strong>Non-English</strong> R bloggers should add themselves- <a href="http://www.r-bloggers.com/lang/add-your-blog">here</a>)</span></p><h4>NEW FEATURES</h4><ul>
<li><code>anyNA()</code> gains a <code>recursive</code> argument.</li>
<li>When <code>x</code> is missing and <code>names</code> is not false (including the default value), <code>Sys.getenv(x, names)</code> returns an object of class <code>"Dlist"</code> and hence prints tidily.</li>
<li>(Windows.) <code>shell()</code> no longer consults the environment variable <span>SHELL</span>: too many systems have been encountered where it was set incorrectly (usually to a path where software was compiled, not where it was installed). <span>R_SHELL</span>, the preferred way to select a non-default shell, can be used instead.</li>
<li>Some unusual arguments to <code>embedFonts()</code> can now be specified as character vectors, and the defaults have been changed accordingly.</li>
<li>Functions in the <code>Summary</code> group duplicate less. (<a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15798" target="_blank">PR#15798</a>)</li>
<li>(Unix-alikes.) <code>system(cmd, input = )</code> now uses &lsquo;shell-execution-environment&rsquo; redirection, which will be more natural if <code>cmd</code> is not a single command (but requires a POSIX-compliant shell). (Wish of <a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15508" target="_blank">PR#15508</a>)</li>
<li><code>read.fwf()</code> and <code>read.DIF()</code> gain a <code>fileEncoding</code> argument, for convenience.</li>
<li>Graphics devices can add attributes to their description in <code>.Device</code> and <code>.Devices</code>. Several of those included with <strong>R</strong> use a <code>"filepath"</code> attribute.</li>
<li><code>pmatch()</code> uses hashing in more cases and so is faster at the expense of using more memory. (<a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15697" target="_blank">PR#15697</a>)</li>
<li><code>pairs()</code> gains new arguments to select sets of variables to be plotted against each other.</li>
<li><code>file.info(, extra_cols = FALSE)</code> allows a minimal set of columns to be computed on Unix-alikes: on some systems without properly-configured caching this can be significantly faster with large file lists.</li>
<li>New function <code>dir.exists()</code> in package <span>base</span> to test efficiently whether one or more paths exist and are directories.</li>
<li><code>dput()</code> and friends gain new controls <span>hexNumeric</span> and <span>digits17</span> which output double and complex quantities as, respectively, binary fractions (exactly, see <code>sprintf("%a")</code>) and as decimals with up to 17 significant digits.</li>
<li><code>save()</code>, <code>saveRDS()</code> and <code>serialize()</code> now support <code>ascii = NA</code> which writes ASCII files using <code>sprintf("%a")</code> for double/complex quantities. This is read-compatible with <code>ascii = TRUE</code> but avoids binary-&gt;decimal-&gt;binary conversions with potential loss of precision. Unfortunately the Windows C runtime&rsquo;s lack of C99 compliance means that the format cannot be read correctly there in <strong>R</strong> before 3.1.2.</li>
<li>The default for <code>formatC(decimal.mark =)</code> has been changed to be <code>getOption("OutDec")</code>; this makes it more consistent with <code>format()</code> and suitable for use in print methods, e.g. those for classes <code>"density"</code>, <code>"ecdf"</code>, <code>"stepfun"</code> and <code>"summary.lm"</code>.
<p><code>getOption("OutDec")</code> is now consulted by the print method for class <code>"kmeans"</code>, by <code>cut()</code>, <code>dendrogram()</code>, <code>plot.ts()</code> and <code>quantile()</code> when constructing labels and for the report from<code>legend(trace = TRUE)</code>.</p>
<p>(In part, wish of <a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15819" target="_blank">PR#15819</a>.)</p>
</li>
<li><code>printNum()</code> and hence <code>format()</code> and <code>formatC()</code> give a warning if <code>big.mark</code> and <code>decimal.mark</code> are set to the same value (period and comma are not uncommonly used for each, and this is a check that conventions have not got mixed).</li>
<li><code>merge()</code> can create a result which uses long vectors on 64-bit platforms.</li>
<li><code>dget()</code> gains a new argument <code>keep.source</code> which defaults to <code>FALSE</code> for speed (<code>dput()</code> and <code>dget()</code> are most often used for data objects where this can make <code>dget()</code> many times faster).</li>
<li>Packages may now use a file of common macro definitions in their help files, and may import definitions from other packages.</li>
<li>A number of macros have been added in the new &lsquo;<span>share/Rd</span>&rsquo; directory for use in package overview help pages, and <code>promptPackage()</code> now makes use of them.</li>
<li><code>tools::parse_Rd()</code> gains a new <code>permissive</code> argument which converts unrecognized macros into text. This is used by <code>utils:::format.bibentry</code> to allow LaTeX markup to be ignored.</li>
<li><code>options(OutDec =)</code> can now specify a multi-byte character, e.g., <code>options(OutDec = "u00b7")</code> in a UTF-8 locale.</li>
<li><code>is.recursive(x)</code> is no longer true when <code>x</code> is an external pointer, a weak reference or byte code; the first enables <code>all.equal(x, x)</code> when <code>x .</code></li>
<li><code>ls()</code> (aka <code>objects()</code>) and <code>as.list.environment()</code> gain a new argument <code>sorted</code>.</li>
<li>The <code>"source"</code> attribute (which has not been added to functions by <strong>R</strong> since before <strong>R</strong> version 2.14.0) is no longer treated as special.</li>
<li>Function <code>returnValue()</code> has been added to give <code>on.exit()</code> code access to a function&rsquo;s return value for debugging purposes.</li>
<li><code>crossprod(x, y)</code> allows more matrix coercions when <code>x</code> or <code>y</code> are vectors, now equalling <code>t(x) %*% y</code> in these cases (also reported by Radford Neal). Similarly, <code>tcrossprod(x,y)</code> and <code>%*%</code> work in more cases with vector arguments.</li>
<li>Utility function <code>dynGet()</code> useful for detecting cycles, aka infinite recursions.</li>
<li>The byte-code compiler and interpreter include new instructions that allow many scalar subsetting and assignment and scalar arithmetic operations to be handled more efficiently. This can result in significant performance improvements in scalar numerical code.</li>
<li><code>apply(m, 2, identity)</code> is now the same as the matrix <code>m</code> when it has <em>named</em> row names.</li>
<li>A new function <code>debuggingState()</code> has been added, allowing to temporarily turn off debugging.</li>
<li><code>example()</code> gets a new optional argument <code>run.donttest</code> and <code>tools::Rd2ex()</code> a corresponding <code>commentDonttest</code>, with a default such that <code>example(..)</code> in help examples will run <code>donttest</code> code only if used interactively (a change in behaviour).</li>
<li><code>rbind.data.frame()</code> gains an optional argument <code>make.row.names</code>, for potential speedup.</li>
<li>New function <code>extSoftVersion()</code> to report on the versions of third-party software in use in this session. Currently reports versions of <code>zlib</code>, <code>bzlib</code>, the <code>liblzma</code> from <code>xz</code>, PCRE, ICU, TRE and the <code>iconv</code> implementation.
<p>A similar function <code>grSoftVersion()</code> in package <span>grDevices</span> reports on third-party graphics software.</p>
<p>Function <code>tcltk::tclVersion()</code> reports the Tcl/Tk version.</p>
</li>
<li>Calling <code>callGeneric()</code> without arguments now works with primitive generics to some extent.</li>
<li><code>vapply(x, FUN, FUN.VALUE)</code> is more efficient notably for large <code>length(FUN.VALUE)</code>; as extension of <a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=16061" target="_blank">PR#16061</a>.</li>
<li><code>as.table()</code> now allows tables with one or more dimensions of length 0 (such as <code>as.table(integer())</code>).</li>
<li><code>names(x) now clears the names of call and <code>...</code> objects.</code></li>
<li><code>library()</code> will report a warning when an insufficient dependency version is masking a sufficient one later on the library search path.</li>
<li>A new <code>plot()</code> method for class <code>"raster"</code> has been added.</li>
<li>New <code>check_packages_in_dir_changes()</code> function in package <span>tools</span> for conveniently analyzing how changing sources impacts the check results of their reverse dependencies.</li>
<li>Speed-up from Peter Haverty for <code>ls()</code> and <code>methods:::.requirePackage()</code> speeding up package loading. (<a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=16133" target="_blank">PR#16133</a>)</li>
<li>New <code>get0()</code> function, combining <code>exists()</code> and <code>get()</code> in one call, for efficiency.</li>
<li><code>match.call()</code> gains an <code>envir</code> argument for specifying the environment from which to retrieve the <code>...</code> in the call, if any; this environment was wrong (or at least undesirable) when the<code>definition</code> argument was a function.</li>
<li><code>topenv()</code> has been made <code>.Internal()</code> for speedup, based on Peter Haverty&rsquo;s proposal in <a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=16140" target="_blank">PR#16140</a>.</li>
<li><code>getOption()</code> no longer calls <code>options()</code> in the main case.</li>
<li>Optional use of <code>libcurl</code> (version 7.28.0 from Oct 2012 or later) for Internet access:
<ul>
<li><code>capabilities("libcurl")</code> reports if this is available.</li>
<li><code>libcurlVersion()</code> reports the version in use, and other details of the <code>"libcurl"</code> build including which URL schemes it supports.</li>
<li><code>curlGetHeaders()</code> retrieves the headers for <code>http://</code>, <code>https://</code>, <code>ftp://</code> and <code>ftps://</code> URLs: analysis of these headers can provide insights into the &lsquo;existence&rsquo; of a URL (it might for example be permanently redirected) and is so used in <code>R CMD check --as-cran</code>.</li>
<li><code>download.file()</code> has a new optional method <code>"libcurl"</code> which will handle more URL schemes, follow redirections, and allows simultaneous downloads of multiple URLs.</li>
<li><code>url()</code> has a new method <code>"libcurl"</code> which handles more URL schemes and follows redirections. The default method is controlled by a new option <code>url.method</code>, which applies also to the opening of URLs <em>via</em> <code>file()</code> (which happens implicitly in functions such as <code>read.table</code>.)</li>
<li>When <code>file()</code> or <code>url()</code> is invoked with a <code>https://</code> or <code>ftps://</code> URL which the current method cannot handle, it switches to a suitable method if one is available.</li>
</ul>
</li>
<li>(Windows.) The DLLs &lsquo;<span>internet.dll</span>&rsquo; and &lsquo;<span>internet2.dll</span>&rsquo; have been merged. In this version it is safe to switch (repeatedly) between the internal and Windows internet functions within an <strong>R</strong>session.
<p>The Windows internet functions are still selected by flag <span>&ndash;internet2</span> or <code>setInternet2()</code>. This can be overridden for an <code>url()</code> connection <em>via</em> its new <code>method</code> argument.</p>
<p><code>download.file()</code> has new method <code>"wininet"</code>, selected as the default by <span>&ndash;internet2</span> or <code>setInternet2()</code>.</p>
</li>
<li><code>parent.env&lt;-</code> can no longer modify the parent of a locked namespace or namespace imports environment. Contributed by Karl Millar.</li>
<li>New function <code>isLoadedNamespace()</code> for readability and speed.</li>
<li><code>names(env)</code> now returns all the object names of an <code>environment</code> <code>env</code>, equivalently to <code>ls(env, all.names = TRUE, sorted = FALSE)</code> and also to the names of the corresponding list,<code>names(as.list(env, all.names = TRUE))</code>. Note that although <code>names()</code> returns a character vector, the names have no particular ordering.</li>
<li>The memory manager now grows the heap more aggressively. This reduces the number of garbage collections, in particular while data or code are loaded, at the expense of slightly increasing the memory footprint.</li>
<li>New function <code>trimws()</code> for removing leading/trailing whitespace.</li>
<li><code>cbind()</code> and <code>rbind()</code> now consider S4 inheritance during S3 dispatch and also obey <code>deparse.level</code>.</li>
<li><code>cbind()</code> and <code>rbind()</code> will delegate recursively to <code>methods::cbind2</code> (<code>methods::rbind2</code>) when at least one argument is an S4 object and S3 dispatch fails (due to ambiguity).</li>
<li>(Windows.) <code>download.file(quiet = FALSE)</code> now uses text rather than Windows progress bars in non-interactive use.</li>
<li>New function <code>hsearch_db()</code> in package <span>utils</span> for building and retrieving the help search database used by <code>help.search()</code>, along with functions for inspecting the concepts and keywords in the help search database.</li>
<li>New function <code>.getNamespaceInfo()</code>, a no-check version of <code>getNamespaceInfo()</code> mostly for internal speedups.</li>
<li>The help search system now takes <span>keyword</span> entries in Rd files which are not standard keywords (as given in &lsquo;<span>KEYWORDS</span>&rsquo; in the <strong>R</strong> documentation directory) as concepts. For standard keyword entries the corresponding descriptions are additionally taken as concepts.</li>
<li>New <code>lengths()</code> function for getting the lengths of all elements in a list.</li>
<li>New function <code>toTitleCase()</code> in package <span>tools</span>, tailored to package titles.</li>
<li>The matrix methods of <code>cbind()</code> and <code>rbind()</code> allow matrices as inputs which have <em>2^31</em> or more elements. (For <code>cbind()</code>, wish of <a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=16198" target="_blank">PR#16198</a>.)</li>
<li>The default method of <code>image()</code> has an explicit check for a numeric or logical matrix (which was always required).</li>
<li><code>URLencode()</code> will not by default encode further URLs which appear to be already encoded.</li>
<li><code>BIC(mod)</code> and <code>BIC(mod, mod2)</code> now give non-NA numbers for <code>arima()</code> fitted models, as <code>nobs(mod)</code> now gives the number of &ldquo;used&rdquo; observations for such models. This fixes <a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=16198" target="_blank">PR#16198</a>, quite differently than proposed there.</li>
<li>The <code>print()</code> methods for <code>"htest"</code>, <code>"pairwise.htest"</code> and <code>"power.htest"</code> objects now have a <code>digits</code> argument defaulting to (a function of) <code>getOption("digits")</code>, and influencing all printed numbers coherently. Unavoidably, this changes the display of such test results in some cases.</li>
<li>Code completion for namespaces now recognizes all loaded namespaces, rather than only the ones that are also attached.</li>
<li>The code completion mechanism can now be replaced by a user-specified completer function, for (temporary) situations where the usual code completion is inappropriate.</li>
<li><code>unzip()</code> will now warn if it is able to detect truncation when unpacking a file of 4GB or more (related to <a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=16243" target="_blank">PR#16243</a>).</li>
<li><code>methods()</code> reports S4 in addition to S3 methods; output is simplified when the <code>class</code> argument is used. <code>.S3methods()</code> and <code>methods::.S4methods()</code> report S3 and S4 methods separately.</li>
<li>Higher order functions such as the <code>apply</code> functions and <code>Reduce()</code> now force arguments to the functions they apply in order to eliminate undesirable interactions between lazy evaluation and variable capture in closures. This resolves <a href="https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=16093" target="_blank">PR#16093</a>.</li>
</ul><p>More at http://cran.rstudio.com/</p><p>Reference: http://www.r-bloggers.com/r-3-2-0-is-released-using-the-installr-package-to-upgrade-in-windows-os/</p>]]></description>
	<dc:creator>Neel</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/26559/microscope</guid>
	<pubDate>Fri, 04 Mar 2016 05:26:31 -0600</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/26559/microscope</link>
	<title><![CDATA[Microscope]]></title>
	<description><![CDATA[<p>Microscope Platform user documentation.</p>
<p>The MicroScope platform is available at this URL:</p>
<p><a href="https://www.genoscope.cns.fr/agc/microscope">https://www.genoscope.cns.fr/agc/microscope</a></p><p>Address of the bookmark: <a href="http://microscope.readthedocs.org/en/latest/index.html" rel="nofollow">http://microscope.readthedocs.org/en/latest/index.html</a></p>]]></description>
	<dc:creator>Jitendra Narayan</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/27225/painless-package-development-for-r</guid>
	<pubDate>Tue, 03 May 2016 05:31:06 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/27225/painless-package-development-for-r</link>
	<title><![CDATA[Painless package development for R]]></title>
	<description><![CDATA[<p>Devtools makes package development a breeze: it works with R&rsquo;s existing conventions for code structure, adding efficient tools to support the cycle of package development. With devtools, developing a package becomes so easy that it will be your default layout whenever you&rsquo;re writing a significant amount of code.</p>
<p>Before you get started be sure to check out:</p>
<ul>
<li><a href="https://groups.google.com/forum/#%21forum/rdevtools" title="Google devtools Group">devtools Google Group &ndash;&nbsp;https://groups.google.com/forum/#!forum/rdevtools</a></li>
<li><a href="http://adv-r.had.co.nz/" title="Hadley W Online Book">book on &ldquo;Advanced R programming&rdquo; &ndash;&nbsp;http://adv-r.had.co.nz/</a></li>
<li><a href="https://github.com/hadley/devtools" title="devtools GitHub">GitHub repository &ndash;&nbsp;https://github.com/hadley/devtools</a></li>
</ul>
<h3 id="getting_started">&nbsp;</h3><p>Address of the bookmark: <a href="https://www.rstudio.com/products/rpackages/devtools/" rel="nofollow">https://www.rstudio.com/products/rpackages/devtools/</a></p>]]></description>
	<dc:creator>Abhi</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/33398/tiny-python36-notebook</guid>
	<pubDate>Sat, 03 Jun 2017 03:16:28 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/33398/tiny-python36-notebook</link>
	<title><![CDATA[Tiny Python3.6 Notebook]]></title>
	<description><![CDATA[<p><span>This is not so much an instructional manual, but rather notes, tables, and examples for Python syntax. It was created by the author as an additional resource during training, meant to be distributed as a physical notebook. Participants (who favor the physical characteristics of dead tree material) could add their own notes, thoughts, and have a valuable reference of curated examples.</span></p><p>Address of the bookmark: <a href="https://github.com/mattharrison/Tiny-Python-3.6-Notebook/blob/master/python.rst" rel="nofollow">https://github.com/mattharrison/Tiny-Python-3.6-Notebook/blob/master/python.rst</a></p>]]></description>
	<dc:creator>Neel</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/44865/snp-analysis-unlocking-the-secrets-in-our-dna</guid>
	<pubDate>Wed, 16 Jul 2025 01:31:45 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/44865/snp-analysis-unlocking-the-secrets-in-our-dna</link>
	<title><![CDATA[SNP Analysis: Unlocking the Secrets in Our DNA]]></title>
	<description><![CDATA[<p>Single Nucleotide Polymorphisms (SNPs) are the most common type of genetic variation in humans&mdash;and many other organisms. A single base change in the DNA sequence (for example, an A instead of a G) can influence everything from our eye color to our risk of developing diseases. Analyzing these tiny changes has become central to modern genetics, medicine, agriculture, and evolutionary biology.</p><p><strong>What are SNPs?</strong><br />SNPs (pronounced "snips") are positions in the genome where individuals differ by a single nucleotide. For example:</p><p>Reference: ...A T G C A T G A...<br />Variant:&nbsp; &nbsp; &nbsp;...A T G T A T G A...</p><p>Here, the C in the reference genome has been replaced by a T in the variant.</p><p>SNPs occur roughly every 300&ndash;1,000 bases in the human genome, meaning there are millions of them scattered throughout our DNA. Most SNPs have no effect on health, but some are linked to disease susceptibility, drug response, and other traits.</p><p><strong>Why Do We Analyze SNPs?</strong><br />1. Medical Genetics</p><p>Identify disease-associated variants (e.g., BRCA1/2 in breast cancer).</p><p>Predict drug response (pharmacogenomics).</p><p>Enable precision medicine by tailoring treatments.</p><p>2. Population Genetics &amp; Ancestry</p><p>Trace human migration and ancestry.</p><p>Study genetic diversity within and between populations.</p><p>3. Agriculture &amp; Animal Breeding</p><p>Select for desirable traits (drought resistance, yield, disease resistance).</p><p>Improve breeding efficiency in livestock.</p><p>4. Evolutionary Biology</p><p>Track natural selection.</p><p>Study adaptation in wild populations.</p><p><strong>How is SNP Analysis Performed?</strong><br />SNP analysis can be broadly divided into three steps:</p><p>SNP Detection<br />Genotyping arrays: Chips that test hundreds of thousands of known SNP positions simultaneously. Fast and affordable, widely used in consumer ancestry testing.</p><p>Whole-genome or whole-exome sequencing: Can detect known and novel SNPs across the genome.</p><p>Targeted sequencing or PCR: For focused analysis of specific regions.</p><p>Variant Calling<br />Sequencing data is aligned to a reference genome. Bioinformatics tools (e.g., GATK, bcftools) identify positions where the sequenced sample differs from the reference.</p><p>Annotation and Interpretation<br />Tools (e.g., SnpEff, VEP) predict the functional impact of SNPs.</p><p>Are the SNPs in coding regions? Do they cause amino acid changes? Are they known to be pathogenic?</p><p>Databases like dbSNP, ClinVar, and GWAS Catalog provide information on known associations.</p><p>Common Tools for SNP Analysis<br />Alignment: BWA, Bowtie2</p><p>Variant Calling: GATK, FreeBayes</p><p>Visualization: IGV, UCSC Genome Browser</p><p>Annotation: SnpEff, VEP</p><p>Statistical Analysis: PLINK, SNPTEST</p><p><strong>Challenges in SNP Analysis</strong><br />False positives/negatives: Sequencing errors, alignment issues.</p><p>Population stratification: Confounding in association studies.</p><p>Interpretation: Many SNPs have unknown or complex effects.</p><p>Researchers address these with rigorous quality control, large datasets, and increasingly sophisticated statistical models.</p><p><strong>The Future of SNP Analysis</strong><br />With advances in sequencing technology and AI-driven analysis, SNP studies are expanding:</p><p>Polygenic risk scores predict disease risk based on thousands of SNPs.</p><p>Large-scale biobanks (e.g., UK Biobank, All of Us) enable powerful genome-wide association studies (GWAS).</p><p>CRISPR and functional assays help validate SNP effects in the lab.</p><p>SNP analysis is at the heart of the genomic revolution, promising insights into biology, health, and evolution at unprecedented scale.</p><p><strong>Conclusion</strong><br />From diagnosing rare diseases to designing better crops, SNP analysis is a foundational tool in modern science. As our ability to sequence and interpret genomes improves, so will our understanding of these tiny&mdash;but mighty&mdash;variations in DNA.</p><p>&nbsp;</p>]]></description>
	<dc:creator>Abhi</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/34463/single-cell-rnaseq-data-analysis-tutorial</guid>
	<pubDate>Mon, 27 Nov 2017 16:24:29 -0600</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/34463/single-cell-rnaseq-data-analysis-tutorial</link>
	<title><![CDATA[Single Cell RNAseq data analysis tutorial !!]]></title>
	<description><![CDATA[<ul>
<li>A major breakthrough (replaced microarrays) in the late 00&rsquo;s and has been widely used since</li>
<li>Measures the&nbsp;average expression level&nbsp;for each gene across a large population of input cells</li>
<li>Useful for comparative transcriptomics, e.g.&nbsp;samples of the same tissue from different species</li>
<li>Useful for quantifying expression signatures from ensembles, e.g.&nbsp;in disease studies</li>
<li>Insufficient&nbsp;for studying heterogeneous systems, e.g.&nbsp;early development studies, complex tissues (brain)</li>
<li>Does&nbsp;not&nbsp;provide insights into the stochastic nature of gene expression</li>
</ul><p>Following are the useful links:</p><p><a href="http://hemberg-lab.github.io/scRNA.seq.course/scRNA-seq-course.pdf" target="_blank">Single Cell RNAseq data analysis Tutorial</a></p><p><a href="https://f1000research.com/articles/5-2122/v2" target="_blank">A step-by-step workflow for low-level analysis of single-cell RNA-seq data</a></p><p><a href="https://www.bioconductor.org/help/workflows/simpleSingleCell/" target="_blank">A step-by-step workflow for low-level analysis of single-cell RNA-seq data with Bioconductor</a></p><p>SCell: single-cell RNA-seq analysis software</p><p><a href="https://github.com/diazlab/SCell">https://github.com/diazlab/SCell</a></p><p>Beta-Poisson model for single-cell RNA-seq data analyses</p><p><a href="https://github.com/nghiavtr/BPSC">https://github.com/nghiavtr/BPSC</a></p><p>Sincera: A Computational Pipeline for Single Cell RNA-Seq Profiling Analysis</p><p><a href="https://research.cchmc.org/pbge/sincera.html">https://research.cchmc.org/pbge/sincera.html</a></p><p>SC3 &ndash; consensus clustering of single-cell RNA-Seq data</p><p><a href="http://biorxiv.org/content/early/2016/09/02/036558">http://biorxiv.org/content/early/2016/09/02/036558</a></p><p>Citrus: A toolkit for single cell sequencing analysis</p><p><a href="http://biorxiv.org/content/early/2016/09/14/045070">http://biorxiv.org/content/early/2016/09/14/045070</a></p><p>Single-Cell Resolution of Temporal Gene Expression during Heart Development</p><p><a href="http://www.cell.com/developmental-cell/fulltext/S1534-5807%2816%2930682-7">http://www.cell.com/developmental-cell/fulltext/S1534-5807(16)30682-7</a></p><p>Scalable latent-factor models applied to single-cell RNA-seq data separate biological drivers from confounding effects</p><p><a href="http://biorxiv.org/content/early/2016/11/15/087775">http://biorxiv.org/content/early/2016/11/15/087775</a></p><p>Single cell transcriptomes identify human islet cell signatures and reveal cell-type-specific expression changes in type 2 diabetes</p><p><a href="http://genome.cshlp.org/content/early/2016/11/18/gr.212720.116.abstract">http://genome.cshlp.org/content/early/2016/11/18/gr.212720.116.abstract</a></p><p>SCODE: An efficient regulatory network inference algorithm from single-cell RNA-Seq during differentiation</p><p><a href="http://biorxiv.org/content/early/2016/11/21/088856">http://biorxiv.org/content/early/2016/11/21/088856</a></p><p>SCOUP is a probabilistic model to analyze single-cell expression data during differentiation</p><p><a href="https://github.com/hmatsu1226/SCOUP">https://github.com/hmatsu1226/SCOUP</a></p><p>scLVM is a modelling framework for single-cell RNA-seq data</p><p><a href="https://github.com/PMBio/scLVM">https://github.com/PMBio/scLVM</a></p><p>Selective Locally linear Inference of Cellular Expression Relationships (SLICER) algorithm for inferring cell trajectories</p><p><a href="https://github.com/jw156605/SLICER">https://github.com/jw156605/SLICER</a></p><p>SinQC: A Method and Tool to Control Single-cell RNA-seq Data Quality</p><p><a href="http://www.morgridge.net/SinQC.html">http://www.morgridge.net/SinQC.html</a></p><p>TSCAN: Pseudo-time reconstruction and evaluation in single-cell RNA-seq analysis</p><p><a href="https://github.com/zji90/TSCAN">https://github.com/zji90/TSCAN</a></p><p>Visualization and cellular hierarchy inference of single-cell data using SPADE</p><p><a href="http://www.nature.com/nprot/journal/v11/n7/full/nprot.2016.066.html">http://www.nature.com/nprot/journal/v11/n7/full/nprot.2016.066.html</a></p><p>OEFinder: Identify ordering effect genes in single cell RNA-seq data</p><p><a href="https://github.com/lengning/OEFinder">https://github.com/lengning/OEFinder</a></p>]]></description>
	<dc:creator>Robert M Willioms</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/40489/machine-learning-training-and-courses-in-bioinformatics</guid>
	<pubDate>Tue, 31 Dec 2019 19:33:07 -0600</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/40489/machine-learning-training-and-courses-in-bioinformatics</link>
	<title><![CDATA[Machine learning training and courses in bioinformatics !]]></title>
	<description><![CDATA[<p>Machine learning techniques have been successful in analyzing biological data because of their capabilities in handling randomness and uncertainty of data noise and in generalization. In this class, we will learn basics about probabilistic models and machine learning techniques. We will focus on probabilistic models (Markov models, Hidden Markov models, and Bayesian networks) for biological sequence analysis and systems biology. Other machine learning techniques, such as Naive bayes, neural networks and SVMs will only be covered briefly.</p>
<p>More at&nbsp;http://homes.sice.indiana.edu/yye/lab/teaching/spring2017-I529/</p>
<p>More tutorial at&nbsp;</p>
<p><a href="http://calla.rnet.missouri.edu/cheng_courses/mlbioinfo/mlbioinfo.htm">http://calla.rnet.missouri.edu/cheng_courses/mlbioinfo/mlbioinfo.htm</a></p>
<p><a href="http://www.raetschlab.org/lectures/MLBioinformatics">http://www.raetschlab.org/lectures/MLBioinformatics</a></p>
<p><a href="http://www.raetschlab.org/lectures/bertinoro08">http://www.raetschlab.org/lectures/bertinoro08</a></p>
<p>Book at&nbsp;</p>
<p><a href="https://personal.utdallas.edu/~pradiptaray/teaching/7_deep_learning_bioinfo.pdf">https://personal.utdallas.edu/~pradiptaray/teaching/7_deep_learning_bioinfo.pdf</a></p><p>Address of the bookmark: <a href="http://homes.sice.indiana.edu/yye/lab/teaching/spring2017-I529/" rel="nofollow">http://homes.sice.indiana.edu/yye/lab/teaching/spring2017-I529/</a></p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/43631/pangolin-tutorial</guid>
	<pubDate>Fri, 10 Dec 2021 05:58:59 -0600</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/43631/pangolin-tutorial</link>
	<title><![CDATA[Pangolin tutorial !]]></title>
	<description><![CDATA[<p><span>This is a tutorial for using the Pangolin Web Application. For information on using the command line tool, please visit the&nbsp;</span><a href="https://cov-lineages.org/resources/pangolin/usage.html">command line tool usage page</a><span>.</span></p>
<p>https://cov-lineages.org/resources/pangolin/tutorial.html</p><p>Address of the bookmark: <a href="https://cov-lineages.org/resources/pangolin/tutorial.html" rel="nofollow">https://cov-lineages.org/resources/pangolin/tutorial.html</a></p>]]></description>
	<dc:creator>Abhi</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/44871/10-books-to-kickstart-and-level-up-your-bioinformatics-journey</guid>
	<pubDate>Tue, 12 Aug 2025 03:50:11 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/44871/10-books-to-kickstart-and-level-up-your-bioinformatics-journey</link>
	<title><![CDATA[10 Books to Kickstart (and Level Up) Your Bioinformatics Journey]]></title>
	<description><![CDATA[<p>If you&rsquo;re starting out in bioinformatics or looking to sharpen your computational biology skills, having the right learning resources makes all the difference.<br />Here&rsquo;s my curated list of 10 must-read books &mdash; from beginner-friendly introductions to advanced computational genomics.</p><p>1️⃣ Data Analysis for the Life Sciences<br />A fantastic starting point to learn statistics, R programming, and exploratory data analysis in the context of biology. The best part? It&rsquo;s available free online from HarvardX.</p><p>2️⃣ Practical Computing for Biologists<br />The very first book I picked up when I started learning computational biology. It&rsquo;s beginner-friendly and focuses on essential computing skills every biologist needs.</p><p>3️⃣ A Primer for Computational Biology<br />An open-access, hands-on introduction to computational biology concepts and coding techniques. Perfect if you want to learn through real examples.</p><p>4️⃣ Computational Genomics with R<br />For those who already know R and want to dive deeper into genome-scale data analysis, from sequence alignment to gene expression.</p><p>5️⃣ The Biologist&rsquo;s Guide to Computing<br />Bridges the gap between biological problems and computational thinking, making it easier for life scientists to approach programming and data analysis.</p><p>6️⃣ Bioinformatics Data Skills<br />A must-read to sharpen your bioinformatics toolkit &mdash; from command-line skills to reproducible research workflows. Ideal once you&rsquo;ve covered the basics.</p><p>7️⃣ Bioinformatics Workbook<br />A practical tutorial series to help scientists design bioinformatics projects, analyze data, and understand best practices.</p><p>8️⃣ Modern Statistics for Modern Biology<br />An essential guide to modern statistical methods applied to biology, blending theory with hands-on examples in R.</p><p>9️⃣ Algorithms on Strings, Trees, and Sequences by Dan Gusfield<br />A classic reference for anyone wanting to understand the algorithms behind sequence alignment, genome assembly, and biological data structures.</p><p></p>]]></description>
	<dc:creator>Neel</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/38012/cosine-non-seeding-method-for-mapping-long-noisy-sequences</guid>
	<pubDate>Fri, 26 Oct 2018 00:41:59 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/38012/cosine-non-seeding-method-for-mapping-long-noisy-sequences</link>
	<title><![CDATA[COSINE: non-seeding method for mapping long noisy sequences]]></title>
	<description><![CDATA[<p><span>Third generation sequencing (TGS) are highly promising technologies but the long and noisy reads from TGS are difficult to align using existing algorithms. Here, we present COSINE, a conceptually new method designed specifically for aligning long reads contaminated by a high level of errors.</span></p><p>Address of the bookmark: <a href="https://github.com/SUwonglab/COSINE" rel="nofollow">https://github.com/SUwonglab/COSINE</a></p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>

</channel>
</rss>