<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arquivo para Linguagem R - Bóson Treinamentos em Ciência e Tecnologia</title>
	<atom:link href="https://www.bosontreinamentos.com.br/tag/linguagem-r/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.bosontreinamentos.com.br/tag/linguagem-r/</link>
	<description>Artigos e Tutoriais sobre Desenvolvimento de Software, Bancos de Dados SQL, Linux, Lógica de Programação, Inteligência Artificial, Hardware, Eletrônica, Arduino, Técnicas e Teorias de Estudo e Aprendizagem, Carreira em TI, Ciências Cognitivas, e muito mais!</description>
	<lastBuildDate>Fri, 06 Dec 2019 01:29:43 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.7</generator>
	<item>
		<title>Operadores Lógicos e Operadores de Comparação em R</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/operadores-logicos-e-operadores-de-comparacao-em-r/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/operadores-logicos-e-operadores-de-comparacao-em-r/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Thu, 05 Dec 2019 15:32:39 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<category><![CDATA[Programação]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14191</guid>

					<description><![CDATA[<p>Operadores Lógicos e de Comparação em R Nesta lição abordaremos dois tipos de operadores em linguagem R: Operadores Lógicos e Operadores de Comparação. Esse operadores trabalham sempre com dois valores de retorno possíveis: TRUE (verdadeiro) ou FALSE (falso), também denotados pelas letras maiúsculas T e F, respectivamente. Operadores de Comparação em R Também conhecidos como operadores relacionais, permitem estabelecer a relação entre dois valores de entrada, e retornar um valor lógico verdadeiro ou falso dependendo da relação. Por exemplo, um operador de comparação pode comparar dois números e dizer se eles são iguais ou não. Os operadores&#160; de comparação em R são os seguintes: Operador Significado == igual a != diferente de &#62; maior que &#60; menor que &#62;= maior ou igual a &#60;= menor ou igual a Os operadores de comparação sempre retornam um valor lógico TRUE ou FALSE. Operadores Lógicos em R Também conhecidos como operadores booleanos, permitem trabalhar com múltiplas condições relacionais na mesma expressão, e retornam valores lógicos verdadeiro ou falso. Os operadores lógicos disponíveis em R são: Operador Descrição Exemplo Explicação &#38; AND lógico &#62; x &#60;− 0:2 &#62; y &#60;− 2:0 &#62; (x &#60; 1) &#38; (y &#62; 1) [1] TRUE FALSE FALSE Versão [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/operadores-logicos-e-operadores-de-comparacao-em-r/">Operadores Lógicos e Operadores de Comparação em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Operadores Lógicos e de Comparação em R</h2>
<p>Nesta lição abordaremos dois tipos de operadores em linguagem R: <a href="http://www.bosontreinamentos.com.br/logica-de-programacao/09-logica-de-programacao-operadores-e-expressoes-logicas/" target="_blank" rel="noopener">Operadores Lógicos</a> e <a href="http://www.bosontreinamentos.com.br/logica-de-programacao/08-logica-de-programacao-operadores-e-expressoes-relacionais/" target="_blank" rel="noopener">Operadores de Comparação</a>.</p>
<p>Esse operadores trabalham sempre com dois valores de retorno possíveis: <strong>TRUE</strong> (verdadeiro) ou <strong>FALSE</strong> (falso), também denotados pelas letras maiúsculas <strong>T</strong> e <strong>F</strong>, respectivamente.</p>
<h3>Operadores de Comparação em R</h3>
<p>Também conhecidos como operadores relacionais, permitem estabelecer a relação entre dois valores de entrada, e retornar um valor lógico verdadeiro ou falso dependendo da relação.</p>
<p>Por exemplo, um operador de comparação pode comparar dois números e dizer se eles são iguais ou não.</p>
<p>Os operadores&nbsp; de comparação em R são os seguintes:</p>
<table style="border-collapse: collapse; width: 60.4348%; height: 169px;" border="1">
<thead>
<tr style="height: 24px;">
<td style="width: 36.1822%; height: 24px; text-align: center;"><span style="font-size: 14pt;"><strong>Operador</strong></span></td>
<td style="width: 63.8178%; height: 24px; text-align: center;"><span style="font-size: 14pt;"><strong>Significado</strong></span></td>
</tr>
</thead>
<tbody>
<tr style="height: 24px;">
<td style="width: 36.1822%; height: 24px; text-align: center;">==</td>
<td style="width: 63.8178%; height: 24px;">igual a</td>
</tr>
<tr style="height: 24px;">
<td style="width: 36.1822%; height: 24px; text-align: center;">!=</td>
<td style="width: 63.8178%; height: 24px;">diferente de</td>
</tr>
<tr style="height: 24px;">
<td style="width: 36.1822%; height: 24px; text-align: center;">&gt;</td>
<td style="width: 63.8178%; height: 24px;">maior que</td>
</tr>
<tr style="height: 24px;">
<td style="width: 36.1822%; height: 24px; text-align: center;">&lt;</td>
<td style="width: 63.8178%; height: 24px;">menor que</td>
</tr>
<tr style="height: 24px;">
<td style="width: 36.1822%; height: 24px; text-align: center;">&gt;=</td>
<td style="width: 63.8178%; height: 24px;">maior ou igual a</td>
</tr>
<tr style="height: 25px;">
<td style="width: 36.1822%; height: 25px; text-align: center;">&lt;=</td>
<td style="width: 63.8178%; height: 25px;">menor ou igual a</td>
</tr>
</tbody>
</table>
<p>Os operadores de comparação sempre retornam um valor lógico TRUE ou FALSE.</p>
<h3><a href="http://www.bosontreinamentos.com.br/logica-de-programacao/09-logica-de-programacao-operadores-e-expressoes-logicas/" target="_blank" rel="noopener">Operadores Lógicos</a> em R</h3>
<p>Também conhecidos como operadores booleanos, permitem trabalhar com múltiplas condições relacionais na mesma expressão, e retornam valores lógicos verdadeiro ou falso.</p>
<p>Os operadores lógicos disponíveis em R são:</p>
<table style="border-collapse: collapse; width: 100%;" border="1">
<thead>
<tr>
<td style="width: 9.41128%; text-align: center;"><strong>Operador</strong></td>
<td style="width: 13.669%; text-align: center;"><strong>Descrição</strong></td>
<td style="width: 20.7823%; text-align: center;"><strong>Exemplo</strong></td>
<td style="width: 56.1374%; text-align: center;"><strong>Explicação</strong></td>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 9.41128%;">&amp;</td>
<td style="width: 13.669%;">AND lógico</td>
<td style="width: 20.7823%;">&gt; x &lt;− 0:2<br />
&gt; y &lt;− 2:0<br />
&gt; (x &lt; 1) &amp; (y &gt; 1)<br />
[1] TRUE FALSE FALSE</td>
<td style="width: 56.1374%;">Versão vetorizada. Compara dois elementos do tipo vetor e retorna um vetor de TRUEs e FALSEs</td>
</tr>
<tr>
<td style="width: 9.41128%;">&amp;&amp;</td>
<td style="width: 13.669%;">AND lógico</td>
<td style="width: 20.7823%;">&gt; x &lt;− 0:2<br />
&gt; y &lt;− 2:0<br />
&gt; (x &lt; 1) &amp;&amp; (y &gt; 1)<br />
[1] TRUE</td>
<td style="width: 56.1374%;">Versão não-vetorizada. Compara apenas o primeiro valor de cada vetor, retornando um valor lógico.</td>
</tr>
<tr>
<td style="width: 9.41128%;">|</td>
<td style="width: 13.669%;">OR lógico</td>
<td style="width: 20.7823%;">&gt; x &lt;− 0:2<br />
&gt; y &lt;− 2:0<br />
&gt; (x &lt; 1) | (y &gt; 1)<br />
[1] TRUE FALSE FALSE</td>
<td style="width: 56.1374%;">Versão vetorizada. Compara dois elementos do tipo vetor e retorna um vetor de TRUEs e FALSEs</td>
</tr>
<tr>
<td style="width: 9.41128%;">||</td>
<td style="width: 13.669%;">OR lógico</td>
<td style="width: 20.7823%;">&gt; x &lt;− 0:2<br />
&gt; y &lt;− 2:0<br />
&gt; (x &lt; 1) || (y &gt; 1)<br />
[1] TRUE</td>
<td style="width: 56.1374%;">Versão não-vetorizada. Compara apenas o primeiro valor de cada vetor, retornando um valor lógico.</td>
</tr>
<tr>
<td style="width: 9.41128%;">!</td>
<td style="width: 13.669%;">NOT lógico</td>
<td style="width: 20.7823%;">&gt; x &lt;− 0:2<br />
&gt; y &lt;− 2:0<br />
&gt; !y == x<br />
[1] TRUE FALSE TRUE</td>
<td style="width: 56.1374%;">Negação lógica. Retorna um valor lógico único ou um vetor de TRUE / FALSE.</td>
</tr>
<tr>
<td style="width: 9.41128%;">xor</td>
<td style="width: 13.669%;"><a href="http://www.bosontreinamentos.com.br/eletronica/eletronica-digital/porta-logica-xor/" target="_blank" rel="noopener">XOR</a></td>
<td style="width: 20.7823%;">&gt; x &lt;− TRUE<br />
&gt; y &lt;− FALSE<br />
&gt; xor(x,y)<br />
[1] TRUE</td>
<td style="width: 56.1374%;">Ou Exclusivo. Retorna valor lógico TRUE se ambos os valores de entrada forem diferentes entre si, e retorna FALSE se os valores forem iguais.</td>
</tr>
</tbody>
</table>
<p>Além desses operadores lógicos, também temos disponível em R a&nbsp;função <em><strong>isTRUE(x)</strong></em>, que verifica se o valor lógico armazenado na variável x é verdadeiro ou não.</p>
<h3>Exemplo de Operadores de Comparação</h3>
<p># Comparando valores numéricos</p>
<pre>5 &lt; 8
50 &gt; 100</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15876" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-R-01.png" alt="Operadores de Comparação em Linguagem R" width="172" height="71" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-R-01.png 172w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-R-01-170x71.png 170w" sizes="auto, (max-width: 172px) 100vw, 172px" /></p>
<p>Podemos armazenar os valores lógicos em variáveis:</p>
<pre>resultado &lt;- 4 == 9
print(resultado)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15877" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-comparar-R-02.png" alt="Operador de Comparação em R" width="188" height="50"></p>
<p>E verificar o tipo da variável:</p>
<pre>typeof(resultado)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15878" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-comparar-R-tipo-dado-03.png" alt="operador typeof em linguagem R" width="171" height="31" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-comparar-R-tipo-dado-03.png 171w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-comparar-R-tipo-dado-03-170x31.png 170w" sizes="auto, (max-width: 171px) 100vw, 171px" /></p>
<h3>Exemplos de Operadores Lógicos</h3>
<p><strong># Operador not:</strong></p>
<pre>res &lt;- !TRUE
print(res)
res2 &lt;- !(6 != 6)
print(res2)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15879" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-NOT-R-04.png" alt="Operador lógico NOT em linguagem R" width="179" height="90"></p>
<p><strong># Operador or</strong></p>
<pre>print(res | res2)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15881" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-OR-R-05.png" alt="Operador Lógico OR em linguagem R" width="159" height="35"></p>
<p><strong># Operador and</strong></p>
<pre>print(res &amp; res2)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15882" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-AND-R-06.png" alt="Operados lógico AND em linguagem R" width="172" height="35" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-AND-R-06.png 172w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-AND-R-06-170x35.png 170w" sizes="auto, (max-width: 172px) 100vw, 172px" /></p>
<p><strong># Usando a função isTRUE()</strong></p>
<pre>isTRUE(res)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15883" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/isTrue-R.png" alt="Função isTRUE em linguagem R" width="149" height="34"></p>
<p><strong># Operador lógico XOR</strong></p>
<pre>xor(res, res2)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15885" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/12/operador-logico-XOR-R-07.png" alt="Operador lógico XOR em linguagem R" width="132" height="32"></p>
<p>É isso aí! Continuaremos a estudar operadores em R na próxima lição. Até!</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/operadores-logicos-e-operadores-de-comparacao-em-r/">Operadores Lógicos e Operadores de Comparação em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/operadores-logicos-e-operadores-de-comparacao-em-r/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Como criar matrizes em R</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/como-criar-matrizes-em-r/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/como-criar-matrizes-em-r/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Wed, 20 Feb 2019 17:33:16 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14374</guid>

					<description><![CDATA[<p>Como criar matrizes em R Na lição anterior definimos o que é uma matriz em R, quais suas aplicações e como endereçar seus elementos. Agora iremos mostrar como é possível criar matrizes utilizando três funções bastante comuns em linguagem R: matrix(), rbind() e cbind(). Função matrix() Toma um vetor e o transforma em matriz, dividindo os dados presentes no vetor em várias linhas da matriz. Sintaxe: matrix(data = NA, nrow = x, ncol = y, byrow = TRUE &#124; T &#124; F &#124; FALSE) Onde: data é a fonte dos dados (por exemplo, um vetor) nrow é o número de linhas desejadas ncol é o número de colunas desejadas byrow indica se a matriz será preenchida por linhas ou colunas. O padrão é F ou FALSE (por colunas). Função rbind() Conecta vetores formando linhas de uma matriz com cada vetor (r = row) Sintaxe: rbind(vetor1, vetor2, ..., vetorN) Função cbind() Conecta vetores formando colunas de uma matriz com cada vetor (c = column) Sintaxe: cbind(vetor1, vetor2, ..., vetorN) Exemplos 1 &#8211; Criar um vetor com a função matrix() Iniciamos criando um vetor com, digamos, 20 posições preenchidas com números: &#62; vetor &#60;- 1:20 Agora vamos transformar esse vetor em uma [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/como-criar-matrizes-em-r/">Como criar matrizes em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Como criar matrizes em R</h2>
<p>Na lição anterior definimos o que é uma matriz em R, quais suas aplicações e como endereçar seus elementos. Agora iremos mostrar como é possível criar matrizes utilizando três funções bastante comuns em linguagem R: <strong>matrix()</strong>, <strong>rbind()</strong> e <strong>cbind()</strong>.</p>
<h3>Função matrix()</h3>
<p>Toma um vetor e o transforma em matriz, dividindo os dados presentes no vetor em várias linhas da matriz.</p>
<p>Sintaxe:</p>
<pre><span style="color: #800080;">matrix(data = NA, nrow = x, ncol = y, byrow = TRUE | T | F | FALSE)</span></pre>
<p>Onde:</p>
<ul>
<li><strong>data</strong> é a fonte dos dados (por exemplo, um vetor)</li>
<li><strong>nrow</strong> é o número de linhas desejadas</li>
<li><strong>ncol</strong> é o número de colunas desejadas</li>
<li><strong>byrow</strong> indica se a matriz será preenchida por linhas ou colunas. O padrão é F ou FALSE (por colunas).</li>
</ul>
<h3>Função rbind()</h3>
<p>Conecta vetores formando linhas de uma matriz com cada vetor (r = row)</p>
<p><strong>Sintaxe:</strong></p>
<pre><span style="color: #800080;">rbind(vetor1, vetor2, ..., vetorN)</span></pre>
<h3>Função cbind()</h3>
<p>Conecta vetores formando colunas de uma matriz com cada vetor (c = column)</p>
<p><strong>Sintaxe:</strong></p>
<pre><span style="color: #800080;">cbind(vetor1, vetor2, ..., vetorN)</span></pre>
<h3>Exemplos</h3>
<h4>1 &#8211; Criar um vetor com a função <strong>matrix()</strong></h4>
<p>Iniciamos criando um vetor com, digamos, 20 posições preenchidas com números:</p>
<pre>&gt; vetor &lt;- 1:20</pre>
<p>Agora vamos transformar esse vetor em uma matriz A 4&#215;5 (quatro linhas por cinco colunas) da seguinte forma:</p>
<pre>&gt; A &lt;- matrix(vetor, 4, 5)</pre>
<p>E então verificamos o conteúdo da matriz criada:</p>
<pre>&gt; A</pre>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-14376 size-full" title="Criar matriz em linguagem R" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/criar-matriz-linguagem-R.jpg" alt="Criar matriz em linguagem R" width="437" height="176" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/criar-matriz-linguagem-R.jpg 437w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/criar-matriz-linguagem-R-420x169.jpg 420w" sizes="auto, (max-width: 437px) 100vw, 437px" /></p>
<p>Note os índices indicados para as linhas e colunas da matriz criada.</p>
<p>É importante que o produto do número de linhas pelo número de colunas seja igual ao número total de itens do vetor, para que a matriz possa ser corretamente criada e preenchida. Em nosso caso, 4 linhas x 5 colunas = 20 itens, que é o tamanho do vetor.</p>
<p>E como acessamos o valor armazenado em uma posição da matriz? É simples: basta usar o nome da matriz, seguida de colchetes contendo o número da linha e da coluna separados por vírgulas, nessa ordem. Por exemplo, vamos acessar o elemento que está na linha 3, coluna 4 (número 15):</p>
<pre>&gt; A[3,4]
<span style="color: #ff9900;">[1] 15</span></pre>
<h4>2 &#8211; Vamos agora criar uma matriz usando a função <strong>rbind()</strong></h4>
<p>Começamos criando, por exemplo, três vetores de caracteres, como segue:</p>
<pre>&gt; v1 &lt;- c("SP","RJ","MG")
&gt; v2 &lt;- c("RN","MT","AM")
&gt; v3 &lt;- c("PE","RS","SC")</pre>
<p>E então criamos uma matriz B unindo os três vetores criados coma função <strong>rbind()</strong>:</p>
<pre>&gt; B &lt;- rbind(v1, v2, v3)</pre>
<p>E então verificamos o conteúdo da matriz:</p>
<pre>&gt; B</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-14379" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/criar-matriz-rbind-linguagem-R.jpg" alt="Criando uma matriz com rbind() em linguagem R" width="279" height="115"></p>
<p>Note que são mostrados os nomes dos vetores v1, v2 e v3 nas linhas do vetor criado. Porém, para acessar uma de suas posições, basta referenciá-las normalmente pelos números de linha e coluna, como por exemplo:</p>
<pre>&gt; B[3,3]
<span style="color: #ff9900;">     v3</span>
<span style="color: #ff9900;">[1] "SC"</span></pre>
<p>Também podemos acessar o elemento fornecendo o nome do vetor que originou a linha, em vez do número da linha em si:</p>
<pre>&gt; B["v3",3]
<span style="color: #ff9900;">      v3</span>
<span style="color: #ff9900;">[1] "SC"</span></pre>
<h4>3 &#8211; E por fim vamos criar uma matriz usando a função <strong>cbind()</strong>.</h4>
<p>Primeiramente vamos criar três vetores numéricos, com 6 elementos em cada, como segue:</p>
<pre>&gt; n1 &lt;- 1:6
&gt; n2 &lt;- 12:17
&gt; n3 &lt;- 24:29</pre>
<p>E então criamos a matriz C unindo os três vetores criados com a função cbind():</p>
<pre>&gt; C &lt;- cbind(n1, n2, n3)</pre>
<p>Finalmente, verificamos o conteúdo da matriz:</p>
<p>C</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-14381" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/criar-matriz-cbind-linguagem-R.jpg" alt="Criar uma matriz com a função cbind() em R" width="226" height="232"></p>
<p>Note que os elementos são arranjados em colunas, em vez de linhas, como ocorreu com a função rbind(). E perceba também que, em vez de serem mostrados os números de índice das colunas, são mostrados os nomes dos vetores empregados. Porém, o processo de acesso aos elementos da matriz é o mesmo: basta indicar entre os colchetes os números da linha e da coluna desejados:</p>
<pre>C[4,3]
<span style="color: #ff9900;">n3</span>
<span style="color: #ff9900;">[1] 27</span></pre>
<p>Ou ainda usar o nome da coluna:</p>
<pre>C[4,"n3"]
<span style="color: #ff9900;">n3</span>
<span style="color: #ff9900;">27</span></pre>
<p>É isso aí! Na próxima lição vamos nos aprofundar na manipulação dos elementos de uma matriz, incluindo a atribuição, leitura e alteração dos elementos.</p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/como-criar-matrizes-em-r/">Como criar matrizes em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/como-criar-matrizes-em-r/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Matrizes em R</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/matrizes-em-r/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/matrizes-em-r/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Wed, 20 Feb 2019 17:25:45 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14367</guid>

					<description><![CDATA[<p>Matrizes em R Damos o nome de matriz a um vetor bidimensional, composto por linhas e colunas, como uma espécie de tabela.&#160;Na verdade, podemos considerar uma matriz como um conjunto de vetores interligados. As matrizes encontram inúmeras aplicações em computação, principalmente relacionadas às áreas de física, engenharia e análise de dados, que possuem fórmulas que dependem de quantidades multidimensionais e conjuntos de dados de múltiplas dimensões. Um exemplo bem simples de aplicação de matrizes é a construção de jogos de computadores e em computação gráfica, para realizar transformações 2D e 3D, entre inúmeras outras. Assim como acontece com os vetores em R, somente é possível armazenar dados de um mesmo tipo nas posições de uma matriz. Assim, teremos matrizes de inteiros, ou de caracteres, ou de valores lógicos, mas não matrizes que misturem valores inteiros com caracteres, por exemplo. Além disso, os números de índice tanto das colunas quanto das linhas se inicia em 1, em vez de 0, com acontece em muitas linguagens de programação. Cuidado com esse detalhe! Abaixo temos um exemplo de uma matriz A com 4 linhas e 4 colunas: E, logo a seguir, temos a mesma matriz A com alguns dados inseridos em posições diversas: [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/matrizes-em-r/">Matrizes em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Matrizes em R</h2>
<p>Damos o nome de matriz a um vetor bidimensional, composto por linhas e colunas, como uma espécie de tabela.&nbsp;Na verdade, podemos considerar uma matriz como um conjunto de vetores interligados.</p>
<p>As matrizes encontram inúmeras aplicações em computação, principalmente relacionadas às áreas de física, engenharia e análise de dados, que possuem fórmulas que dependem de quantidades multidimensionais e conjuntos de dados de múltiplas dimensões. Um exemplo bem simples de aplicação de matrizes é a construção de jogos de computadores e em computação gráfica, para realizar transformações 2D e 3D, entre inúmeras outras.</p>
<p>Assim como acontece com os vetores em R, somente é possível armazenar dados de um mesmo tipo nas posições de uma matriz. Assim, teremos matrizes de inteiros, ou de caracteres, ou de valores lógicos, mas não matrizes que misturem valores inteiros com caracteres, por exemplo. Além disso, os números de índice tanto das colunas quanto das linhas se inicia em <strong>1</strong>, em vez de 0, com acontece em muitas linguagens de programação. Cuidado com esse detalhe!</p>
<p>Abaixo temos um exemplo de uma matriz A com 4 linhas e 4 colunas:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-14370" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/matriz-linguagem-R-dados.jpg" alt="Matriz em linguagem R" width="609" height="344" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/matriz-linguagem-R-dados.jpg 609w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/matriz-linguagem-R-dados-420x237.jpg 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/matriz-linguagem-R-dados-174x98.jpg 174w" sizes="auto, (max-width: 609px) 100vw, 609px" /></p>
<p>E, logo a seguir, temos a mesma matriz A com alguns dados inseridos em posições diversas:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-14371" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/matriz-dados-linguagem-R-preenchida.jpg" alt="Matriz com dados em linguagem R" width="611" height="352" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/matriz-dados-linguagem-R-preenchida.jpg 611w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/matriz-dados-linguagem-R-preenchida-420x242.jpg 420w" sizes="auto, (max-width: 611px) 100vw, 611px" /></p>
<h3>Indexando os elementos de uma matriz</h3>
<p>Para referenciar um elemento dentro de uma matriz, usamos um par de valores de índice, que representam a linha onde o valor se encontra e a coluna, respectivamente. Esses valores são números separados por uma vírgula, e posicionados dentro de colchetes (lembre-se, a posição em um vetor também é representada por um número dentro de colchetes), seguindo o nome da matriz (em nosso exemplo, matriz A). Ou seja:</p>
<pre><strong>NomeMatriz[Linha, Coluna]</strong></pre>
<p>Desta forma, na matriz mostrada anteriormente temos os valores armazenados nas seguintes posições:</p>
<p>Valor 22: posição <strong>A[1,1]</strong><br />
Valor 32: posição <strong>A[2,3]</strong><br />
Valor 15: posição <strong>A[2,2]</strong><br />
Valor 96: posição <strong>A[4,3]</strong></p>
<p>Em R, podemos fazer referência a todos os elementos de uma linha em particular indicando dentro dos colchetes o números dessa linha, seguido por uma vírgula, e sem indicar o número da coluna. Assim, podemos referenciar, por exemplo, a coluna 3 de nossa matriz da seguinte forma:</p>
<pre>&gt; A[3,]</pre>
<p>Isso permite selecionar todos os dados da linha 3 da matriz. E, de mesma forma, também é possível referenciar todos os valores de uma dada coluna escrevendo dentro dos colchetes uma vírgula, seguida do número da coluna &#8211; por exemplo, a coluna 2:</p>
<pre>&gt; A[,2]</pre>
<p>Assim, teremos todos os dados presentes na coluna 2 da matriz A.</p>
<p>Na próxima lição vamos explorar as possibilidades existentes para a criação de matrizes em R.</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/matrizes-em-r/">Matrizes em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/matrizes-em-r/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Trabalhando com vetores nomeados em R</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-nomeados-em-r/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-nomeados-em-r/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Tue, 19 Feb 2019 22:56:32 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14347</guid>

					<description><![CDATA[<p>Vetores nomeados em R Já sabemos que os vetores possuem um número de índice que identifica cada valor armazenado em suas posições. Assim, para acessar um elemento qualquer, usamos esse número de índice &#8211; por exemplo, para acessar o quarto elemento de um vetor usamos o índice [4]. Porém, em R também é possível atribuir nomes às posições de índice em um vetor, de modo a ser possível acessar esses elementos por meio deste nome escolhido, em vez de utilizar apenas o seu valor numérico. Usar um nome de identificação possui inúmeras utilidades em R, como por exemplo, criar tabelas de lookup. Um exemplo de vetor nomeado é um dataset (conjunto de dados) interno de nome&#160;islands, disponível pronto para uso no R, cuja estrutura pode ser analisada usando-se a função str(): &#62; str(islands) Named num [1:48] 11506 5500 16988 2968 16 ... - attr(*, "names") = chr [1:48]&#160;"Africa" "Antarctica" "Asia" "Australia" ... Esse vetor armazena a área da superfície das 48 maiores massas de terra do mundo, incluindo continentes e grandes ilhas. Veja que foi retornada a informação de que se trata de um vetor com 48 elementos, com os valores dos primeiros elementos mostrados. Na segunda linha, é mostrado [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-nomeados-em-r/">Trabalhando com vetores nomeados em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Vetores nomeados em R</h2>
<p>Já sabemos que os vetores possuem um número de índice que identifica cada valor armazenado em suas posições. Assim, para acessar um elemento qualquer, usamos esse número de índice &#8211; por exemplo, para acessar o quarto elemento de um vetor usamos o índice [4].</p>
<p>Porém, em R também é possível atribuir nomes às posições de índice em um vetor, de modo a ser possível acessar esses elementos por meio deste nome escolhido, em vez de utilizar apenas o seu valor numérico. Usar um nome de identificação possui inúmeras utilidades em R, como por exemplo, criar tabelas de lookup.</p>
<p>Um exemplo de vetor nomeado é um dataset (conjunto de dados) interno de nome&nbsp;<em><strong>islands</strong></em>, disponível pronto para uso no R, cuja estrutura pode ser analisada usando-se a função <strong>str()</strong>:</p>
<pre>&gt; str(islands)
<span style="color: #ff9900;">Named num [1:48] 11506 5500 16988 2968 16 ...</span>
<span style="color: #ff9900;">- attr(*, "names") = chr [1:48]&nbsp;"Africa" "Antarctica" "Asia" "Australia" ...</span></pre>
<p>Esse vetor armazena a área da superfície das 48 maiores massas de terra do mundo, incluindo continentes e grandes ilhas. Veja que foi retornada a informação de que se trata de um vetor com 48 elementos, com os valores dos primeiros elementos mostrados.<br />
Na segunda linha, é mostrado que esse vetor possui um atributo que contém a palavra &#8220;<strong>names</strong>&#8220;, e os primeiros elementos desse atributo são &#8220;Africa&#8221;, &#8220;Antarctica&#8221;, &#8220;Asia&#8221; e &#8220;Australia&#8221;. Esses são os nomes de cada posição do vetor, e cada posição também possui o valor armazenado e associado a esses nomes.</p>
<p>Desta forma, podemos acessar os elementos do vetor por nome. Por exemplo, para verificarmos os valores atribuídos às posições &#8220;Antarctica&#8221; e &#8220;Australia&#8221;, podemos fazer o seguinte:</p>
<pre>&gt; islands[c("Antarctica", "Australia")]
<span style="color: #ff9900;">Antarctica Australia</span>
<span style="color: #ff9900;">      5500      2968</span></pre>
<p>Para saber quais são os nomes existentes em um vetor nomeado empregados a função <strong>names()</strong>:</p>
<pre>&gt; names(islands)
<span style="color: #ff9900;">[1] "Africa" "Antactica" "Asia" ...</span>
<span style="color: #ff9900;">[6] "Baffin" "Banks" "Borneo" ...</span></pre>
<p>(saída truncada)</p>
<h3>Como criar um vetor nomeado em R</h3>
<p>Criamos um vetor nomeado atribuindo valores a um vetor comum, e então empregado a função <strong>names()</strong> para associar os nomes às posições de índice do vetor criado. Vejamos alguns exemplos:</p>
<p>1 &#8211; Vamos criar um vetor chamado aulas.materia, no qual iremos armazenar o número de aulas existentes em quatro matérias distintas:</p>
<pre>&gt; aulas.materia &lt;- c(8, 10, 8, 12)</pre>
<p>Mas de quais matérias são essas quantidades de aulas? Vamos agora associar os nomes das matérias ao vetor, usando-os como nomes das posições de índice:</p>
<pre>&gt; names(aulas.materia) &lt;- c("Física", "Português", "História", "Matemática")</pre>
<p>Note que passamos um vetor com os nomes das matérias para ser utilizado como nomes das posições. Podemos então verificar o conteúdo do vetor nomeado criado:</p>
<pre>&gt; aulas.materia
<span style="color: #ff9900;">Física Português História Matemática</span>
<span style="color: #ff9900;">     8        10        8         12</span></pre>
<p>2 &#8211; Queremos criar um vetor que contenha os nomes dos meses do ano, e os dias que cada mês possui. Para isso, começamos criando um vetor com a quantidade de dias de cada mês, em ordem:</p>
<pre>&gt; dias.mês &lt;- c(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)</pre>
<p>Logo após, vamos atribuir os nomes de índice, que são os nomes dos meses. Podemos criar um vetor contendo esses nomes, com fizemos no exemplo anterior; em inglês é possível utilizar o dataset interno chamado de &#8220;month.name&#8221;:</p>
<pre>&gt; names(dias.mês) &lt;- month.name</pre>
<p>Com o vetor criado, podemos consultar a quantidade de dias em um mês qualquer, por exemplo, em maio (&#8220;May&#8221;):</p>
<pre>&gt; dias.mês["May"]
<span style="color: #ff9900;">May</span>
<span style="color: #ff9900;">31</span></pre>
<p>O mesmo resultado será obtido se passarmos o número de índice da posição (5) em vez no nome atribuído. Para visualizar todos os meses com seus respectivos números de dias fazemos simplesmente:</p>
<pre>&gt; dias.mês[month.name]<img loading="lazy" decoding="async" class="aligncenter size-full wp-image-14350" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vetor-nomeado-linguagem-R.jpg" alt="Criar vetor nomeado em linguagem R" width="582" height="199" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vetor-nomeado-linguagem-R.jpg 582w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vetor-nomeado-linguagem-R-420x144.jpg 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vetor-nomeado-linguagem-R-580x199.jpg 580w" sizes="auto, (max-width: 582px) 100vw, 582px" /></pre>
<p>Podemos também buscar itens neste vetor por meio dos valores armazenados, em vez de usar os índices ou nomes. Por exemplo, para saber quantos meses possuem no máximo 30 dias podemos executar:</p>
<pre>&gt; names(dias.mês[dias.mês == 30])
<span style="color: #ff9900;">[1] "April" "June" "September"</span>
<span style="color: #ff9900;">[4] "November"</span></pre>
<p>Neste exemplo verificamos os valores armazenados no vetor <strong>dias.mês</strong> comparando seus valores (e não os nomes de índice) com o valor 30, utilizando um operador de comparação de igualdade ==.</p>
<p>Nas próximas lições vamos falar sobre vetores compostos &#8211; mais precisamente, sobre matrizes em R.</p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-nomeados-em-r/">Trabalhando com vetores nomeados em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-nomeados-em-r/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Linguagem R &#8211; Funções aritméticas em vetores</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/linguagem-r-funcoes-aritmeticas-em-vetores/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/linguagem-r-funcoes-aritmeticas-em-vetores/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Mon, 18 Feb 2019 22:16:07 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14343</guid>

					<description><![CDATA[<p>Funções aritméticas em vetores em R Em R, além das operações aritméticas básicas, também existem diversas funções que podem ser aplicadas diretamente a vetores, para realizar as mais variadas tarefas em conjuntos de dados simultaneamente. Um dos grupos de funções mais importantes são as funções de soma, produto e cumulativas. Nesta lição vamos explorar algumas das principais funções aritméticas que podemos aplicar a vetores em linguagem R. A tabela a seguir mostra algumas funções aritméticas cujo resultado depende da combinação dos valores presentes em um vetor: Função Descrição sum(x) Calcula o somatório dos valores presentes no vetor x. prod(x) Calcula o produto dos valores presentes no vetor x. min(x) Retorna o menor valor presente no vetor x. max(x) Retorna o maior valor presente em x. cumsum(x) Retorna a soma cumulativa dos valores de x. cumprod(x) Retorna o produto cumulativo dos valores de x. cummin(x) Retorna o menor valor em x a partir do início do vetor até a posição do próprio valor. Mínimo cumulativo. cummax(x) Retorna o maior valor em x a partir do início do vetor até a posição do próprio valor. Máximo cumulativo. diff(x) Retorna, para cada valor presente no vetor x, a diferença entre esse valor e [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/linguagem-r-funcoes-aritmeticas-em-vetores/">Linguagem R &#8211; Funções aritméticas em vetores</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Funções aritméticas em vetores em R</h2>
<p>Em R, além das <a href="http://www.bosontreinamentos.com.br/programacao-em-r/aritmetica-simples-com-vetores-em-r/" target="_blank" rel="noopener">operações aritméticas básicas</a>, também existem diversas funções que podem ser aplicadas diretamente a vetores, para realizar as mais variadas tarefas em conjuntos de dados simultaneamente. Um dos grupos de funções mais importantes são as funções de soma, produto e cumulativas. Nesta lição vamos explorar algumas das principais funções aritméticas que podemos aplicar a vetores em linguagem R.</p>
<p>A tabela a seguir mostra algumas funções aritméticas cujo resultado depende da combinação dos valores presentes em um vetor:</p>
<table style="border-collapse: collapse; width: 86.0581%; height: 53px;" border="1">
<thead>
<tr>
<td style="width: 15.8375%; text-align: center;"><strong>Função</strong></td>
<td style="width: 84.1625%; text-align: center;"><strong>Descrição</strong></td>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 15.8375%;">sum(x)</td>
<td style="width: 84.1625%;">Calcula o somatório dos valores presentes no vetor x.</td>
</tr>
<tr>
<td style="width: 15.8375%;">prod(x)</td>
<td style="width: 84.1625%;">Calcula o produto dos valores presentes no vetor x.</td>
</tr>
<tr>
<td style="width: 15.8375%;">min(x)</td>
<td style="width: 84.1625%;">Retorna o menor valor presente no vetor x.</td>
</tr>
<tr>
<td style="width: 15.8375%;">max(x)</td>
<td style="width: 84.1625%;">Retorna o maior valor presente em x.</td>
</tr>
<tr>
<td style="width: 15.8375%;">cumsum(x)</td>
<td style="width: 84.1625%;">Retorna a soma cumulativa dos valores de x.</td>
</tr>
<tr>
<td style="width: 15.8375%;">cumprod(x)</td>
<td style="width: 84.1625%;">Retorna o produto cumulativo dos valores de x.</td>
</tr>
<tr>
<td style="width: 15.8375%;">cummin(x)</td>
<td style="width: 84.1625%;">Retorna o menor valor em x a partir do início do vetor até a posição do próprio valor. Mínimo cumulativo.</td>
</tr>
<tr>
<td style="width: 15.8375%;">cummax(x)</td>
<td style="width: 84.1625%;">Retorna o maior valor em x a partir do início do vetor até a posição do próprio valor. Máximo cumulativo.</td>
</tr>
<tr>
<td style="width: 15.8375%;">diff(x)</td>
<td style="width: 84.1625%;">Retorna, para cada valor presente no vetor x, a diferença entre esse valor e o próximo valor no vetor (próximo &#8211; atual)</td>
</tr>
</tbody>
</table>
<p>Vejamos exemplos de aplicação dessas funções em vetores. Para isso, empregaremos um vetor x de 15 números, criado conforme a instrução a seguir:</p>
<pre>x &lt;- c(13, 24, 2, 45, 34, 33, 10, 8, 32, 39, 16, 19, 9, 25, 42)</pre>
<h3>Exemplos</h3>
<p>1 &#8211; Queremos saber o valor dos somatórios dos 15 itens no vetor x:</p>
<pre>&gt; res &lt;- sum(x)
&gt; print(res)
<span style="color: #ff9900;">[1] 351</span></pre>
<p>2 &#8211; Queremos descobrir quais são o maior e o menor valores presentes no vetor:</p>
<pre>&gt; min(x)
<span style="color: #ff9900;">[1] 2</span>
&gt; max(x)
<span style="color: #ff9900;">[1] 45</span></pre>
<p>3 &#8211; Suponha que tenhamos um outro vetor, y, com os valores a seguir:</p>
<pre>y &lt;- c(4, 7, 9, 12, 11)</pre>
<p>Podemos calcular o somatório combinado de ambos os vetores, x e y, usando a mesma função sum(), pois essa função aceita múltiplos vetores como entrada, bastando para isso separá-los por vírgulas:</p>
<pre>res &lt;- sum(x, y)
print(res)
<span style="color: #ff9900;">[1] 394</span></pre>
<p>4 &#8211; Vamos retornar a soma cumulativa dos valores em y &#8211; ou seja, o resultado de cada soma parcial realizada:</p>
<pre>res &lt;- cumsum(y)
print(res)
<span style="color: #ff9900;">[1] 4 11 20 32 43</span></pre>
<p>5 &#8211; Retornar o maior valor cumulativo no vetor x:</p>
<pre>res &lt;- cummax(x)
print(res)
<span style="color: #ff9900;">[1] 13 24 24 45&nbsp;45&nbsp;45&nbsp;45&nbsp;45&nbsp;45&nbsp;45&nbsp;45&nbsp;45&nbsp;45&nbsp;45&nbsp;45&nbsp;</span></pre>
<p>6 &#8211; Podemos também retornar as diferenças entre cada valor em u vetor, como por exemplo, no vetor y:</p>
<pre>res &lt;- diff(y)
print(res)
<span style="color: #ff9900;">[1] 3 2 3 -1</span></pre>
<p>Neste exemplo, foram retornados quatro números:</p>
<ul>
<li>3 é a diferença entre o primeiro e o segundo valores do vetor: 7 -4&nbsp;</li>
<li>2 é a diferença entre o segundo e o terceiro valores do vetor: 9 &#8211; 7</li>
<li>3&nbsp;é a diferença entre o terceiro e o quarto valores do vetor: 12 &#8211; 9&nbsp;</li>
<li>-1&nbsp;é a diferença entre o quarto e o quinto valores do vetor: 11 &#8211; 12&nbsp;</li>
</ul>
<p>7 &#8211; Também podemos aplicar essas funções a partes de um vetor. Por exemplo, suponha que se deseje saber o somatório apenas dos cinco primeiros valores do vetor x. Para tal, basta indicar entre colchetes as posições desejadas na soma:</p>
<pre>sum(x[1:5])
<span style="color: #ff9900;">[1] 118</span></pre>
<p>8 &#8211; E se quisermos saber qual o valor da soma do elementos&nbsp; de número 1, 2&nbsp; e 4 do vetor x? Simples &#8211; basta criar um vetor com os números de índice desejados, usando a função <em>combine</em>,&nbsp; e utilizá-lo na soma:</p>
<pre>sum(x[c(1, 2, 4)])
<span style="color: #ff9900;">[1] 82</span></pre>
<p>É isso aí! Há muitas outras funções matemáticas que podem ser aplicadas a vetores em R. Vamos estudá-las nas próximas lições.</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/linguagem-r-funcoes-aritmeticas-em-vetores/">Linguagem R &#8211; Funções aritméticas em vetores</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/linguagem-r-funcoes-aritmeticas-em-vetores/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Aritmética simples com vetores em R</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/aritmetica-simples-com-vetores-em-r/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/aritmetica-simples-com-vetores-em-r/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Mon, 18 Feb 2019 22:09:01 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14354</guid>

					<description><![CDATA[<p>Aritmética simples com vetores Podemos efetuar operações aritméticas simples com vetores em R de forma rápida e muito fácil. Vamos criar os vetores a e b, numéricos, com os valores a seguir: &#62; a &#60;- c(3, 6, 9, 12) &#62; b &#60;- c(2, 4, 6, 8) Suponha que seja precisemos adicionar os valores desses dois vetores, em forma ordenada &#8211; primeiro valor de a somado com o primeiro valor de b, e assim sucessivamente até o ultimo valor. Como fazemos isso em R? Simples &#8211; somamos os vetores diretamente: &#62; a + b [1] 5 10 15 20 Simples não? Em outras linguagens de programação seria necessário criar um loop, usando alguma estrutura de repetição, e inserir a operação aritmética dentro desse loop, retornando cada valor calculado. Em R basta somar os dois vetores, e todo o cálculo é feito automaticamente. Aplicamos essa mesma técnica para realizar outras operações básicas, como a subtração (-), multiplicação (*), divisão (/) e exponenciação (^). Veja, por exemplo, o produto entre os valores dos dois vetores: &#62; a * b [1] 6 24 54 96 Ou ainda os valores do vetor a elevados aos valores do vetor b: &#62; a ^ b [1] 9&#160; [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/aritmetica-simples-com-vetores-em-r/">Aritmética simples com vetores em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Aritmética simples com vetores</h2>
<p>Podemos efetuar operações aritméticas simples com vetores em R de forma rápida e muito fácil. Vamos criar os vetores a e b, numéricos, com os valores a seguir:</p>
<pre>&gt; a &lt;- c(3, 6, 9, 12)
&gt; b &lt;- c(2, 4, 6, 8)</pre>
<p>Suponha que seja precisemos adicionar os valores desses dois vetores, em forma ordenada &#8211; primeiro valor de a somado com o primeiro valor de b, e assim sucessivamente até o ultimo valor. Como fazemos isso em R? Simples &#8211; somamos os vetores diretamente:</p>
<pre>&gt; a + b
<span style="color: #ff9900;">[1] 5 10 15 20</span></pre>
<p>Simples não? Em outras linguagens de programação seria necessário criar um loop, usando alguma estrutura de repetição, e inserir a operação aritmética dentro desse loop, retornando cada valor calculado. Em R basta somar os dois vetores, e todo o cálculo é feito automaticamente.</p>
<p>Aplicamos essa mesma técnica para realizar outras operações básicas, como a subtração (-), multiplicação (*), divisão (/) e exponenciação (^). Veja, por exemplo, o produto entre os valores dos dois vetores:</p>
<pre>&gt; a * b
<span style="color: #ff9900;">[1] 6 24 54 96</span></pre>
<p>Ou ainda os valores do vetor a elevados aos valores do vetor b:</p>
<pre>&gt; a ^ b
<span style="color: #ff9900;">[1] 9&nbsp; 1296&nbsp; 531441&nbsp; &nbsp;429981696</span></pre>
<p>Em todos esses exemplos os vetores possuíam o mesmo comprimento (4 elementos). Mas o que acontece se os vetores envolvidos em um cálculo aritmético tiverem tamanhos diferentes? Vejamos um exemplo &#8211; vamos criar o vetor f, contendo 6 elementos:</p>
<pre>&gt; f &lt;- c(1, 1, 2, 3, 5, 8)</pre>
<p>Vamos tentar somar esse vetor com o vetor b:</p>
<pre>&gt; b + f
<span style="color: #ff9900;">[1] 3 5 8 11 7 12</span>
<span style="color: #ff00ff;">Warning message:</span>
<span style="color: #ff00ff;">In b + f: longer object length is not a multiple of shorter object length.</span></pre>
<p>Todos os valores foram somados. Porém, note que os dois últimos valores obtidos, 7 e 12, corresponde à soma de 5 + 2 e 8 + 4, primeiro e segundo valores de b com os dois últimos valores de f. O que ocorreu é que, como o vetor b é menor que o vetor f, seus valores foram <em><strong>reciclados</strong></em>, ou seja, foram reutilizados quando a última posição do vetor foi utilizada no cálculo. O R nos avisou disso com a mensagem que diz que o comprimento do maior objeto (f) não é um múltiplo do comprimento do menor objeto (b).</p>
<p>A reciclagem sempre ocorre quando os vetores envolvidos não possuem o mesmo comprimento, e a mensagem de aviso aparece quando o maior vetor não tem um comprimento múltiplo do menor vetor &#8211; mas, ainda assim, os valores do menor vetor são reciclados até a posição necessária.</p>
<p>Um exemplo bem claro da reciclagem de vetores é a multiplicação de todos os valores de um vetor por um valor fixo. Suponha que os valores do vetor a precisem ser multiplicados por 5 &#8211; todos eles multiplicados por esse mesmo valor. Como procedemos? Basta multiplicar o vetor por 5:</p>
<pre>&gt; a * 5
<span style="color: #ff9900;">[1] 15 30 45 60</span></pre>
<p>Além de podermos aplicar operações aritméticas em e entre vetores, podemos também aplicar diversas funções sobre os valores de um vetor, como por exemplo calcular o somatório de seus valores, visualizar valores acumulados ou ainda a diferença entre cada valor de um vetor.</p>
<p>Veremos <a href="http://www.bosontreinamentos.com.br/programacao-em-r/linguagem-r-funcoes-aritmeticas-em-vetores/">algumas dessas funções aritméticas na próxima lição</a>.</p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/aritmetica-simples-com-vetores-em-r/">Aritmética simples com vetores em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/aritmetica-simples-com-vetores-em-r/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Como instalar e carregar pacotes em R</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/como-instalar-e-carregar-pacotes-em-r/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/como-instalar-e-carregar-pacotes-em-r/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Tue, 12 Feb 2019 13:13:41 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14287</guid>

					<description><![CDATA[<p>Instalar e carregar pacotes em R Uma das características mais poderosas da linguagem R é o fato de que qualquer pessoa pode criar funções e compartilhá-las com outros usuários do R, de forma organizada. Desta forma, muitas funções estão disponíveis de forma imediata, o que facilita muito o trabalho do analista de dados &#8211; desde que ele saiba como encontrar e instalar essas funções. A maioria das funções é distribuída na forma de pacotes (&#8220;packages&#8221;), que são constituídos por código em R, arquivos de ajuda, conjuntos de dados (datasets), e outros elementos importantes para o funcionamento das funções. Os pacotes são, no geral, encontrados em websites especiais denominados &#8220;repositórios&#8221;. O repositório mais importante do R é o CRAN &#8211; Comprehensive R Archive Network &#8211; acessível pelo endereço http://cran.r-project.org, e possui centenas de pacotes prontos para serem adicionados à sua instalação do R. Veremos neste tutorial como gerenciar pacotes em R utilizando comandos do terminal. Como instalar um pacote em R Para instalar um pacote em R usamos a função install.packages(). Sua sintaxe é a seguinte: &#62; install.packages(nome_pacote) Vamos instalar um pacote de exemplo, de nome &#8220;fortunes&#8221;: &#62; install.packages("fortunes") Veja a saída gerada durante a instalação do pacote: Instalação de pacotes [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/como-instalar-e-carregar-pacotes-em-r/">Como instalar e carregar pacotes em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Instalar e carregar pacotes em R</h2>
<p>Uma das características mais poderosas da linguagem R é o fato de que qualquer pessoa pode criar funções e compartilhá-las com outros usuários do R, de forma organizada.<br />
Desta forma, muitas funções estão disponíveis de forma imediata, o que facilita muito o trabalho do analista de dados &#8211; desde que ele saiba como encontrar e instalar essas funções.</p>
<p>A maioria das funções é distribuída na forma de pacotes (&#8220;packages&#8221;), que são constituídos por código em R, arquivos de ajuda, conjuntos de dados (datasets), e outros elementos importantes para o funcionamento das funções.</p>
<p>Os pacotes são, no geral, encontrados em websites especiais denominados &#8220;repositórios&#8221;. O repositório mais importante do R é o <strong>CRAN</strong> &#8211; Comprehensive R Archive Network &#8211; acessível pelo endereço <a href="http://cran.r-project.org" target="_blank" rel="noopener">http://cran.r-project.org</a>, e possui centenas de pacotes prontos para serem adicionados à sua instalação do R.</p>
<p>Veremos neste tutorial como gerenciar pacotes em R utilizando comandos do terminal.</p>
<h3>Como instalar um pacote em R</h3>
<p>Para instalar um pacote em R usamos a função <strong>install.packages()</strong>. Sua sintaxe é a seguinte:</p>
<pre><span style="color: #800080;">&gt; install.packages(nome_pacote)</span></pre>
<p>Vamos instalar um pacote de exemplo, de nome &#8220;fortunes&#8221;:</p>
<pre>&gt; install.packages("fortunes")</pre>
<p>Veja a saída gerada durante a instalação do pacote:</p>
<div id="attachment_14289" style="width: 589px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-14289" class="wp-image-14289 size-full" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/instalar-pacote-R-package.png" alt="Instalação de pacotes em linguagem R" width="579" height="353" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/instalar-pacote-R-package.png 579w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/instalar-pacote-R-package-420x256.png 420w" sizes="auto, (max-width: 579px) 100vw, 579px" /><p id="caption-attachment-14289" class="wp-caption-text">Instalação de pacotes em linguagem R</p></div>
<p>Para usar um pacote instalado, é necessário carregá-lo quando for preciso utilizá-lo. Por padrão, o R não carrega automaticamente na memória todos os pacotes que você instala, para poupar memória do sistema.</p>
<p>Veja o que ocorre ao tentarmos utilizar uma função de um pacote que não foi carregado:</p>
<pre>&gt; fortune(1)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-14290" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/erro-usar-pacote-fortunes-R.png" alt="Erro ao usar um pacote não carregado em R" width="592" height="65" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/erro-usar-pacote-fortunes-R.png 592w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/erro-usar-pacote-fortunes-R-420x46.png 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/erro-usar-pacote-fortunes-R-580x65.png 580w" sizes="auto, (max-width: 592px) 100vw, 592px" /></p>
<p>Para carregar um pacote instalado usamos a função <strong>library()</strong>. Sua sintaxe é bem simples:</p>
<pre>&gt; library("nome_pacote")</pre>
<p>Após carregar o pacote, ele estará disponível para uso na linha de comandos e em seus scripts. Vamos carregar o pacote fortunes e tentar uma de suas funções novamente:</p>
<pre>&gt; library("fortunes")
&gt; fortune(1)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-14291" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/usar-pacote-carregado-linguagem-R.png" alt="Usando o pacote fortunes em linguagem R" width="574" height="192" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/usar-pacote-carregado-linguagem-R.png 574w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/usar-pacote-carregado-linguagem-R-420x140.png 420w" sizes="auto, (max-width: 574px) 100vw, 574px" /></p>
<h3>Descarregando um pacote</h3>
<p>Para descarregar um pacote que não esteja mais em uso, para liberar espaço em memória, usamos a função detach(), como segue:</p>
<pre>&gt; detach(package:fortunes, unload=TRUE)</pre>
<p>A partir desse momento as funções do pacote não estarão mais disponíveis para uso, porém o pacote continua instalado no sistema, e pode ser utilizado novamente a qualquer momento, bastando para isso carregá-lo novamente.</p>
<h3>Desinstalar pacotes em R</h3>
<p>Para desinstalar um pacote em R usamos a função <strong>remove.packages()</strong>. Podemos remover uma ou mais funções de uma vez, fornecendo seus nomes separados por vírgulas. Veja sua sintaxe básica:</p>
<pre><span style="color: #800080;">&gt; remove.packages("pacote_a_remover")</span></pre>
<p>Ou, para remover vários pacotes de uma vez:</p>
<pre><span style="color: #800080;">&gt; remove.packages(c("pacote1", "pacote2", "...", "pacoteN")</span></pre>
<p>Criamos um vetor contendo os nomes dos pacotes a remover, e o passamos à função como argumento.</p>
<h3>Atualizar pacotes em R</h3>
<p>Podemos atualizar os pacotes existentes em uma instalação do R usando a função <strong>update.packages()</strong>:</p>
<pre>&gt; update.packages()</pre>
<p>Podemos também visualizar uma listagem extensa de todos os pacotes do R que estão instalados em seu sistema por meio da função <strong>installed.packages()</strong>:</p>
<pre>&gt; installed.packages()</pre>
<p>A imagem a seguir mostra o início da saída deste comando (truncada, pois é muito extensa):</p>
<div id="attachment_14293" style="width: 312px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-14293" class="wp-image-14293 size-full" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/pacotes-instalados-linguagem-R-Rstudio.png" alt="Pacotes instalados em linguagem R" width="302" height="332"><p id="caption-attachment-14293" class="wp-caption-text">Pacotes instalados no R. Saída truncada.</p></div>
<p>Se você utiliza o IDE <a href="https://www.rstudio.com/" target="_blank" rel="noopener">RStudio</a>, é possível realizar essas tarefas de gerenciamento de pacotes por meio da interface gráfica, de forma simplificada. Veremos como fazer isso em outro tutorial.</p>
<p>Até!</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/como-instalar-e-carregar-pacotes-em-r/">Como instalar e carregar pacotes em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/como-instalar-e-carregar-pacotes-em-r/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Trabalhando com Vetores em R</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-em-r/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-em-r/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Mon, 11 Feb 2019 23:08:41 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<category><![CDATA[Programação]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14269</guid>

					<description><![CDATA[<p>Vetores em R Nesta lição vamos introduzir um assunto de muita importância em linguagem R: os Vetores. Os vetores são uma das características mais importantes em R, uma estrutura de dados amplamente empregada em inúmeros cenários diferentes. Bem, mas o que é exatamente um vetor? Um vetor é, basicamente, um conjunto unidimensional de valores, todos do mesmo tipo, que funciona como uma espécie de &#8220;variável multivalorada&#8221;. Em R, os vetores podem ter quantos valores (elementos) forem necessários &#8211; mesmo um único valor é um vetor contendo um elemento. A figura a seguir ilustra um vetor de nome &#8220;Vetor1&#8220;, com cinco elementos de índices de 1 a 5, preenchido com valores numéricos inteiros: Vetor de 5 posições (elementos) preenchido com valores numéricos. Como criar um vetor em R Podemos criar vetores em R de várias formas. Por exemplo, é possível criar um vetor de números inteiros simplesmente usando o operador : (&#8220;até&#8221;). Suponha que você queira criar um vetor que contenha os números de 2 a 8, e batizá-lo como &#8220;vetor&#8221;. Para isso, basta executar o comando a seguir: vetor &#60;- 2:8 Isso criará um vetor com as posições de 1 até 7 preenchidas com os valores numéricos inteiros de 2 [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-em-r/">Trabalhando com Vetores em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Vetores em R</h2>
<p>Nesta lição vamos introduzir um assunto de muita importância em linguagem R: os Vetores.</p>
<p>Os vetores são uma das características mais importantes em R, uma estrutura de dados amplamente empregada em inúmeros cenários diferentes.</p>
<p>Bem, mas o que é exatamente um vetor?</p>
<p>Um vetor é, basicamente, um conjunto unidimensional de valores, todos do mesmo tipo, que funciona como uma espécie de &#8220;variável multivalorada&#8221;. Em R, os vetores podem ter quantos valores (elementos) forem necessários &#8211; mesmo um único valor é um vetor contendo um elemento.</p>
<p>A figura a seguir ilustra um vetor de nome &#8220;<strong>Vetor1</strong>&#8220;, com cinco elementos de índices de 1 a 5, preenchido com valores numéricos inteiros:</p>
<div id="attachment_14280" style="width: 710px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-14280" class="wp-image-14280" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vetor-figura.jpg" alt="Um vetor em linguagem R" width="700" height="157" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vetor-figura.jpg 1016w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vetor-figura-420x94.jpg 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vetor-figura-768x172.jpg 768w" sizes="auto, (max-width: 700px) 100vw, 700px" /><p id="caption-attachment-14280" class="wp-caption-text">Vetor de 5 posições (elementos) preenchido com valores numéricos.</p></div>
<h3>Como criar um vetor em R</h3>
<p>Podemos criar vetores em R de várias formas. Por exemplo, é possível criar um vetor de números inteiros simplesmente usando o operador <strong>:</strong> (&#8220;até&#8221;). Suponha que você queira criar um vetor que contenha os números de 2 a 8, e batizá-lo como &#8220;vetor&#8221;. Para isso, basta executar o comando a seguir:</p>
<pre>vetor &lt;- 2:8</pre>
<p>Isso criará um vetor com as posições de 1 até 7 preenchidas com os valores numéricos inteiros de 2 até 8. Para visualizar seu conteúdo, basta usar uma função como print():</p>
<pre>print(vetor)
<span style="color: #ff9900;">[1] 2 3 4 5 6 7 8</span></pre>
<p>O número 1 entre colchetes no início da linha (<strong>[1]</strong>) indica que esta linha inicia com a exibição do elemento 1 do vetor (primeira posição).&nbsp;</p>
<p>Note que o vetor criado possui os números de 2 até 8, em intervalos de valor 1. Esse intervalo é o padrão, mas podemos especificar um intervalo diferente para os números. Para tal, fazemos uso da função <strong>seq()</strong>. Suponha um conjunto de números de 2 até 18, porém com um intervalo de valor 2 entre eles. Criamos esse vetor assim:</p>
<pre>vetor &lt;- seq(from = 2, to = 18, by = 2)
print(vetor)
<span style="color: #ff9900;">[1] 2 4 6 8 10 12 14 16 18</span></pre>
<p>A função seq() requer por padrão três parâmetros:&nbsp;</p>
<ul>
<li><strong>from</strong> = valor inicial</li>
<li><strong>to</strong> = valo final</li>
<li><strong>by</strong> = incremento</li>
</ul>
<p>Alternativamente, podemos fornecer esses parâmetros (em ordem) sem a necessidade de especificá-los por nome:</p>
<pre>vetor &lt;- seq(2,18,2)
print(vetor)
<span style="color: #ff9900;">[1] 2 4 6 8 10 12 14 16 18</span></pre>
<p>Também é possível especificar o comprimento da sequência de valores a ser criada, usando o argumento opcional length.out. Neste caso, o tamanho do intervalo entre os valores será calculado automaticamente. Por exemplo, suponha que precisamos de uma sequência que contenha 10 valores, entre os números 2 e 8:</p>
<pre>vetor &lt;- seq(from = 2, to = 8, length.out = 10)
print(vetor)
<span style="color: #ff9900;">[1] 2.00 2.66 3.33 4.00 4.66 5.33 6.00 6.66 7.33 8.00</span></pre>
<p>Note que o intervalo entre os números foi calculado automaticamente, e os 10 valores foram gerados para o vetor. Neste caso é obrigatório especificar os nomes dos parâmetros passados à função.</p>
<h3>Combinando vetores em R</h3>
<p>É possível combinar um ou mais vetores, criando assim um novo vetor em R por meio da aplicação da função <em>combine</em>, representada por <strong>c( )</strong>. Com ela, podemos combinar vetores de qualquer tamanho, seja contendo um único elemento ou contendo milhares deles.</p>
<p>Vejamos um exemplo.</p>
<pre>vetor1 &lt;- 1:5
vetor2 &lt;- 12:16
vetor3 &lt;- c(vetor1, vetor2)
print(vetor3)
<span style="color: #ff9900;">[1] 1 2 3 4 5 12 13 14 15 16</span></pre>
<p>Note que a ordem dos valores é mantida &#8211; vetor1 foi passado como parâmetro antes de vetor2 à função, e por isso seus valores são mostrados antes também.</p>
<p>Também usamos a função c() para criar vetores que contenham valores especificados, como por exemplo:</p>
<pre>vetor1 &lt;- c("Fábio", "Maria", "Ana", "Bruce")</pre>
<h3>Repetindo vetores em R</h3>
<p>Também podemos repetir os valores presentes em um vetor diversas vezes para criar um vetor de tamanho maior (ou para outro propósito qualquer), de forma simples e rápida com o emprego da função rep() &#8211; &#8220;<em>replicate</em>&#8220;. Podemos utilizar essa função de várias formas, passando alguns parâmetros modificadores a ela. Vejamos alguns exemplos:</p>
<p>1 &#8211; Repetir o vetor completo um número determinado de vezes &#8211; como por exemplo, 5 vezes:</p>
<pre>vetor1 &lt;- 1:5
rep(vetor1, times = 5)
<span style="color: #ff9900;">[1] 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5</span>
<span style="color: #ff9900;">[21] 1 2 3 4 5</span></pre>
<p>2 &#8211; Podemos repetir cada valor dentro do vetor com o argumento <strong>each</strong>:</p>
<pre>vetor1 &lt;- 1:5
rep(vetor1, each = 3)
<span style="color: #ff9900;">[1] 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5</span></pre>
<p>3 &#8211; Repetir cada valor um número <em>diferente</em> de vezes. Para isso, passamos um vetor como argumento de <strong><em>times</em></strong>, contendo o número de vezes que cada elemento deverá ser repetido em suas respectivas posições:</p>
<pre>vetor1 &lt;- 1:5
rep(vetor1, times = c(1,2,1,2,1))
<span style="color: #ff9900;">[1] 1&nbsp; 2 2 3&nbsp; 4 4&nbsp; 5</span></pre>
<p>Neste caso mandamos repetir o primeiro valor de vetor1 uma vez, o segundo valor duas vezes, o terceiro valor, uma vez, o quarto, duas vezes, e o quinto valor, uma vez também.</p>
<p>4 &#8211; Repetir os valores de um vetor um número determinado de vezes, de forma individual, até que um tamanho máximo seja alcançado (número de itens), mesmo que a última repetição fique incompleta:</p>
<pre>vetor1 &lt;- 1:5
rep(vetor1, length.out = 16)
<span style="color: #ff9900;">[1] 1&nbsp; 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1</span></pre>
<p>Pedimos para que a função repetisse os valores de vetor um até obtermos 16 valores &#8211; note que na última repetição, somente o valor &#8220;1&#8221; foi utilizado, pois é o 16º valor.</p>
<h3>Testando o tipo de um vetor</h3>
<p>Podemos empregar diversas funções para verificar o tipo de dado armazenado em um vetor. São elas:</p>
<ul>
<li><strong>is.numeric</strong> &#8211; Verifica se um vetor é de algum tipo numérico</li>
<li><strong>is.integer</strong> &#8211; Verifica se o vetor é do tipo numérico inteiro</li>
<li><strong>is.double</strong> &#8211; Verifica se o vetor é do tipo double</li>
<li><strong>is.complex</strong> &#8211; Verifica se o vetor é do tipo número complexo</li>
<li><strong>is.character</strong> &#8211; Verifica se o vetor é do tipo string de caracteres</li>
<li><strong>is.logical</strong>&nbsp; &#8211; Verifica se o vetor é do tipo booleano</li>
</ul>
<p>Sem nos esquecermos da função <strong>typeof()</strong>, que retorna o tipo do objeto armazenado.</p>
<p>Vejamos alguns exemplos.</p>
<pre>vetor1 &lt;- 1:10
vetor2 &lt;- c(1+2i, 2+3i, 3+5i)
vetor3 &lt;- c("Fábio", "Monica", "Ana")
is.numeric(vetor1)
<span style="color: #ff9900;">[1] TRUE</span>
is.double(vetor1)
<span style="color: #ff9900;">[1] FALSE</span>
is.character(vetor2)
<span style="color: #ff9900;">[1] FALSE</span>
is.complex(vetor2)
<span style="color: #ff9900;">[1] TRUE</span>
is.character(vetor3)
<span style="color: #ff9900;">[1] TRUE</span></pre>
<h3>Verificando as propriedades de um vetor em R</h3>
<p>Podemos verificar a estrutura de um vetor &#8211; ou seja, seu tipo e conteúdo &#8211; por meio da função str(). Vejamos a estrutura dos vetores criados na seção anterior:</p>
<pre>str(vetor1)
<span style="color: #ff9900;">int [1:10] 1 2 3 4 5 6 7 8 9 10</span>
str(vetor2)
<span style="color: #ff9900;">cplx [1:3]&nbsp;1+2i 2+3i 3+5i</span>
str(vetor3)
<span style="color: #ff9900;">chr [1:3]&nbsp;"Fábio" "Monica" "Ana"</span></pre>
<p>A primeira palavra retornada indica o tipo de dados do vetor (inteiro, complexo e caractere, em nosso exemplos). E os números dentro dos colchetes indicam as dimensões do vetor. Por exemplo, o vetor1 possui uma única dimensão, com os índices especificados pelos números 1:10.</p>
<p>Caso você queria apenas saber o tamanho de um vetor, use a função <strong>length()</strong>:</p>
<pre>length(vetor2)
<span style="color: #ff9900;">[1] 3</span></pre>
<p>Isso nos diz que o vetor2 possui o tamanho de 3 elementos.</p>
<h3>Como acessar os elementos de um vetor</h3>
<p>Para que os vetores tenham realmente utilidade é necessário que seja possível acessar seus elementos individuais, para que possam ser lidos e manipulados. A maneira mais simples de fazer isso é especificar o número da posição que queremos acessar entre colchetes. Veja um exemplo:</p>
<pre>vetor &lt;- c("Fábio", "Monica", "Ana", "Pedro")
print(vetor[2])
<span style="color: #ff9900;">[1] "Monica"</span></pre>
<p>Neste exemplo acessamos a posição de índice 2 do vetor, que nos retornou o segundo valor armazenado &#8211; no caso a string &#8220;Monica&#8221;.</p>
<p>Podemos acessar mais de um elemento combinando seus números de índice:</p>
<pre>print(vetor[c(1,3)])
<span style="color: #ff9900;">[1] "Fábio" "Ana"</span></pre>
<p>Retornar todos os elementos exceto alguns determinados:</p>
<pre>print(vetor[c(-1, -4)])
<span style="color: #ff9900;">[1] "Monica" "Ana"</span></pre>
<p>Ou ainda retornar apenas um grupo sequencial de elementos, como por exemplo os três primeiros:</p>
<pre>print(vetor[1:3))
<span style="color: #ff9900;">[1] "Fábio" "Monica" "Ana"</span></pre>
<h3>Alterando o conteúdo de um vetor</h3>
<p>Podemos alterar os valores dos elementos de um vetor empregando também os colchetes e números de índice. Veja um exemplo:</p>
<pre>vetor &lt;- c("Fábio", "Monica", "Ana", "Pedro")
print(vetor[2])
<span style="color: #ff9900;">[1] "Monica"</span>
vetor[2] &lt;- "Sofia"
vetor[2]
<span style="color: #ff9900;">[1] "Sofia"</span></pre>
<p>Neste exemplo nós alteramos o elemento da segunda posição do vetor de &#8220;Monica&#8221; para &#8220;Sofia&#8221;.</p>
<p>Podemos esvaziar um vetor atribuindo a ele o valor NULL:</p>
<pre>vetor &lt;- NULL
vetor
<span style="color: #ff9900;">NULL</span></pre>
<p>Note que o vetor continua existindo, apesar de não possuir nenhum elemento. Caso seja necessário destrui-lo em definitivo, desalocando o vetor da memória, use a função <strong>rm()</strong>:</p>
<pre>rm(vetor)
vetor
<span style="color: #ff00ff;">Error: object 'vetor' not found</span></pre>
<h3>Aritmética com Vetores</h3>
<p>É possível realizar operações aritméticas com os valores contidos em um vetor. Essas operações são efetuadas membro a membro, ou seja, em um elemento por vez.</p>
<p>Vejamos um exemplo. Suponha um vetor de 5 números, de 1 a 5. Queremos multiplicar todos os seus elementos por 2:</p>
<pre>vetor &lt;- 1:5
vetor * 2
<span style="color: #ff9900;">[1] 2 4 6 8 10</span></pre>
<p>Outro exemplo. Suponha que também temos um outro vetor, vetor2, com os números de 20 a 24, e queremos adicionar o dois vetores:</p>
<pre>vetor &lt;- 1:5
vetor2 &lt;- 20:24
vetor + vetor2
<span style="color: #ff9900;">[1] 21 23 25 27 29</span></pre>
<p>Veja que o primeiro elemento de vetor foi adicionado ao primeiro elemento de vetor2, e assim por diante.</p>
<p>O mesmo ocorrerá com as outras operações básicas &#8211; multiplicação, subtração e divisão.</p>
<h4>Reciclagem</h4>
<p>Se, ao efetuarmos uma operação aritmética entre dois vetores, um deles tiver tamanho diferente &#8211; ou seja, of menor &#8211; seus valores serão reciclados (repetidos) durante as operações. Veja o exemplo:</p>
<pre>vetor &lt;- 1:5
vetor2 &lt;- 6:8
vetor * vetor2
<span style="color: #ff9900;">[1] 6 14 24 24 35</span>
<span style="color: #ff00ff;">Warning message:</span>
<span style="color: #ff00ff;">In vetor * vetor2 :</span>
<span style="color: #ff00ff;">longer object length is not a multiple of shorter object length</span></pre>
<p>Note que foi emitida uma mensagem de aviso, dizendo que o comprimento do vetor maior não é um múltiplo do menor. Os valores obtidos são interpretados assim:</p>
<p>1 x 6 = <strong>6</strong><br />
2 x 7 = <strong>14</strong><br />
3 x 8 = <strong>24</strong><br />
4 x 6 = <strong>24</strong> <em>// Aqui começa a reciclagem de valores do vetor2.</em><br />
5 x 7 = <strong>35</strong></p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-em-r/">Trabalhando com Vetores em R</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/trabalhando-com-vetores-em-r/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Condicionais em linguagem R: if / else if / else</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/condicionais-em-linguagem-r-if-else-if-else/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/condicionais-em-linguagem-r-if-else-if-else/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Thu, 07 Feb 2019 00:05:46 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<category><![CDATA[Programação]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14193</guid>

					<description><![CDATA[<p>Condicionais em linguagem R: if / else if / else Usamos uma estrutura de desvio condicional para tomar uma decisão de acordo com o resultado de uma condição (teste lógico), e então executar um bloco de códigos que depende do resultado desse teste. As estruturas de decisão podem ser Simples, Composta ou Encadeada, e são criadas com o emprego da declaração if Desvio Condicional Simples &#8211; if O desvio condicional simples permite executar um bloco de código caso o resultado do teste seja verdadeiro, ignorando um resultado falso. x &#60;- 30 if (x == 30) { res &#60;- "Número igual a 30" print(res) } Desvio Condicional composto: if / else O desvio condicional composto permite criar dois blocos de código após realizar o teste lógico: Se o teste lógico retornar verdadeiro, as instruções contidas no bloco if serão executadas (como no condicional simples) Porém, se o teste lógico retornar falso, as instruções contidas em um bloco chamado&#160;else é que serão executadas. x &#60;- 30 if (x == 30) { res &#60;- "Número igual a 30" }&#160;else { res &#60;- "Número diferente de 30" } print(res) Note que a instrução else deve estar localizada na mesma linha da chave de fechamento [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/condicionais-em-linguagem-r-if-else-if-else/">Condicionais em linguagem R: if / else if / else</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Condicionais em linguagem R: if / else if / else</h2>
<p>Usamos uma <a href="http://www.bosontreinamentos.com.br/logica-de-programacao/10-logica-de-programacao-desvio-condicional-simples-se-entao/" target="_blank" rel="noopener">estrutura de desvio condicional</a> para tomar uma decisão de acordo com o resultado de uma condição (teste lógico), e então executar um bloco de códigos que depende do resultado desse teste.</p>
<p>As estruturas de decisão podem ser Simples, Composta ou Encadeada, e são criadas com o emprego da declaração <strong>if</strong></p>
<h4>Desvio Condicional Simples &#8211; if</h4>
<p>O desvio condicional simples permite executar um bloco de código caso o resultado do teste seja verdadeiro, ignorando um resultado falso.</p>
<pre>x &lt;- 30
if (x == 30) {
  res &lt;- "Número igual a 30"
  print(res)
}</pre>
<h4>Desvio Condicional composto: if / else</h4>
<p>O desvio condicional composto permite criar dois blocos de código após realizar o teste lógico:</p>
<p>Se o teste lógico retornar verdadeiro, as instruções contidas no bloco <strong><em>if</em></strong> serão executadas (como no condicional simples)<br />
Porém, se o teste lógico retornar falso, as instruções contidas em um bloco chamado&nbsp;<em><strong>else</strong> </em>é que serão executadas.</p>
<pre>x &lt;- 30
if (x == 30) {
  res &lt;- "Número igual a 30"
}&nbsp;else {
    res &lt;- "Número diferente de 30"
  }
print(res)</pre>
<p>Note que a instrução <em>else</em> deve estar localizada na mesma linha da chave de fechamento da instrução <em>if</em>, ou o script não funcionará.</p>
<p>Para declarações compostas com apenas uma instrução a executar, é possível abreviar o código da seguinte maneira:</p>
<pre>x &lt;- 30
res &lt;- if (x == 30) "Igual" else "Diferente"
print(res)</pre>
<h4>Desvio Condicional Encadeado: if / else if / else</h4>
<p>Em muitas situações é preciso verificar condições de teste sucessivas, onde uma ação será executada se um conjunto anterior de ações for satisfeito.</p>
<p>Podemos usar nestes casos uma estrutura denominada Desvio Condicional Encadeado, que basicamente é o encadeamento (combinação) de estruturas de decisão compostas em um script.</p>
<pre>x &lt;- 30
if (x == 30) {
  res &lt;- "Número igual a 30"
}&nbsp;else if (x &gt; 30{
    res &lt;- "Número maior que 30"
  }&nbsp;else {
      res &lt;- "Número menor que 30"
    }
print(res)</pre>
<p>Note que nesse caso combinamos as declarações else e if em uma mesma linha, para criar o encadeamento de condicionais.</p>
<p>Próximo: <a href="http://www.bosontreinamentos.com.br/programacao-em-r/estruturas-de-repeticao-em-r-lacos-while-e-for/">Estruturas de Repetição While e For em linguagem R</a></p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/condicionais-em-linguagem-r-if-else-if-else/">Condicionais em linguagem R: if / else if / else</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/condicionais-em-linguagem-r-if-else-if-else/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Estruturas de repetição em R &#8211; laços while e for</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-r/estruturas-de-repeticao-em-r-lacos-while-e-for/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-r/estruturas-de-repeticao-em-r-lacos-while-e-for/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Thu, 07 Feb 2019 00:04:55 +0000</pubDate>
				<category><![CDATA[Programação em R]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Linguagem R]]></category>
		<category><![CDATA[Programação]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=14200</guid>

					<description><![CDATA[<p>Estruturas de Repetição em R Frequentemente é preciso repetir um trecho de um script diversas vezes. Nesse caso podemos usar uma estrutura de &#8220;loop&#8221; (ou laço), que permite realizar essa repetição de trechos de código quantas vezes forem necessárias, sem precisar repetir o código em si no script. Os loops são chamados também de estruturas de repetição. Nesta lição estudaremos dois tipos de estruturas de repetição em R: os laços While e For. Estrutura de repetição While em R A estrutura while realiza um teste lógico no início do loop, e cada vez que esse teste retorna o valor verdadeiro, os comandos associados ao laço são executados. Quando o teste retornar o valor falso, o laço é interrompido e o loop termina. Sintaxe while(teste) { comandos } Exemplo: x &#60;- 1 while(x &#60;= 10) { print(x) x &#60;- x + 1 } Estrutura de repetição For em R A estrutura de repetição for permite criar loops para casos onde sabemos de antemão o número de repetições que devem ser realizadas. Por exemplo, se soubermos previamente que o código deve se repetir 10 vezes, podemos usar o laço for. Sintaxe for (variável in vetor_números) { comandos } Exemplo for (i in [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/estruturas-de-repeticao-em-r-lacos-while-e-for/">Estruturas de repetição em R &#8211; laços while e for</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Estruturas de Repetição em R</h2>
<p>Frequentemente é preciso repetir um trecho de um script diversas vezes. Nesse caso podemos usar uma estrutura de &#8220;loop&#8221; (ou laço), que permite realizar essa repetição de trechos de código quantas vezes forem necessárias, sem precisar repetir o código em si no script.</p>
<p>Os loops são chamados também de estruturas de repetição. Nesta lição estudaremos dois tipos de estruturas de repetição em R: os laços While e For.</p>
<h3>Estrutura de repetição While em R</h3>
<p>A estrutura while realiza um teste lógico no início do loop, e cada vez que esse teste retorna o valor verdadeiro, os comandos associados ao laço são executados.</p>
<p>Quando o teste retornar o valor falso, o laço é interrompido e o loop termina.</p>
<h4>Sintaxe</h4>
<pre><span style="color: #800080;">while(teste) {</span>
<span style="color: #800080;">  comandos</span>
<span style="color: #800080;">}</span></pre>
<h4>Exemplo:</h4>
<pre>x &lt;- 1
while(x &lt;= 10) {
  print(x)
  x &lt;- x + 1
}</pre>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-14202 size-full" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/loop-while-linguagem-R.jpg" alt="Estrutura de repetição while em linguagem R" width="454" height="426" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/loop-while-linguagem-R.jpg 454w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/loop-while-linguagem-R-420x394.jpg 420w" sizes="auto, (max-width: 454px) 100vw, 454px" /></p>
<h3>Estrutura de repetição For em R</h3>
<p>A estrutura de repetição for permite criar loops para casos onde sabemos de antemão o número de repetições que devem ser realizadas.</p>
<p>Por exemplo, se soubermos previamente que o código deve se repetir 10 vezes, podemos usar o laço for.</p>
<h4>Sintaxe</h4>
<pre><span style="color: #800080;">for (variável in vetor_números) {</span>
<span style="color: #800080;">  comandos</span>
<span style="color: #800080;">}</span></pre>
<h4>Exemplo</h4>
<pre>for (i in 1:10) {
  print(i)
}</pre>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-14203" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/loop-for-linguagem-R.jpg" alt="Estrutura de repetição for em linguagem R" width="345" height="393"></p>
<p>Obs.: a estrutura <strong>1:10</strong> representa um <em><strong>vetor</strong></em> de números, contendo os números inteiros de 1 até 10. Podemos visualizar seu conteúdo assim no console:</p>
<pre>&gt; (1:10)</pre>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-14201 size-full" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vector-linguagem-R-exemplo.jpg" alt="Vector em linguagem R" width="506" height="64" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vector-linguagem-R-exemplo.jpg 506w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/02/vector-linguagem-R-exemplo-420x53.jpg 420w" sizes="auto, (max-width: 506px) 100vw, 506px" /></p>
<p>Estudaremos os vetores com detalhes em lições posteriores.</p>
<p>Anterior: <a href="http://www.bosontreinamentos.com.br/programacao-em-r/condicionais-em-linguagem-r-if-else-if-else/">Decisão Condicional com if / else em R</a></p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-r/estruturas-de-repeticao-em-r-lacos-while-e-for/">Estruturas de repetição em R &#8211; laços while e for</a> apareceu primeiro em <a href="https://www.bosontreinamentos.com.br">Bóson Treinamentos em Ciência e Tecnologia</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bosontreinamentos.com.br/programacao-em-r/estruturas-de-repeticao-em-r-lacos-while-e-for/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
