tag:blogger.com,1999:blog-31180427208520305852024-03-07T20:06:54.288-08:00Three Standard Deviations AwayA dialog on issues in Statistics Research and Application with links to learning more about statistical computing.Anonymoushttp://www.blogger.com/profile/17155380425525333882noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-3118042720852030585.post-55459963934064359842013-03-12T09:40:00.001-07:002013-03-12T09:40:55.478-07:00First Steps in R<!DOCTYPE html>
<!-- saved from url=(0014)about:internet -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>First Steps in R</title>
<style type="text/css">
body, td {
font-family: sans-serif;
background-color: white;
font-size: 12px;
margin: 8px;
}
tt, code, pre {
font-family: 'DejaVu Sans Mono', 'Droid Sans Mono', 'Lucida Console', Consolas, Monaco, monospace;
}
h1 {
font-size:2.2em;
}
h2 {
font-size:1.8em;
}
h3 {
font-size:1.4em;
}
h4 {
font-size:1.0em;
}
h5 {
font-size:0.9em;
}
h6 {
font-size:0.8em;
}
a:visited {
color: rgb(50%, 0%, 50%);
}
pre {
margin-top: 0;
max-width: 95%;
border: 1px solid #ccc;
white-space: pre-wrap;
}
pre code {
display: block; padding: 0.5em;
}
code.r, code.cpp {
background-color: #F8F8F8;
}
table, td, th {
border: none;
}
blockquote {
color:#666666;
margin:0;
padding-left: 1em;
border-left: 0.5em #EEE solid;
}
hr {
height: 0px;
border-bottom: none;
border-top-width: thin;
border-top-style: dotted;
border-top-color: #999999;
}
@media print {
* {
background: transparent !important;
color: black !important;
filter:none !important;
-ms-filter: none !important;
}
body {
font-size:12pt;
max-width:100%;
}
a, a:visited {
text-decoration: underline;
}
hr {
visibility: hidden;
page-break-before: always;
}
pre, blockquote {
padding-right: 1em;
page-break-inside: avoid;
}
tr, img {
page-break-inside: avoid;
}
img {
max-width: 100% !important;
}
@page :left {
margin: 15mm 20mm 15mm 10mm;
}
@page :right {
margin: 15mm 10mm 15mm 20mm;
}
p, h2, h3 {
orphans: 3; widows: 3;
}
h2, h3 {
page-break-after: avoid;
}
}
</style>
<!-- Styles for R syntax highlighter -->
<style type="text/css">
pre .operator,
pre .paren {
color: rgb(104, 118, 135)
}
pre .literal {
color: rgb(88, 72, 246)
}
pre .number {
color: rgb(0, 0, 205);
}
pre .comment {
color: rgb(76, 136, 107);
}
pre .keyword {
color: rgb(0, 0, 255);
}
pre .identifier {
color: rgb(0, 0, 0);
}
pre .string {
color: rgb(3, 106, 7);
}
</style>
<!-- R syntax highlighter -->
<script type="text/javascript">
var hljs=new function(){function m(p){return p.replace(/&/gm,"&").replace(/</gm,"<")}function f(r,q,p){return RegExp(q,"m"+(r.cI?"i":"")+(p?"g":""))}function b(r){for(var p=0;p<r.childNodes.length;p++){var q=r.childNodes[p];if(q.nodeName=="CODE"){return q}if(!(q.nodeType==3&&q.nodeValue.match(/\s+/))){break}}}function h(t,s){var p="";for(var r=0;r<t.childNodes.length;r++){if(t.childNodes[r].nodeType==3){var q=t.childNodes[r].nodeValue;if(s){q=q.replace(/\n/g,"")}p+=q}else{if(t.childNodes[r].nodeName=="BR"){p+="\n"}else{p+=h(t.childNodes[r])}}}if(/MSIE [678]/.test(navigator.userAgent)){p=p.replace(/\r/g,"\n")}return p}function a(s){var r=s.className.split(/\s+/);r=r.concat(s.parentNode.className.split(/\s+/));for(var q=0;q<r.length;q++){var p=r[q].replace(/^language-/,"");if(e[p]){return p}}}function c(q){var p=[];(function(s,t){for(var r=0;r<s.childNodes.length;r++){if(s.childNodes[r].nodeType==3){t+=s.childNodes[r].nodeValue.length}else{if(s.childNodes[r].nodeName=="BR"){t+=1}else{if(s.childNodes[r].nodeType==1){p.push({event:"start",offset:t,node:s.childNodes[r]});t=arguments.callee(s.childNodes[r],t);p.push({event:"stop",offset:t,node:s.childNodes[r]})}}}}return t})(q,0);return p}function k(y,w,x){var q=0;var z="";var s=[];function u(){if(y.length&&w.length){if(y[0].offset!=w[0].offset){return(y[0].offset<w[0].offset)?y:w}else{return w[0].event=="start"?y:w}}else{return y.length?y:w}}function t(D){var A="<"+D.nodeName.toLowerCase();for(var B=0;B<D.attributes.length;B++){var C=D.attributes[B];A+=" "+C.nodeName.toLowerCase();if(C.value!==undefined&&C.value!==false&&C.value!==null){A+='="'+m(C.value)+'"'}}return A+">"}while(y.length||w.length){var v=u().splice(0,1)[0];z+=m(x.substr(q,v.offset-q));q=v.offset;if(v.event=="start"){z+=t(v.node);s.push(v.node)}else{if(v.event=="stop"){var p,r=s.length;do{r--;p=s[r];z+=("</"+p.nodeName.toLowerCase()+">")}while(p!=v.node);s.splice(r,1);while(r<s.length){z+=t(s[r]);r++}}}}return z+m(x.substr(q))}function j(){function q(x,y,v){if(x.compiled){return}var u;var s=[];if(x.k){x.lR=f(y,x.l||hljs.IR,true);for(var w in x.k){if(!x.k.hasOwnProperty(w)){continue}if(x.k[w] instanceof Object){u=x.k[w]}else{u=x.k;w="keyword"}for(var r in u){if(!u.hasOwnProperty(r)){continue}x.k[r]=[w,u[r]];s.push(r)}}}if(!v){if(x.bWK){x.b="\\b("+s.join("|")+")\\s"}x.bR=f(y,x.b?x.b:"\\B|\\b");if(!x.e&&!x.eW){x.e="\\B|\\b"}if(x.e){x.eR=f(y,x.e)}}if(x.i){x.iR=f(y,x.i)}if(x.r===undefined){x.r=1}if(!x.c){x.c=[]}x.compiled=true;for(var t=0;t<x.c.length;t++){if(x.c[t]=="self"){x.c[t]=x}q(x.c[t],y,false)}if(x.starts){q(x.starts,y,false)}}for(var p in e){if(!e.hasOwnProperty(p)){continue}q(e[p].dM,e[p],true)}}function d(B,C){if(!j.called){j();j.called=true}function q(r,M){for(var L=0;L<M.c.length;L++){if((M.c[L].bR.exec(r)||[null])[0]==r){return M.c[L]}}}function v(L,r){if(D[L].e&&D[L].eR.test(r)){return 1}if(D[L].eW){var M=v(L-1,r);return M?M+1:0}return 0}function w(r,L){return L.i&&L.iR.test(r)}function K(N,O){var M=[];for(var L=0;L<N.c.length;L++){M.push(N.c[L].b)}var r=D.length-1;do{if(D[r].e){M.push(D[r].e)}r--}while(D[r+1].eW);if(N.i){M.push(N.i)}return f(O,M.join("|"),true)}function p(M,L){var N=D[D.length-1];if(!N.t){N.t=K(N,E)}N.t.lastIndex=L;var r=N.t.exec(M);return r?[M.substr(L,r.index-L),r[0],false]:[M.substr(L),"",true]}function z(N,r){var L=E.cI?r[0].toLowerCase():r[0];var M=N.k[L];if(M&&M instanceof Array){return M}return false}function F(L,P){L=m(L);if(!P.k){return L}var r="";var O=0;P.lR.lastIndex=0;var M=P.lR.exec(L);while(M){r+=L.substr(O,M.index-O);var N=z(P,M);if(N){x+=N[1];r+='<span class="'+N[0]+'">'+M[0]+"</span>"}else{r+=M[0]}O=P.lR.lastIndex;M=P.lR.exec(L)}return r+L.substr(O,L.length-O)}function J(L,M){if(M.sL&&e[M.sL]){var r=d(M.sL,L);x+=r.keyword_count;return r.value}else{return F(L,M)}}function I(M,r){var L=M.cN?'<span class="'+M.cN+'">':"";if(M.rB){y+=L;M.buffer=""}else{if(M.eB){y+=m(r)+L;M.buffer=""}else{y+=L;M.buffer=r}}D.push(M);A+=M.r}function G(N,M,Q){var R=D[D.length-1];if(Q){y+=J(R.buffer+N,R);return false}var P=q(M,R);if(P){y+=J(R.buffer+N,R);I(P,M);return P.rB}var L=v(D.length-1,M);if(L){var O=R.cN?"</span>":"";if(R.rE){y+=J(R.buffer+N,R)+O}else{if(R.eE){y+=J(R.buffer+N,R)+O+m(M)}else{y+=J(R.buffer+N+M,R)+O}}while(L>1){O=D[D.length-2].cN?"</span>":"";y+=O;L--;D.length--}var r=D[D.length-1];D.length--;D[D.length-1].buffer="";if(r.starts){I(r.starts,"")}return R.rE}if(w(M,R)){throw"Illegal"}}var E=e[B];var D=[E.dM];var A=0;var x=0;var y="";try{var s,u=0;E.dM.buffer="";do{s=p(C,u);var t=G(s[0],s[1],s[2]);u+=s[0].length;if(!t){u+=s[1].length}}while(!s[2]);if(D.length>1){throw"Illegal"}return{r:A,keyword_count:x,value:y}}catch(H){if(H=="Illegal"){return{r:0,keyword_count:0,value:m(C)}}else{throw H}}}function g(t){var p={keyword_count:0,r:0,value:m(t)};var r=p;for(var q in e){if(!e.hasOwnProperty(q)){continue}var s=d(q,t);s.language=q;if(s.keyword_count+s.r>r.keyword_count+r.r){r=s}if(s.keyword_count+s.r>p.keyword_count+p.r){r=p;p=s}}if(r.language){p.second_best=r}return p}function i(r,q,p){if(q){r=r.replace(/^((<[^>]+>|\t)+)/gm,function(t,w,v,u){return w.replace(/\t/g,q)})}if(p){r=r.replace(/\n/g,"<br>")}return r}function n(t,w,r){var x=h(t,r);var v=a(t);var y,s;if(v){y=d(v,x)}else{return}var q=c(t);if(q.length){s=document.createElement("pre");s.innerHTML=y.value;y.value=k(q,c(s),x)}y.value=i(y.value,w,r);var u=t.className;if(!u.match("(\\s|^)(language-)?"+v+"(\\s|$)")){u=u?(u+" "+v):v}if(/MSIE [678]/.test(navigator.userAgent)&&t.tagName=="CODE"&&t.parentNode.tagName=="PRE"){s=t.parentNode;var p=document.createElement("div");p.innerHTML="<pre><code>"+y.value+"</code></pre>";t=p.firstChild.firstChild;p.firstChild.cN=s.cN;s.parentNode.replaceChild(p.firstChild,s)}else{t.innerHTML=y.value}t.className=u;t.result={language:v,kw:y.keyword_count,re:y.r};if(y.second_best){t.second_best={language:y.second_best.language,kw:y.second_best.keyword_count,re:y.second_best.r}}}function o(){if(o.called){return}o.called=true;var r=document.getElementsByTagName("pre");for(var p=0;p<r.length;p++){var q=b(r[p]);if(q){n(q,hljs.tabReplace)}}}function l(){if(window.addEventListener){window.addEventListener("DOMContentLoaded",o,false);window.addEventListener("load",o,false)}else{if(window.attachEvent){window.attachEvent("onload",o)}else{window.onload=o}}}var e={};this.LANGUAGES=e;this.highlight=d;this.highlightAuto=g;this.fixMarkup=i;this.highlightBlock=n;this.initHighlighting=o;this.initHighlightingOnLoad=l;this.IR="[a-zA-Z][a-zA-Z0-9_]*";this.UIR="[a-zA-Z_][a-zA-Z0-9_]*";this.NR="\\b\\d+(\\.\\d+)?";this.CNR="\\b(0[xX][a-fA-F0-9]+|(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)";this.BNR="\\b(0b[01]+)";this.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|\\.|-|-=|/|/=|:|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~";this.ER="(?![\\s\\S])";this.BE={b:"\\\\.",r:0};this.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[this.BE],r:0};this.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[this.BE],r:0};this.CLCM={cN:"comment",b:"//",e:"$"};this.CBLCLM={cN:"comment",b:"/\\*",e:"\\*/"};this.HCM={cN:"comment",b:"#",e:"$"};this.NM={cN:"number",b:this.NR,r:0};this.CNM={cN:"number",b:this.CNR,r:0};this.BNM={cN:"number",b:this.BNR,r:0};this.inherit=function(r,s){var p={};for(var q in r){p[q]=r[q]}if(s){for(var q in s){p[q]=s[q]}}return p}}();hljs.LANGUAGES.cpp=function(){var a={keyword:{"false":1,"int":1,"float":1,"while":1,"private":1,"char":1,"catch":1,"export":1,virtual:1,operator:2,sizeof:2,dynamic_cast:2,typedef:2,const_cast:2,"const":1,struct:1,"for":1,static_cast:2,union:1,namespace:1,unsigned:1,"long":1,"throw":1,"volatile":2,"static":1,"protected":1,bool:1,template:1,mutable:1,"if":1,"public":1,friend:2,"do":1,"return":1,"goto":1,auto:1,"void":2,"enum":1,"else":1,"break":1,"new":1,extern:1,using:1,"true":1,"class":1,asm:1,"case":1,typeid:1,"short":1,reinterpret_cast:2,"default":1,"double":1,register:1,explicit:1,signed:1,typename:1,"try":1,"this":1,"switch":1,"continue":1,wchar_t:1,inline:1,"delete":1,alignof:1,char16_t:1,char32_t:1,constexpr:1,decltype:1,noexcept:1,nullptr:1,static_assert:1,thread_local:1,restrict:1,_Bool:1,complex:1},built_in:{std:1,string:1,cin:1,cout:1,cerr:1,clog:1,stringstream:1,istringstream:1,ostringstream:1,auto_ptr:1,deque:1,list:1,queue:1,stack:1,vector:1,map:1,set:1,bitset:1,multiset:1,multimap:1,unordered_set:1,unordered_map:1,unordered_multiset:1,unordered_multimap:1,array:1,shared_ptr:1}};return{dM:{k:a,i:"</",c:[hljs.CLCM,hljs.CBLCLM,hljs.QSM,{cN:"string",b:"'\\\\?.",e:"'",i:"."},{cN:"number",b:"\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)"},hljs.CNM,{cN:"preprocessor",b:"#",e:"$"},{cN:"stl_container",b:"\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",e:">",k:a,r:10,c:["self"]}]}}}();hljs.LANGUAGES.r={dM:{c:[hljs.HCM,{cN:"number",b:"\\b0[xX][0-9a-fA-F]+[Li]?\\b",e:hljs.IMMEDIATE_RE,r:0},{cN:"number",b:"\\b\\d+(?:[eE][+\\-]?\\d*)?L\\b",e:hljs.IMMEDIATE_RE,r:0},{cN:"number",b:"\\b\\d+\\.(?!\\d)(?:i\\b)?",e:hljs.IMMEDIATE_RE,r:1},{cN:"number",b:"\\b\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",e:hljs.IMMEDIATE_RE,r:0},{cN:"number",b:"\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",e:hljs.IMMEDIATE_RE,r:1},{cN:"keyword",b:"(?:tryCatch|library|setGeneric|setGroupGeneric)\\b",e:hljs.IMMEDIATE_RE,r:10},{cN:"keyword",b:"\\.\\.\\.",e:hljs.IMMEDIATE_RE,r:10},{cN:"keyword",b:"\\.\\.\\d+(?![\\w.])",e:hljs.IMMEDIATE_RE,r:10},{cN:"keyword",b:"\\b(?:function)",e:hljs.IMMEDIATE_RE,r:2},{cN:"keyword",b:"(?:if|in|break|next|repeat|else|for|return|switch|while|try|stop|warning|require|attach|detach|source|setMethod|setClass)\\b",e:hljs.IMMEDIATE_RE,r:1},{cN:"literal",b:"(?:NA|NA_integer_|NA_real_|NA_character_|NA_complex_)\\b",e:hljs.IMMEDIATE_RE,r:10},{cN:"literal",b:"(?:NULL|TRUE|FALSE|T|F|Inf|NaN)\\b",e:hljs.IMMEDIATE_RE,r:1},{cN:"identifier",b:"[a-zA-Z.][a-zA-Z0-9._]*\\b",e:hljs.IMMEDIATE_RE,r:0},{cN:"operator",b:"<\\-(?!\\s*\\d)",e:hljs.IMMEDIATE_RE,r:2},{cN:"operator",b:"\\->|<\\-",e:hljs.IMMEDIATE_RE,r:1},{cN:"operator",b:"%%|~",e:hljs.IMMEDIATE_RE},{cN:"operator",b:">=|<=|==|!=|\\|\\||&&|=|\\+|\\-|\\*|/|\\^|>|<|!|&|\\||\\$|:",e:hljs.IMMEDIATE_RE,r:0},{cN:"operator",b:"%",e:"%",i:"\\n",r:1},{cN:"identifier",b:"`",e:"`",r:0},{cN:"string",b:'"',e:'"',c:[hljs.BE],r:0},{cN:"string",b:"'",e:"'",c:[hljs.BE],r:0},{cN:"paren",b:"[[({\\])}]",e:hljs.IMMEDIATE_RE,r:0}]}};
hljs.initHighlightingOnLoad();
</script>
</head>
<body>
<h1>First Steps in R</h1>
<p>If you are coming to R without a programming background, getting
started can seem very daunting, especially that taunting blinking
cursor. In this post, I will just point out a few things that can
make getting started easier</p>
<h2>Use An IDE</h2>
<p>An IDE is an Integrated Development Environment. While it is
perfectly reasonable to use TextEdit or something of that sort to
write code, most programmers use IDE's in part because they have
tools that make their lives easier.</p>
<p>(Un)fortunately, there are many choices in IDE's, so you can pick and
choose which IDE is best for you. I will highlight a few.</p>
<h3>RStudio</h3>
<p><a href="http://www.rstudio.com">RStudio</a> is a new player in the IDE world for R, and it has made a big
splash. Rstudio has several nice features, including a nice package
manager, it stores figures into a single panel (so you aren't
searching all over your workplace for missing plots, or having to
regenerate a ton of figures), parentheses matching, colored syntax
matching, integration to Rcpp and more. All of the things you would
want are all in one multipaned window. Since many reading are
newbies, this is all brand new, so I will just say that RStudio
genuinely makes life easier, is available on Mac, Windows and Linux,
requires nothing more than an installation of R and RStudio to
install, and has some of the top developers in R adding to their
project (including Hadley Wickham). For newbies, especially those
without programming experience, this is where I
would go.</p>
<p>Note: RStudio does NOT handle dual monitors</p>
<h3>Tinn-R</h3>
<p><a href="http://www.sciviews.org/Tinn-R/">Tinn-R</a> is a popular editor on the Windows platform. I am not a
windows user, so I have limited experience with this IDE. In general,
my understanding is that Tinn-R opens a separate editor window and a
seperate R window, basically code is run from the editor over to the R
window. A lot of people love Tinn-R, and quite a few newbies use it.
Also can be used for many other languages.</p>
<h3>Notepad++</h3>
<p><a href="http://notepad-plus-plus.org">Notepad++</a> is much like Tinn-R above. I've used, but frankly cannot comment on the
differences between this and Tinn-R</p>
<h3>Eclipse + StatET</h3>
<p><a href="http://www.eclipse.org">Eclipse</a> is a heavy lifter, the major IDE in the Java world that has so
many potential bells and whistles it will spin your head. There is al
nice implementation for Eclipse for R using <a href="http://www.walware.de/goto/statet">StatET</a> that sets up a
powerful environment for R. I find that this is probably the hardest
to set up, but it's still pretty easy (text windows guide you to your
every step). There are blog posts that describe developing C++ code
for R, and LaTeX, it really is a powerful set of development tools. I
do find that it can be a bit clunky to make changes.</p>
<h3>Vi</h3>
<p><a href="http://www.vim.org">Vi (or Vim)</a> is one of the popular text editors under Linux/ Unix
environments. It has a very hardcore user group. I am not a Vi user,
but if you are one, yes, you can use Vi with R, powerfully.</p>
<h3>Emacs + ESS</h3>
<p><a href="http://www.gnu.org/software/emacs/">Emacs</a> is the counterfoil to Vi, and has a fairly comprehensive
statistical environment <a href="http://ess.r-project.org">ESS (Emacs Speaks Statistics)</a> that allows for
a very powerful integration of R and emacs. The development seems to
be responsive (knitr is fully integrated for example). I use emacs for
everything, calendars, organization, agendas, writing documents,
writing code for R, C++, Python, Clojure etc. Like Vi, it's a huge,
flexible environment that has a devout following (the war between Vi
and Emacs is obvious, the package that allows one to use Vi in emacs
is called the extensible vi layer, or EVIL). I am learning more and
more about how to use emacs everyday. All this said, I do not, ever
use windows, so emacs installs readily on Mac and Linux. You can get
it on Windows, but if you aren't already running a linux environment
through cygwin or something similar, I would recommend going with one
of the alternatives above, notably RStudio.</p>
<p>(Full disclosure: I was having trouble getting Emacs to compile this blog post, so this post was done in RStudio using R Markup)</p>
<h2>Plan your analysis/ session in advance</h2>
<p>I think that part of the initial struggle with the blinking cursor
when starting R is not knowing what you want to do. This is
understandable, and sure, we would all love something that reads our
minds so we could just say “analyze my data.” Unfortunately, we are
not there yet.</p>
<p>A useful way to get started is to open your IDE, and outline what you
want to do. Note that the pound sign '#' is a comment in R. A comment
just means that R will not read anything to the right of the pound
sign. In general, my approach is to outline the <em>verbs</em> for your analysis. </p>
<pre><code class="r"># Generate normal data
# Calculate Mean and Variance
# Plot Histogram of Data
</code></pre>
<p>Then fill in the gaps</p>
<pre><code class="r"># Generate normal data
Data = rnorm(1000, mean = 1, sd = 1)
# Calculate Mean and Variance
cat("Mean = ", mean(Data), ", Variance = ", var(Data), fill = TRUE)
</code></pre>
<pre><code>## Mean = 0.9867 , Variance = 1.019
</code></pre>
<pre><code class="r">
# Plot Histogram of Data
hist(Data)
</code></pre>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfgAAAH4CAYAAACmKP9/AAAEJGlDQ1BJQ0MgUHJvZmlsZQAAOBGFVd9v21QUPolvUqQWPyBYR4eKxa9VU1u5GxqtxgZJk6XtShal6dgqJOQ6N4mpGwfb6baqT3uBNwb8AUDZAw9IPCENBmJ72fbAtElThyqqSUh76MQPISbtBVXhu3ZiJ1PEXPX6yznfOec7517bRD1fabWaGVWIlquunc8klZOnFpSeTYrSs9RLA9Sr6U4tkcvNEi7BFffO6+EdigjL7ZHu/k72I796i9zRiSJPwG4VHX0Z+AxRzNRrtksUvwf7+Gm3BtzzHPDTNgQCqwKXfZwSeNHHJz1OIT8JjtAq6xWtCLwGPLzYZi+3YV8DGMiT4VVuG7oiZpGzrZJhcs/hL49xtzH/Dy6bdfTsXYNY+5yluWO4D4neK/ZUvok/17X0HPBLsF+vuUlhfwX4j/rSfAJ4H1H0qZJ9dN7nR19frRTeBt4Fe9FwpwtN+2p1MXscGLHR9SXrmMgjONd1ZxKzpBeA71b4tNhj6JGoyFNp4GHgwUp9qplfmnFW5oTdy7NamcwCI49kv6fN5IAHgD+0rbyoBc3SOjczohbyS1drbq6pQdqumllRC/0ymTtej8gpbbuVwpQfyw66dqEZyxZKxtHpJn+tZnpnEdrYBbueF9qQn93S7HQGGHnYP7w6L+YGHNtd1FJitqPAR+hERCNOFi1i1alKO6RQnjKUxL1GNjwlMsiEhcPLYTEiT9ISbN15OY/jx4SMshe9LaJRpTvHr3C/ybFYP1PZAfwfYrPsMBtnE6SwN9ib7AhLwTrBDgUKcm06FSrTfSj187xPdVQWOk5Q8vxAfSiIUc7Z7xr6zY/+hpqwSyv0I0/QMTRb7RMgBxNodTfSPqdraz/sDjzKBrv4zu2+a2t0/HHzjd2Lbcc2sG7GtsL42K+xLfxtUgI7YHqKlqHK8HbCCXgjHT1cAdMlDetv4FnQ2lLasaOl6vmB0CMmwT/IPszSueHQqv6i/qluqF+oF9TfO2qEGTumJH0qfSv9KH0nfS/9TIp0Wboi/SRdlb6RLgU5u++9nyXYe69fYRPdil1o1WufNSdTTsp75BfllPy8/LI8G7AUuV8ek6fkvfDsCfbNDP0dvRh0CrNqTbV7LfEEGDQPJQadBtfGVMWEq3QWWdufk6ZSNsjG2PQjp3ZcnOWWing6noonSInvi0/Ex+IzAreevPhe+CawpgP1/pMTMDo64G0sTCXIM+KdOnFWRfQKdJvQzV1+Bt8OokmrdtY2yhVX2a+qrykJfMq4Ml3VR4cVzTQVz+UoNne4vcKLoyS+gyKO6EHe+75Fdt0Mbe5bRIf/wjvrVmhbqBN97RD1vxrahvBOfOYzoosH9bq94uejSOQGkVM6sN/7HelL4t10t9F4gPdVzydEOx83Gv+uNxo7XyL/FtFl8z9ZAHF4bBsrEwAANT5JREFUeAHt3Qm8red8L/BsGUQzSSIkSBz0IikqhkrQK8RUtLRKG3PcW6qosUVV2miqgym3elFaraiYye1FU0UGNJQrRSpKZBCEhiSSHJmz7++frL26s7PXPuustfe7n/Xu7/P5/M87v8/zfJ919n+975rm5ufnt1EIECBAgACBfgncpF/d0RsCBAgQIECgBCR4jwMCBAgQINBDAQm+h4OqSwQIECBAQIL3GCBAgAABAj0UkOB7OKi6RIAAAQIEJHiPAQIECBAg0EMBCb6Hg6pLBAgQIEBAgvcYIECAAAECPRSQ4Hs4qLpEgAABAgQkeI8BAgQIECDQQwEJvoeDqksECBAgQECC9xggQIAAAQI9FJDgezioukSAAAECBCR4jwECBAgQINBDAQm+h4OqSwQIECBAQIL3GCBAgAABAj0UkOB7OKi6RIAAAQIEJHiPAQIECBAg0EMBCb6Hg6pLBAgQIEBAgvcYIECAAAECPRSQ4Hs4qLpEgAABAgQkeI8BAgQIECDQQwEJvoeDqksECBAgQGA7BAQIbJ3A3NzcPXLEfomvzc/Pn7FwdNbfMfM/kzg360/N8q0yf9/EeVn+QqZjlRx3k+x/7Vg792Sn9Pn26cpDEvOJk9L/by7uWrY/KsvbLlp3Yea/k/3OWrRu7NmNaDw2jh17I+AKvjdDqSMdCjw3df2fxK8uqfOxg/XPH6y/z2D5ZUv2W3YxSafKk7Pxvcvu0NOV6fPt0rUvJd6aeFvi0MTS8r6sKPOFODnzZ+bYDyduvXTnUcvZd7fE67P92aP2sZ5AXwRcwfdlJPWjRYG6Cn114rQxG3ev7PfOxClj7t+X3X4uHbl54pOJwxKbE6PKq7Lhx4ndE09N1JOqOvZBiXHKK7LTCwcxzv72ITCzAhL8zA6dhs+AwNVp48WJyxbamqvHuqr/5UQlpX9L1O3o/8j6XTL/9ESV22T5pZm+OdsuHmx7eJbvn6jk9rGs/9dMhyX7HJCFJyXqNvZ7ErdN1MsF70hckKik9r3EmYnHJ47POY7PcbXfgxOVZP8z8bms/3im22RbtbW2fTRRV9kPS5yd+KvEnonDEzslPri0PVk3LCu1P9uqT5XUq9ws8YzEG2phRHl76jqntuXYuhL/RuKQzD+i+jNYX+3+74k7JM5IfCTbvpl9an29ZFLl0CxfkPXH1MJg242OqW0KgZkVyAN8G8HAY2D8x0D+s/91ol4rrlvKhyyKN2W+1v9deaY8erBcCbCW7z5Y3pzp6YmrE5cn7prYN1E7LY7bZbmeCPy/JeuvyfLLF8Ys8w9I/GSwTz2ZqPn/GCxXUtt5MF8J/pLB/FGZ7p74/mC5XtNeqPvZg/a+aLDuy5lemahz1z6fTtRx1Y9arvruttCexdOsX7H92f4HiYV6F6a7LD7HoC0Ldd1u8bYc+7eD418x2O8xg+WyXejrRZm/Y2KhPwv1/OuWjllcl/nx/4+wasPqJnnQKwQITCbwGznshEWxpdd1nzeo5on5A7h/5utNZXU1vFeikm89IahSCf22ie8k/jJxz8QHErdLPDZxaeKoXHXW+ip/lqir35pWQv3NxJ0SS8s+WfE3iQcm3pK4R+JziaelPZXsn5yo8ovXT4b/1jlvnbjzYE09ofjfid0SH05U3Ycmlitbav9rc9BLBgdW226VqP6NW8qoSiXwKndJ/HOirt4X2lfTujqvJ2TV7ypHJuqNe1VWOub6PfxLYAYFtpvBNmsygVYEPpGG1NXsQrlfZupW+qhSt8erHJfk/I1MKxF9IMn1xEzrNnHdIq9yZdZ9N8tzma/b4lWOzLpvZ/rtrP5opoclHpn5UzOt1+6rvCn7XJF178z8axK3rJVLyhHZ5+LBuu9k389m/oGZHpXpQl11231x+WSO+WGtyH51FV8J/disuzrLX8z8Lyf2TtygZNsW259zfCm71ZV2lcuyvGBw/Zot/3vTwS5X1zTH/1nO9/bM1jjU7f+DElV2yrZLF9V1UZbPrw0rHVPbFQKzKuAKflZHTrtbEKjE96qFSIMqYa9U6gr75YkzEnWF/ZzECUk6v5vpcmWHrKyr57olf9aiHer4Knsmtk/MJ65NXJe4055artfdl5bN2bSQ3Bded/5udjo+UVe4/zY4oM61uCxOupcPNvxgMK3b86PKOO0fdey4628/2PGbNY3lyzL5fqLuMJTP1xNVlvbp+rX5d5JjhgebIdCwgATf8OBoWu8EDkyPzk3U9HaJFyeqPPv6yXWJvGa3rX+SjK/IpJJuLS9cXWd2m0fWPylfzT5XZnpyov4vPzRRCatupddt56Wl9l1cXpmFWyR+PeepBH/s4o2L5usJw9KyNGHW1foNyjjtv8EBW7mQft41h9TLCVclPpLlnTN9VaLuCOyb+p+Q6emJxWWh3dfdvRzzmMXHmycwMwJu0c/MUGloDwSenD68IHFc4u8T+ySqnHP95LrEVLN3TuL580zfkHhb4j6JY7Kubr3fI3GvRN3iX0jI/5D5egLwruzzjEwrWVcy3yGxuCwkt4V1dfVe5TE5rqZ1d6HKrtdPVuXfcdq/NRVVH+uJz80T9abF+hv2miTz07O+7mb8KFGv4x82WH565qss9KmSf5XHZXs9cXp9YkvH1P4KgZkTqGf9CgEC3QhUAv3bxL0TH0jUm8tOShyeqFK33j+dqDeFvSixXxJXJchnJur14rrSv2/i44mHZdt1t8szrdvRRybOS+yf+L3EFxJV6jXzUaWeQHw28cREPXn4SKLq2T/Jb5dMpy7jtH8rK7l/9n9w4g6Jryb+Z6Juy9cdj6syeWni3MRbEvXSRyXwKvUkqUo9ubogcVDiWWMek10VArMnMJcH+Oy1WosJzLhAEui+6UK90WvhinLYo2y7bRZ+lG03SM5Zv3fWX5L1m4c7Zybrn5RJXZ2fkm1nZ1rrvp5J3arfI+surHWjSva9ZbZVW+qqf83KqPavdoWpp25H7JP+fG+5c2dz3dkoy/qq2+vuamzpmOXOYx2B1gUk+NZHSPsIbEEgyenF2eW1ibMT70/U6+/12vSpSWD3zFQhQGADCkjwG3DQdblfAknwO6VHb0w8KrFXom5Bn5J4URL8NzNVCBDYgAIS/AYcdF3ur0CS/Yb7Jbr+jqaeEZhOQIKfzs/RBAgQIECgSQHvom9yWDSKAAECBAhMJyDBT+fnaAIECBAg0KSABN/ksGgUAQIECBCYTkCCn87P0QQIECBAoEkBCb7JYdEoAgQIECAwnYAEP52fowkQIECAQJMCEnyTw6JRBAgQIEBgOgEJfjo/RxMgQIAAgSYFJPgmh0WjCBAgQIDAdAIS/HR+jiZAgAABAk0KNJfg813a2yV2b1JLowgQIECAwIwINJHgk9B3SLw6cW7c6jepL8j85sRpicNnxFIzCRAgQIBAMwLbNdKS+qnLvRP1c5dnJjYndk0ckDg6SX7H/OzlmzOvECBAgAABAmMINPFrckngZ6WtByeJf39pm7PtoKw7MtsevnSbZQIECBAgQGB5gSZu0adppyUetHwTt3l01p8/YpvVBAgQIECAwDICrVzBH5i2HZu4JPGtxMWJ3RL7J+plhEfmCv6cTBUCBAgQIEBgDIEmEny1s15nz+TgxKZEvR5fV+3fTJyc5D6fqUKAAAECBAiMKdBMgl9obxJ9XbHvkpx+4cI6UwIECBAgQGDrBJp4DT5J3cfktm7c7E2AAAECBFYU6NXH5OqJQnp70xE93jbrr8idgctGbLeaAAECBAj0RqCJW/RJzKvyMbmc56kZmV8dMTr7ZP3nk+CfO2K71QQIECBAoDcCrVzBL3xM7t3LyI79Mbkk72NyfMWNSpL/47NyrxttsIIAAQIECPRQoJUEf0Rsj00SfmGmy35Mrof2ukSAAAECBNZMoIkEnyvvU5Pc67PwSz8mV19P62Nyazb8TkyAAAECfRVoIsEXbpL85ZmcsBQ6iX/bxHbZfsXSbZYJECBAgACB5QVa+ZjcvknixyQuTfxz4qcXNbdeO3/nomWzBAgQIECAwBYEmkjwaWO99n5e4t6JUxInJ8nfKVOFAAECBAgQmECglVv0j0zbD8xt+PqM+hFJ7l/L9J8yfcAEfXIIAQIECBDY8AKtXMFXQq+r9+tKEv17MlO/Ef+PiT2vW+kfAgQIECBAYGyBVhL8W9Li9+eK/aULLU+Sf33mP5h4w8I6UwIECBAgQGA8gSZu0SeZfzzJ/Y5p8h0WNzvrj8z6k7KutikECBAgQIDAmAJNJPhqa5L55ky+urTdWX9i1lUoBAgQIECAwJgCzST4MdtrNwIE1kEgd9JelGq7+qrnudR1VJ7cX7oOXVUlgd4ISPC9GUodIbCmAofm7EetaQ3/dfLHZfZeiXp5TiFAYEIBCX5COIcR2GACl+eKur6jYs1L7hY8fM0rUQGBDSDQyrvoNwC1LhIgQIAAge4EJPjurNVEgAABAgQ6E5DgO6NWEQECBAgQ6E5Agu/OWk0ECBAgQKAzAQm+M2oVESBAgACB7gQk+O6s1USAAAECBDoTkOA7o1YRAQIECBDoTkCC785aTQQIECBAoDMBCb4zahURIECAAIHuBCT47qzVRIAAAQIEOhOQ4DujVhEBAgQIEOhOQILvzlpNBAgQIECgMwEJvjNqFREgQIAAge4EJPjurNVEgAABAgQ6E5DgO6NWEQECBAgQ6E5Agu/OWk0ECBAgQKAzAQm+M2oVESBAgACB7gQk+O6s1USAAAECBDoTkOA7o1YRAQIECBDoTkCC785aTQQIECBAoDMBCb4zahURIECAAIHuBCT47qzVRIAAAQIEOhOQ4DujVhEBAgQIEOhOQILvzlpNBAgQIECgMwEJvjNqFREgQIAAge4EJPjurNVEgAABAgQ6E5DgO6NWEQECBAgQ6E5Agu/OWk0ECBAgQKAzAQm+M2oVESBAgACB7gQk+O6s1USAAAECBDoTkOA7o1YRAQIECBDoTmC77qpSEwECqyUwNzf30znXWxPfXq1zrnCeHbLtTitst4kAgQYFJPgGB0WTCIwh8KDs8/eJT46x77S7bJ8TnDTtSRxPgEC3AhJ8t95qI7CaApfPz8+fs5onXO5cuVuwR9bPL7fNOgIE2hXwGny7Y6NlBAgQIEBgYgEJfmI6BxIgQIAAgXYFJPh2x0bLCBAgQIDAxAIS/MR0DiRAgAABAu0KSPDtjo2WESBAgACBiQUk+InpHEiAAAECBNoVkODbHRstI0CAAAECEwtI8BPTOZAAAQIECLQrIMG3OzZaRoAAAQIEJhaQ4CemcyABAgQIEGhXQIJvd2y0jAABAgQITCwgwU9M50ACBAgQINCugATf7thoGQECBAgQmFhAgp+YzoEECBAgQKBdAQm+3bHRMgIECBAgMLGABD8xnQMJECBAgEC7Atu12zQtIzBbAnNzc3umxft01Oqq54yO6lINAQIzKCDBz+CgaXKzAh9Jy76SuLKDFj4udby9g3pUQYDAjApI8DM6cJrdpMBFadUL5ufnL1vr1uVuwa6p4+ZrXY/zEyAwuwJeg5/dsdNyAgQIECAwUsAV/EgaGwgQWCeBW6TeZ+YuxSEd1L9D6viH3HX5fAd1qYJApwISfKfcKiNAYAyBu2Wfjyc+O8a+0+6yc07w1IQEP62k45sTkOCbGxINIrDhBa6NwCW5qj5xrSVyl+DuqePqta7H+Qmsh4DX4NdDXZ0ECBAgQGCNBST4NQZ2egIECBAgsB4CEvx6qKuTAAECBAissYAEv8bATk+AAAECBNZDQIJfD3V1EiBAgACBNRaQ4NcY2OkJECBAgMB6CEjw66GuTgIECBAgsMYCEvwaAzs9AQIECBBYD4HmEny+eGK7xO7rgaFOAgQIECDQF4EmEnwS+g6JVyfODWz91OYFmd+cOC1xeF+w9YMAAQIECHQl0MpX1b4xHd478ajEmYnNifo5zAMSRyfJ75ivrXxz5hUCBAgQIEBgDIEmruDTzoclnpUk/pXEpYkqP06ckvXPTzw2oRAgQIAAAQJjCrSS4E9Lex80os2PzvrzR2yzmgABAgQIEFhGoJVb9EekbcfmVvwLM/1W4uLEbon9E9XGRyYUAgQIECBAYEyBJhJ8bsWfmuR+YNp8cGJTol6Pvyzx1sQJ2T6fqUKAAAECBAiMKdDELfok92PS3k3J4ydk+i+JByT+NPG+xBuzfftMFQIECBAgQGBMgSYSfNp618ROgza/PNOvJ26duF9iU6LWKQQIECBAgMCYAk3col/S1odn+U65mr8k0/o8/O9n+vrEqxIrluz7zOzwxBE77ZX1nx6xzWoCBAgQINArgZYS/P2SoL8X3c8l9kxUgq9yt8Sp181t4Z88KajX7CtuVHLux2dlJXmFAAECBAj0XqCVBP+uSP9i4pWJevf85YnDkpT/MNPnJA5NKAQIECBAgMCYAk0k+Fx5vy7trdgmSf02mdS32FU5PvHabL/0uiX/ECBAgAABAmMJNJHgF7c0yfy7Wa7YJvN1u14hQIAAAQIEtlKglXfRb2Wz7U6AAAECBAisJNDEFXxuy784jdx+hYZ+PVfzx62w3SYCBAgQIEBgkUATCT7t2ZR4buIdifoluaXFd9EvFbFMgAABAgRWEGgiwefq/Hm5iq+XC26S+XrXvEKAAAECBAhMIdDSa/AvTT92TaLfeYr+OJQAAQIECBCIQBNX8DUSuXKvj8I9qeYVAgQIECBAYDqBlq7gp+uJowkQIECAAIGhgAQ/pDBDgAABAgT6IyDB92cs9YQAAQIECAwFJPghhRkCBAgQINAfAQm+P2OpJwQIECBAYCggwQ8pzBAgQIAAgf4ISPD9GUs9IUCAAAECQwEJfkhhhgABAgQI9EdAgu/PWOoJAQIECBAYCkjwQwozBAgQIECgPwISfH/GUk8IECBAgMBQQIIfUpghQIAAAQL9EZDg+zOWekKAAAECBIYCEvyQwgwBAgQIEOiPgATfn7HUEwIECBAgMBSQ4IcUZggQIECAQH8EJPj+jKWeECBAgACBoYAEP6QwQ4AAAQIE+iMgwfdnLPWEAAECBAgMBST4IYUZAgQIECDQHwEJvj9jqScECBAgQGAoIMEPKcwQIECAAIH+CEjw/RlLPSFAgAABAkMBCX5IYYYAAQIECPRHQILvz1jqCQECBAgQGApI8EMKMwQIECBAoD8CEnx/xlJPCBAgQIDAUECCH1KYIUCAAAEC/RGQ4PszlnpCgAABAgSGAhL8kMIMAQIECBDoj4AE35+x1BMCBAgQIDAUkOCHFGYIECBAgEB/BCT4/oylnhAgQIAAgaGABD+kMEOAAAECBPojIMH3Zyz1hAABAgQIDAUk+CGFGQIECBAg0B8BCb4/Y6knBAgQIEBgKCDBDynMECBAgACB/ghI8P0ZSz0hQIAAAQJDAQl+SGGGAAECBAj0R0CC789Y6gkBAgQIEBgKSPBDCjMECBAgQKA/AhJ8f8ZSTwgQIECAwFBAgh9SmCFAgAABAv0RkOD7M5Z6QoAAAQIEhgIS/JDCDAECBAgQ6I+ABN+fsdQTAgQIECAwFJDghxRmCBAgQIBAfwQk+P6MpZ4QIECAAIGhgAQ/pDBDgAABAgT6IyDB92cs9YQAAQIECAwFJPghhRkCBAgQINAfAQm+P2OpJwQIECBAYCggwQ8pzBAgQIAAgf4ISPD9GUs9IUCAAAECQwEJfkhhhgABAgQI9EdAgu/PWOoJAQIECBAYCmw3nFsyMzc394Ks2i1xzPz8/FlLNlskQIAAAQIEGhZY6Qr+o2n3LonPJNmfmHh6YueG+6JpBAgQIECAwEBgZILPVfs3Ey/Jfvsl/iTx3xOnJ8n/XeKgzCsECBAgQIBAowIjE/yi9u6R+TsN4upMf5Q4Okn+PZkqBAgQIECAQIMCK70G//Np78sSNf1I4sjEJ3NVf22Sez0x+G6mm7J8duYVAgQIECBAoCGBkQk+bayr9v+beGKS+I8Xt3mQ5A/Puu8uXm+eAAECBAgQaENgpVv0b08TK7H/bDU1V+u/lTg8sW0tJ8kfn7iq5hUCBAgQIECgLYGVEvyvpKkvTHx/0OSTMz0s8bTBsgkBAgQIECDQqMBKCf4X0uZX5Cr9G9X2TE/LpBL+r9ayQoAAAQIECLQrsFKCPyfNfviSpj8wyxcvWWeRAAECBAgQaExgpTfZ1Wvwn8hr7o/K9HOJuydulagre4UAAQIECBBoWGBkgs8t+foYXH2hzUMS/y3x14lTsv7aTBUCBAgQIECgYYGRCb7anGRe76L/YJftz5OKatMuqfvCLutVFwECBAgQ6JPAyNfgk2hvnjg28dXEfyyKo1cbIOfeIfHqxLk595WJCzK/OXFaoj5vrxAgQIAAAQJbIbDSFfzv5jz1a3K/nbh00TkvWDS/WrNvzIn2TtTr/WcmNid2TRyQqK/F3TFX9G/OvEKAAAECBAiMIbBSgr9Njn9TEusJY5xn2l0elhMcnLoWPnNf56uXB05Jcn9+pkcmJPggKAQIECBAYByBkbfoc/CHEk9Jgr3lOCeacp/6jP2DRpzj0Vl//ohtVhMgQIAAAQLLCKx0BX/r7P/IxOOT5Ou2+TWD4+sral8wmF+tyRE5Ub3eX1+k861Efda+Xh7YP1FtrHYoBAgQIECAwJgCKyX4j+QcXxycZ89ML0pUkl/11+DzhOHUJPcDc+6DE3dI7Jf4QqJuy5+c7fOZKgQIECBAgMCYAisl+PqluPre+Sck5hIvSTw78RuJVS1J7jvkhHUV/5REvfZf9f0kcVbidYm/TSgECBAgQIDAmAIrvQb/zJzjwYn60Zkqn0pU0q/1q13qXfQ/k6h30de756td9RJBPZn4zTwBqCcWCgECBAgQIDCmwEpX8D+fc7w28b06V+6SX5VEW5+Bf0vij2vdKpaH5VxTv4s+7asnH08c0a69sv7TI7ZZTYAAAQIEeiWwUoKvL52pJH/ioh4/JvPnLVperdmFd9G/e5kTjv0u+jwJeWuOr7hRSfJ/fFZWklcIECBAgEDvBVZK8G9I7+uNbg9N7JMEeUqmmxIPSax28S761RZ1PgIECBDY0AIjE3yuhn+QpF7fJPdriXpX+0kVWV/vpF/VknMufhf9ppy8vtXu/IR30QdBIUCAAAECWyswMsHXiZJ4L83kb7b2pJPsn7ouz3EnTHKsYwgQIECAAIEbCoxM8Ll6f3F2fcoNd79u6eNJxvU99QoBAgQIECDQqMDIBJ/2fjjxr4N21+fS62Nrz098bLBu1SaDJxPbr3DCr+dJxXErbLeJAAECBAgQWCQwMsEnoZ6Z/SqGJYm4lusLb04crlydmU05zXMT70jUL8ktLfV6vEJgqwTyeL1lDqj3cVy4VQdOvvOdJz/UkQQIEFhdgZEJfkQ1t8/63UZsm3h1nkw8L3+M68ttbpL550x8IgcSuKHAvbL45cSxN1y9ZkuPXbMzOzEBAgS2UmBkgk/CrSv1py46380yv2/isEXrVnP2pTnZX6XenZPk6819CoHVELg8j6czVuNEWzpHHrvXbmkf2wkQINCVwMgEnwZ8MFGffV8oV2fmzPyxXJPb5YOk/qSFykwJECBAgACByQVGJvgk3PqhlwqFAAECBAgQmDGBkQk+txtHfUxucRfvlycC9atvCgECBAgQINCQwMgEnzZ+NvGMRH3RTf1Iy10Tz0vUrfuTE1WuuH7iXwIECBAgQKAlgZUSfL3B7g9yhf6BQYO/kKv60zN/RNat9q/JtWSiLQQIECBAYOYF6qNpo0q9k70+Fre43DMLy31OffE+5gkQIECAAIF1FljpCv6v07Z/ylX7r2T6hcS9E/slHpFQCBAgQIAAgYYFRl7B5zb8N9Lu+ybelqiPyP1+Yr+sPy1ThQABAgQIEGhYYGSCz5V7bXtm4gWJ+k34+q74D2X9XpkqBAgQIECAQMMCIxN82lzJ/cGJukVf5VOJ7yZqvUKAAAECBAg0LLBSgv/5tPu1ie9V+3Nr/qpMjk5U0lcIECBAgACBhgVWSvDnpt2V5BeXx2ThvMUrzBMgQIAAAQLtCaz0Lvo3pLn17vl6/X2fvPZe30u/KfGQhEKAAAECBAg0LLBSgr847T4g8WuJ+njcSRW5VX9NpgoBAgQIECDQsMBKCf7VafcPktD/tOH2axoBAgQIECCwjMBKCf6c7H+f3Jrf1lX7MnJWESDQB4E90okn5u9c/dZGF2W3VPLQ/E29sIvK1LGxBVZK8JeF5tGJi/PgrzfcLdya/6c8OF+0sdn0ngCBngjsmX58J1HvNeqivDWVVJ0SfBfaG7yOlRL88bH58jI+P1pmnVUECBCYWYFctFzbReNzsdRFNeogcJ3AyASfB3zdoq9QCBAgQIAAgRkTuNHn4PMM8/hEvS61TaY3S+w7Y33SXAIECBAgsOEFbpTgI1K/GlffO1/l5xLHXjfnHwIECBAgQGBmBJZL8DPTeA0lQIAAAQIElheQ4Jd3sZYAAQIECMy0wKg32d02r73vmJ7tnbhp5m+3qJeb8wa8Hy5aNkuAAAECBAg0JjAqwX9xSTvPXrT8/sw/YdGyWQIECBAgQKAxgeUS/K220Mb5LWy3mQABAgQIEFhngRsl+Nx+X/jGunVumuoJECBAgACBSQW8yW5SOccRIECAAIGGBST4hgdH0wgQIECAwKQCEvykco4jQIAAAQINC0jwDQ+OphEgQIAAgUkFJPhJ5RxHgAABAgQaFpDgGx4cTSNAgAABApMKSPCTyjmOAAECBAg0LCDBNzw4mkaAAAECBCYVkOAnlXMcAQIECBBoWECCb3hwNI0AAQIECEwqIMFPKuc4AgQIECDQsIAE3/DgaBoBAgQIEJhUQIKfVM5xBAgQIECgYQEJvuHB0TQCBAgQIDCpgAQ/qZzjCBAgQIBAwwISfMODo2kECBAgQGBSAQl+UjnHESBAgACBhgUk+IYHR9MIECBAgMCkAhL8pHKOI0CAAAECDQtI8A0PjqYRIECAAIFJBST4SeUcR4AAAQIEGhaQ4BseHE0jQIAAAQKTCkjwk8o5jgABAgQINCwgwTc8OJpGgAABAgQmFZDgJ5VzHAECBAgQaFhAgm94cDSNAAECBAhMKiDBTyrnOAIECBAg0LCABN/w4GgaAQIECBCYVECCn1TOcQQIECBAoGEBCb7hwdE0AgQIECAwqYAEP6mc4wgQIECAQMMCEnzDg6NpBAgQIEBgUgEJflI5xxEgQIAAgYYFJPiGB0fTCBAgQIDApAIS/KRyjiNAgAABAg0LSPAND46mESBAgACBSQUk+EnlHEeAAAECBBoWkOAbHhxNI0CAAAECkwpI8JPKOY4AAQIECDQsIME3PDiaRoAAAQIEJhWQ4CeVcxwBAgQIEGhYQIJveHA0jQABAgQITCogwU8q5zgCBAgQINCwgATf8OBoGgECBAgQmFRAgp9UznEECBAgQKBhAQm+4cHRNAIECBAgMKlAcwl+bm5uu8Tuk3bIcQQIECBAgMA22zSR4JPQd0i8OnFuBuXKxAWZ35w4LXG4gSJAgAABAgS2TmC7rdt9zfZ+Y868d+JRiTMTmxO7Jg5IHJ0kv+P8/PybM68QIECAAAECYwg0cQWfdj4s8awk8a8kLk1U+XHilKx/fuKxCYUAAQIECBAYU6CVBH9a2vugEW1+dNafP2Kb1QQIECBAgMAyAq3coj8ibTs2t+JfmOm3Ehcndkvsn6g2PjKhECBAgAABAmMKNJHgcyv+1CT3A9PmgxObEvV6fF211+vuJ9f9+ky3WHKOp2anx43Y8dZZ//kR26wmQIAAAQK9EmgiwZdocvjlmZywoJtkvVfmLxw3uQ+Oe2+mxy2cY8m0XsevN+4pBAgQIECg9wJNvAafZH5M4i6lnemdEx/NbH1k7vuZ/8vE9rVtSyVPBq5IXLxc5NjLEtdu6Ry2EyBAgACBPgg0keADedfETgPQl2f69UTdUr9fYlOi1ikECBAgQIDAmAKtJPjFzX14Fv4wV+EXJL6R+d9PHJJQCBAgQIAAgTEFWkrw98ut+H3S7s8l9lzU/rtl/tRFy2YJECBAgACBLQi08ia7d6Wdv5h4ZaI+HldvuDssCf8PM31O4tCEQoAAAQIECIwp0ESCz63416W9FfUmu9tksvBu9+Mz/9psv7S2KQQIECBAgMB4Ak0k+MVNTTL/bpYr6qNzdbteIUCAAAECBLZSoKXX4Ley6XYnQIAAAQIERglI8KNkrCdAgAABAjMsIMHP8OBpOgECBAgQGCUgwY+SsZ4AAQIECMywgAQ/w4On6QQIECBAYJRAc++iH9VQ6wkQINADgZunD0/Jx4Hr1zLXumybCt6ZTyNdsNYVOX+bAhJ8m+OiVQQI9FPgZ9OtUxLf76B7e6SOZyb+tIO6VNGggATf4KBoEgECvRW4Jj07NVfVn1rrHuYuwS+kjrpjoGxQAa/Bb9CB120CBAgQ6LeABN/v8dU7AgQIENigAhL8Bh143SZAgACBfgtI8P0eX70jQIAAgQ0qIMFv0IHXbQIECBDot4AE3+/x1TsCBAgQ2KACEvwGHXjdJkCAAIF+C0jw/R5fvSNAgACBDSogwW/QgddtAgQIEOi3gATf7/HVOwIECBDYoAK+qnaDDvx6dTtfn3l06r5X4ocdtOHeqeOkDupRBQECBJoTkOCbG5LeN2jn9PDwfBf3GWvd0zyZeGXqOGit63F+AgQItCjgFn2Lo6JNBAgQIEBgSgEJfkpAhxMgQIAAgRYFJPgWR0WbCBAgQIDAlAIS/JSADidAgAABAi0KSPAtjoo2ESBAgACBKQUk+CkBHU6AAAECBFoUkOBbHBVtIkCAAAECUwpI8FMCOpwAAQIECLQoIMG3OCraRIAAAQIEphSQ4KcEdDgBAgQIEGhRQIJvcVS0iQABAgQITCkgwU8J6HACBAgQINCigATf4qhoEwECBAgQmFJAgp8S0OEECBAgQKBFAQm+xVHRJgIECBAgMKWABD8loMMJECBAgECLAhJ8i6OiTQQIECBAYEoBCX5KQIcTIECAAIEWBST4FkdFmwgQIECAwJQCEvyUgA4nQIAAAQItCkjwLY6KNhEgQIAAgSkFJPgpAR1OgAABAgRaFJDgWxwVbSJAgAABAlMKSPBTAjqcAAECBAi0KLBdi43Spm4F5ubmDkyNe3RU6+4d1aMaAgQIbGgBCX5DD/822yS53zkExybe1RHFg1PPPokzOqpPNQQIENiQAhL8hhz2G3T6pln6+Pz8/FE3WLtGC3lC8eScevs1Or3TEiBAgMBAwGvwHgoECBAgQKCHAhJ8DwdVlwgQIECAgATvMUCAAAECBHooIMH3cFB1iQABAgQISPAeAwQIECBAoIcCEnwPB1WXCBAgQICABO8xQIAAAQIEeiggwfdwUHWJAAECBAj4ohuPAQIECPRToL7E6qH5cqkdO+reOfnCrHd0VJdqxhCQ4MdAsgsBAgRmUOBuafNc4jMdtf2I1CPBd4Q9TjUS/DhK9iFAgMBsClyRq+pPddH03Cn4nS7qUcf4Al6DH9/KngQIECBAYGYEJPiZGSoNJUCAAAEC4wtI8ONb2ZMAAQIECMyMgAQ/M0OloQQIECBAYHwBCX58K3sSIECAAIGZEZDgZ2aoNJQAAQIECIwvIMGPb2VPAgQIECAwMwIS/MwMlYYSIECAAIHxBST48a3sSYAAAQIEZkZAgp+ZodJQAgQIECAwvoAEP76VPQkQIECAwMwI+C76mRkqDSVAgEDTAjfL99E/qqMWXpPv2D++o7pmthoJfmaHTsMJECDQlMC90pp7JK7ooFVPqJ/BTZI/roO6ZrYKCb7BocsDd1Oa9aTElYm1LrdNBXusdSXOT4BA7wUuSw9fn6Rb0zUt+Rv541TwU2taSQ9OLsG3OYj/I806PXFRB82bTx2HdFCPKggQIECgQwEJfkzsPGN8c3bdcczdp93tvjnBy/JM+GPTnmhLx6dfN8s+125pP9sJECBAYLYEJPjxx+s22fW3x999qj3fmaM3TXUGBxMgQIDAhhaQ4Mcf/qtyRX32+LtPvmeuqq+e/GhHEiBAgACBbbbxOXiPAgIECBAg0EMBCb6Hg6pLBAgQIECguVv0uT1dbdolt8MvNDwECBAgQGAZgbmse0DyxbbLbFuLVackJ52xFidey3M2cQWfQdoh8erEuelsffb7gsxvTpyWOHwtAZybAAECBGZO4P5p8c8ndugg9k4dH0jMXGnlCv6NkSvE+prDMxObE7smDkgcnSRf31hUH1NbsWS/X8oODx2x009n/ddGbBtn9d1y/j8ZZ8dV2Kf6fdPUt88qnGtLpyj3/TrsW9X3nNQ3apy21N6t2X6n7HyPDvu2S+o7KvV18QVFD0xdV3fUt/o7sXtHdaWq6/7fe/yXxHSl94//8NTf9bUu9fifyTvKc0mca42zxfPnD8dZ2engtOX7S3fOtoOy7shse/jSbUuXs++tsm6vpesHyztlen7OU08gtrrk3LfPQZWcuij1Lvp6UHVVuqzvqnRq+646lnquSXR1G6/LvnXZrxquLvvW5eOx+tZlfV06Vt+6fJx02bcu+1WO30ru+M+amaXSZRJZyeW0bHxQ4t3L7PTorDt/mfU3WpUB+EFWVqx6ybnrSUiFQoAAAQIEmhdo5Qr+wEgdm7gk8a3ExYndEvsn6knII5Ngz8lUIUCAAAECBMYQaCLBVztzC7y+BvbgxKZE3Qqvq/ZvJk5Ocl//1xHSEIUAAQIECMyKQDMJflbAtJMAAQIECMyCQBMfk5sFKG0kQIAAAQKzJCDBz9JoaSsBAgQIEBhTQIIfE8puBAgQIEBglgQk+FkaLW0lQIAAAQJjCkjwY0LZjQABAgQIzJKABD9Lo6WtBAgQIEBgTAEJfkwouxEgQIAAgVkSkOBnabS0lQABAgQIjCnQynfRj9ncjbFbvtXvfenppsRPetjjO6ZP9Z3+1/awb/XrXd/oYb+qS33tW/3w0W0SZyf6VurXDetHtm70I1496Ogt0odj8iWnf96DvqxZFyT4NaOd6sT1vft/ngfvF6c6S4MH58nLcWnW09K3HzfYvKmalL6dmH4dMtVJGj24r31Lv/YL+R9l3J7WKP3EzUrfHpyD75++/dHEJ2n0wPTtWWla7/6GrDa3W/SrLep8BAgQIECgAQEJvoFB0AQCBAgQILDaAhL8aos6HwECBAgQaEBAgm9gEDSBAAECBAistoAEv9qizkeAAAECBBoQkOAbGARNIECAAAECqy0wl49QrPY5nW9KgXwEZI+c4tKMzZVTnqq5w9O3W6VR56dvvfscfPq2T/p1XnPoq9CgvvYt/aqPCu+ecTt/FZiaOkX6tmMatGP6dlFTDVuFxqRv9Rn/a9O3zatwut6eQoLv7dDqGAECBAhsZAG36Dfy6Os7AQIECPRWQILv7dDqGAECBAhsZAEJfiOPvr4TIECAQG8FJPjeDq2OESBAgMBGFpDgN/Lo6zsBAgQI9FZAgu/t0OoYAQIECGxkAQl+I4++vhMgQIBAbwUk+N4Obfsdy5dVbN9+K7WwBDJWVbalQYDA7AhI8A2OVf6QHpB4d+LLiU8mfq3BZk7VpPTpsJzglKlO0sjB6cshic8kzkp8OLF7I01blWakP/V34n2J31mVEzZwkvRp+8RrEl8cxJ9kukMDTZu6CenHtok3JE5NfC3xwqlP2tgJ0qddE+ckHtJY05pqjgTf1HAMG3N05v4xX8P4s5k+JfEXeSDXV7zOfEk/dk/8ZTryvxJzs96h9OUW6cOxid9K3ClxVuJ1iV6U9O9e6chJiUN70aH/6sTTMnvHxMGDOCDTpyb6UJ6TTuyXqLG7T+IlGceDMu1Tqb+Ru/apQ2vRFwl+LVSnOGf+I9aYvCnx7jpNkvz3Mrkkcc9a7kGpRPGTRP2B7UO5dzpxesbpK4mrMv/GxK/0oWODPtQ4/UXiusdjj/r15fTld2rMBuP2tSzfvyf9+6v04+npV/3eQ0XdmejNyyv5G/nY9OfyxDcSygoCEvwKOOuxqf5TJo4b/NGp1z4rIdYt317czk6/PpD43fTnsvXwXYM660rpvEXn/UHmd8u43XTRupmdzVj9duL9M9uBEQ1Pn76Q+FZtzljtlMkTEx+p5Vkv6dcViUvSr19PXz6d+GiiF38/0qdbpi+vTLwsoWxBQILfAtB6bs6DuW75vjPx3PyH7d0vQq2n7SrWvWfOtfgXrRaeuPzUKtbhVGskkP9jdXX7nkQl/A+uUTXrddr5VFx3Juou0/7r1YhVrrfuTvxBxuriVT5vL08nwa/zsOYPzMMTVw7iwoXmZPkumT8x8ao8mN+9sH6WpqP6Nkt9GKOtP8w+i18LrJ+xvDxjNhzLMc5hl3UQyOOzkvuHEnX7uq7ge1XyGHxv4qnp1GcTz531zmW86o7EHasfmX90JjdPHJT5TZkqywjUbyEr6ytQt84OGjThmprmAXuHTD6R+OP8B31LrZvRcqO+zWg/Vmr2d7Jx06Idav7cRctmGxTI/7H621dX7pXcfzn/z65ssJkTNSl9e0YO/Pf06fODE/x7pr800cnaOqiePF+a+L1Bs26daX0a5+uJsxPKEgEJfglI14v5T1i3mr60pN53Zvldifqo3B6DbZfO2h+hEX1b0tWZX/xUevB3GadDM/1M4sWJvt3qTZd6V+qK9o6JRyR+KuNXL6lcmcdsJZBZL3Vn4lXp06My3TlRV/HHJWa6ZGzelg5UXFfSv3oC84qsr4shZRkBt+iXQVnPVXnQ1sda7peoN6L9aFHUM1WlMYH8cbkiTapkUX9A601b+yb+OKG0LfCCNO/uie8lFv6fvbftJo/dumOy5w8Tpye+kPhk4rUJZYMJzOUP1Abrsu4SWH2BPDGru2G75P+T195Xn9cZJxDIY7I+HVDvqL96gsMd0gMBCb4Hg6gLBAgQIEBgqYBb9EtFLBMgQIAAgR4ISPA9GERdIECAAAECSwUk+KUilgkQIECAQA8EJPgeDKIuECBAgACBpQIS/FIRywQIECBAoAcCEnwPBlEXCBAgQIDAUgEJfqmIZQIECBAg0AMBCb4Hg6gLBAgQIEBgqYAEv1TEMgECBAgQ6IGABN+DQdQFAgQIECCwVECCXypimQABAgQI9EBAgu/BIOoCAQIECBBYKiDBLxWxTIAAAQIEeiAgwfdgEHWBAAECBAgsFZDgl4pYJkCAAAECPRCQ4HswiLpAgAABAgSWCkjwS0UsEyBAgACBHghI8D0YRF0gQIAAAQJLBST4pSKWCWwAgbm5ud9MXJ24eBA/zPRDif3H6X72OzKxwzj72ocAgfURkODXx12tBFoQ+NT8/PyuFWnM7RJfSvxjEvctV2pctm+b7Uck/P1YCco2Auss4D/oOg+A6gm0IJAkvzlxVNpyYeKwalMS+QGJExI/TpyTeGGtT3nP9ZNtvpx1t0iM2m+wmwkBAushIMGvh7o6CbQrcGqadqdB8/4+048lbp2o5P6aJPM9Mv2NRJUHJn6UGLVf7aMQILBOAtutU72qJUCgTYHz0qw7DJr2zEwr4c8lzk5cltgrcUaiykW56p9P0h+13wXX7+ZfAgTWQ0CCXw91dRJoV2DfNO07g+ZVMv904i6Jf0vUa+/L3fUbd78crhAg0JXAcv9Zu6pbPQQINCSQK/GbpTkPSfzL4Fb8BzP/ukTdoj80UVfyFcMy7n7DA8wQINCZgATfGbWKCDQnsH0l6MReiXumde9IXJT4h8TOiSqfyF34yzOtN97tmNg+y9dkekVit8TI/bJNIUBgHQXcol9HfFUTWGeBQ1J/vUluPvHDxEmJRwwS+LeT9Cvh1zvla5+vJT6XqDfgfTlxQqJu5d8jsdJ+2awQILAeAnP5z7we9aqTAIEZEEhy3ynNzJ+J+Z8sbW5ty/rNtX6l/ZYeZ5kAgW4EJPhunNVCgAABAgQ6FfAafKfcKiNAgAABAt0ISPDdOKuFAAECBAh0KiDBd8qtMgIECBAg0I2ABN+Ns1oIECBAgECnAhJ8p9wqI0CAAAEC3QhI8N04q4UAAQIECHQqIMF3yq0yAgQIECDQjYAE342zWggQIECAQKcCEnyn3CojQIAAAQLdCEjw3TirhQABAgQIdCogwXfKrTICBAgQINCNgATfjbNaCBAgQIBApwISfKfcKiNAgAABAt0ISPDdOKuFAAECBAh0KiDBd8qtMgIECBAg0I2ABN+Ns1oIECBAgECnAv8f7Jf4eTYh5kAAAAAASUVORK5CYII=" alt="plot of chunk unnamed-chunk-2"/> </p>
<p>So an example analysis might have an outline like</p>
<ol>
<li><p>Import data</p></li>
<li><p>Check the import</p></li>
<li><p>Plot Data</p></li>
<li><p>Generate summary statistics</p></li>
<li><p>Check for correlated covariates</p></li>
<li><p>Create regression models</p></li>
<li><p>Check model assumptions</p></li>
<li><p>Check model fit</p></li>
<li><p>Generate plots and tables</p></li>
</ol>
<p>From here, fill in the gaps. It should make you more productive, especially since the planning phase can be used to make sure you aren't missing anything. This is hard to check when you are going by the seat of your pants.
To me, this is the approach most programmers use. Sure, lots of
people during an exploratory phase will just go to the blinking
cursor and play for a little bit, and for quick and dirty tasks
they may shortcut, but any serious analysis is often planned
out </p>
<h2>Finding Help </h2>
<h3>Google</h3>
<p>When you have a question, typically you can find it through Google. I tend to search under “R cran” then whatever. </p>
<h3>R Mailing Lists</h3>
<p>Another route is to read from the <a href="http://www.r-project.org/mail.html">R Mailing Lists</a>. I will post a note of caution on this front: if you consider posting, make sure you read the <a href="http://www.r-project.org/posting-guide.html">posting guide</a> before you post, and spend a few moments on Google making sure there isn't an obvious answer to your question. This is because “dumb” questions can be harshly treated on this board. To be fair, one of the famous retorters here is one of the lead developers of R, and takes time out of his development and academic schedule to answer questions, so it is at least courteous to make an effort to be sure that you have a legitimate new question, rather than rehashing something that has been answered many times.</p>
</body>
</html>
Anonymoushttp://www.blogger.com/profile/04072467483406291860noreply@blogger.com0tag:blogger.com,1999:blog-3118042720852030585.post-23100475237456282272012-09-14T10:43:00.000-07:002012-09-14T10:43:00.703-07:00Welcome to the Three Standard Deviations Away blog site. Here you will find a lively discussion about statistics and data analysis related topics. In addition there will be links and pages devoted to learning statistical computation techniques. I hope this blog is a good forum for addressing relevant issues in statistics.Anonymoushttp://www.blogger.com/profile/17155380425525333882noreply@blogger.com0