<?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 Data Science - Bóson Treinamentos em Ciência e Tecnologia</title>
	<atom:link href="https://www.bosontreinamentos.com.br/tag/data-science/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.bosontreinamentos.com.br/tag/data-science/</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>Thu, 28 Mar 2024 12:53:29 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.5</generator>
	<item>
		<title>Como usar o objeto DataFrame da biblioteca Pandas em Python</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-dataframe-da-biblioteca-pandas-em-python/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-dataframe-da-biblioteca-pandas-em-python/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Mon, 26 Feb 2024 10:53:41 +0000</pubDate>
				<category><![CDATA[Programação em Python]]></category>
		<category><![CDATA[Big Data]]></category>
		<category><![CDATA[Ciência de Dados]]></category>
		<category><![CDATA[Data Science]]></category>
		<category><![CDATA[Pandas]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=19630</guid>

					<description><![CDATA[<p>Como usar o objeto DataFrame da biblioteca Pandas em Python Anteriormente falamos sobre o objeto Series do Pandas, e neste artigo vamos explorar algumas funções de um outro tipo de objeto muito comum também fornecido pelo módulo Pandas, o DataFrame. Os DataFrames do Pandas são uma estrutura de dados bastante versátil e poderosa que pode ser usada em análise, manipulação e processamento de dados em Python. Eles são empregados em uma ampla gama de aplicações de várias áreas, incluindo análise de dados, ciência de dados, engenharia, finanças, pesquisa e muito mais. Algumas das principais aplicações dos DataFrames do Pandas incluem: Pré-processamento de Dados: Limpeza, formatação, dados duplicados, valores ausentes, transformação nos dados Análise e Exploração de Dados: Importação de dados, Cálculos de Estatística Descritiva (média, mediana, desvio-padrão, etc.). Manipulação de Dados: Filtro, seleção e ordenação para extrair informações específicas dos dados; funções de agregação, colunas calculadas Análise de Séries Temporais: Manipulação e análise de dados temporais, como séries temporais de preços de ações, dados climáticos, etc.; reamostragem Modelagem Estatística e Machine Learning: Criação de conjuntos de treinamento e teste em aprendizado de máquina, divisão de dados para validação cruzada, etc. entre muitas outras. Além disso, os DataFrames podem ser integrados [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-dataframe-da-biblioteca-pandas-em-python/">Como usar o objeto DataFrame da biblioteca Pandas em Python</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 usar o objeto DataFrame da biblioteca Pandas em Python</h2>
<p>Anteriormente falamos sobre o <a href="http://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-series-da-biblioteca-pandas-em-python/">objeto Series do Pandas</a>, e neste artigo vamos explorar algumas funções de um outro tipo de objeto muito comum também fornecido pelo módulo Pandas, o DataFrame.</p>
<p>Os DataFrames do Pandas são uma estrutura de dados bastante versátil e poderosa que pode ser usada em análise, manipulação e processamento de dados em Python. Eles são empregados em uma ampla gama de aplicações de várias áreas, incluindo análise de dados, ciência de dados, engenharia, finanças, pesquisa e muito mais.</p>
<p>Algumas das principais aplicações dos DataFrames do Pandas incluem:</p>
<ul>
<li><strong>Pré-processamento de Dados</strong>: Limpeza, formatação, dados duplicados, valores ausentes, transformação nos dados</li>
<li><strong>Análise e Exploração de Dados</strong>: Importação de dados, Cálculos de <a href="http://www.bosontreinamentos.com.br/programacao-em-python/estatistica-descritiva-em-python-media-mediana-variancia-e-desvio-padrao/">Estatística Descritiva</a> (média, mediana, desvio-padrão, etc.).</li>
<li><strong>Manipulação de Dados</strong>: Filtro, seleção e ordenação para extrair informações específicas dos dados; funções de agregação, colunas calculadas</li>
<li><strong>Análise de Séries Temporais:</strong> Manipulação e análise de dados temporais, como séries temporais de preços de ações, dados climáticos, etc.; reamostragem</li>
<li><strong>Modelagem Estatística e Machine Learning</strong>: Criação de conjuntos de treinamento e teste em a<a href="http://www.bosontreinamentos.com.br/inteligencia-artificial/o-que-e-machine-learning-uma-introducao-ao-aprendizado-de-maquina/">prendizado de máquina</a>, divisão de dados para validação cruzada, etc.</li>
</ul>
<p>entre muitas outras.</p>
<p>Além disso, os DataFrames podem ser integrados com outras bibliotecas, como por exemplo as bibliotecas <a href="http://www.bosontreinamentos.com.br/programacao-em-python/introducao-a-biblioteca-numpy-em-python/">NumPy</a>, SciPy, <a href="http://www.bosontreinamentos.com.br/programacao-em-python/graficos-basicos-com-a-biblioteca-matplotlib-em-python/">Matplotlib</a> e inúmeras outras, permitindo executar diversas tarefas adicionais, como visualização de dados e cálculos complexos sobre os datasets, por exemplo.</p>
<h3>O que é um DataFrame?</h3>
<p>Um objeto do tipo DataFrame representa uma tabela de dados retangular bidimensional semelhante a uma tabela de banco de dados ou uma planilha do Excel, contendo uma coleção ordenada de colunas, em que cada uma pode ter um tipo de valor diferente (numérico, string, booleano etc.).</p>
<p>O DataFrame possui índices tanto para linha quanto para coluna; pode ser imaginado como um array de objetos Series, todos compartilhando o mesmo índice.</p>
<p>Há várias formas de construir um DataFrame, embora as mais comuns sejam a partir de dados armazenados em<a href="http://www.bosontreinamentos.com.br/category/bancos-de-dados/"> bancos de dados</a>, arquivos CSV, arquivos de planilhas como o Excel, dicionários com listas de mesmo tamanho ou ainda a partir de <a href="http://www.bosontreinamentos.com.br/programacao-em-python/como-criar-um-array-no-python-com-numpy/">arrays NumPy</a>, entre outras.</p>
<p>Neste tutorial vamos criar DataFrames a partir de dicionários para explorar algumas de suas funcionalidades. Nos próximos tutoriais, vamos trabalhar também com importação de dados de planilhas do Excel, arquivos CSV e tabelas de bancos de dados relacionais, entre outras tarefas.</p>
<h3>Criar um DataFrame a partir de um Dicionário</h3>
<p>Vamos começar criando um DataFrame de exemplo a partir de um dicionário de dados. Antes disso, precisamos importar o módulo em nosso script:</p>
<pre><strong>import pandas as pd</strong></pre>
<p>Vamos criar agora um DataFrame a partir de um dicionário que contém nomes de países, quantidade de títulos mundiais da FIFA, e ano em que o país ganhou seu primeiro título.</p>
<pre><strong>dicionario={'País':['Brasil','Uruguai','Inglaterra','Espanha','Holanda','Itália','Argentina','Alemanha','França'],</strong>
<strong>'Ano':[1958,1930,1966,2010,None,1934,1978,1954,1998],</strong>
<strong>'Titulos':[5,2,1,1,0,4,3,4,2]</strong>
<strong>}</strong>
<strong>dados = pd.DataFrame(dicionario)</strong>
<strong>print(dados)</strong></pre>
<p><em><strong>Saída:</strong></em></p>
<pre><span style="color: #000000;">  País       Ano    Titulos</span>
<span style="color: #000000;">0 Brasil     1958.0       5</span>
<span style="color: #000000;">1 Uruguai    1930.0       2</span>
<span style="color: #000000;">2 Inglaterra 1966.0       1</span>
<span style="color: #000000;">3 Espanha    2010.0       1</span>
<span style="color: #000000;">4 Holanda    NaN          0</span>
<span style="color: #000000;">5 Itália     1934.0       4</span>
<span style="color: #000000;">6 Argentina  1978.0       3</span>
<span style="color: #000000;">7 Alemanha   1954.0       4</span>
<span style="color: #000000;">8 França     1998.0       2</span></pre>
<p>Note que na linha correspondente à Holanda a coluna Ano traz o valor <strong>NaN</strong>, que significa &#8220;<em>Not a Numbe</em>r&#8221; (Não é um Número), indicando que este dado está ausente (a Holanda ainda não ganhou nenhuma copa, por isso um valor para a coluna de ano não existe!)</p>
<h3>Mostrar início ou fim do dataset</h3>
<p>Se o conjunto de dados for grande e não quisermos exibi-lo inteiro na tela, podemos imprimir apenas as cinco primeiras ou as cinco últimas linhas com os métodos head() e tail(), respectivamente:</p>
<pre><span style="color: #339966;"><strong># 5 primeiras linhas</strong></span>
<strong>print(dados.head())

</strong><span style="color: #339966;"><strong># 5 últimas linhas</strong></span>
<strong>print(dados.tail())</strong></pre>
<p>Por padrão, o Pandas limita o número de linhas exibidas na tela a 60 linhas e o número de colunas a 20 colunas, para evitar saída de grandes volumes de dados.</p>
<h3>Manipulação de colunas</h3>
<p>Podemos alterar a ordem das colunas passando como parâmetro ao método .DataFrame() uma lista de valores a serem usados como cabeçalho:</p>
<pre><strong>dados = pd.DataFrame(dados, columns=['Titulos','País','Ano'])</strong>
<strong>print(dados)</strong></pre>
<p>Para ver apenas os nomes das colunas constituintes do df:</p>
<pre><strong>print(dados.columns)</strong></pre>
<p>Para imprimir colunas individuais (em vez do DataFrame completo) podemos passar o nome da coluna desejada como valor de índice (entre colchetes), ou então chamar a coluna pelo seu nome como uma propriedade (precedida de um ponto):</p>
<pre><strong>print('Países:')</strong>
<strong>print(dados['País'])</strong>
<strong>print('\nAnos:')</strong>
<strong>print(dados.Ano)</strong></pre>
<p>Adicionamos uma nova coluna ao DF simplesmente passando seu nome entre colchetes, e atribuindo valores a partir de uma sequência, como uma lista. Podemos inicializar a coluna com um único valor também (mesmo valor em todas as linhas), como por exemplo o valor 0:</p>
<pre><span style="color: #339966;"><strong># Acrescentar uma coluna ao DataFrame:</strong></span>
<span style="color: #ff0000;"><strong>dados['Participações'] = 0</strong></span>
<span style="color: #ff0000;"><strong>print(dados)</strong></span></pre>
<pre><span style="color: #339966;"><strong># Preencher a coluna com valores de uma lista:</strong></span>
<strong>part = [22,14,16,16,11,18,18,20,16]</strong>
<strong>dados['Participações'] = part</strong>
<strong>print(dados)</strong></pre>
<p>Para excluir uma coluna do DataFrame empregamos a função del:</p>
<pre><span style="color: #339966;"><strong># Excluir coluna "Participações"</strong></span>
<strong>del dados['Participações']</strong>
<strong>print(dados)</strong></pre>
<h3>Manipulação de linhas</h3>
<p>É possível excluir uma linha usando o método .drop(), passando o número da linha a excluir como um valor de índice. No exemplo a seguir vamos criar um novo DataFrame a partir do atual, excluindo nele a linha 4:</p>
<pre><span style="color: #339966;"><strong># Excluir a linha 4 (Holanda)</strong></span>
<strong>dados2 = dados.drop([4])</strong>
<strong>print(dados2)</strong></pre>
<p>Para excluir várias linhas de uma vez, basta passar uma lista com seus números de índice:</p>
<pre><span style="color: #339966;"><strong># Excluir as linhas 3, 4 e 5 de uma vez</strong></span>
<strong>dados2 = dados.drop([4, 3, 5])</strong>
<strong>print(dados2)</strong></pre>
<p>Para excluir uma linha no DataFrame em si, sem precisar criar uma cópia dele, usamos o parâmetro inplace=True:</p>
<pre><span style="color: #339966;"><strong># Excluir linhas in loco</strong></span>
<strong>dados.drop(4, inplace=True)</strong>
<strong>print(dados)</strong></pre>
<h3>Slicing em DataFrames</h3>
<p>Podemos retornar um conjunto de linhas passando seus índices, inclusive usando fatiamento (slicing):</p>
<pre><span style="color: #339966;"><strong># Retornar linhas de 1 a 5:</strong></span>
<strong>print(dados[1:5])</strong></pre>
<p>Também é possível realizar essa operação usando rótulos em vez de números de índice:</p>
<pre><span style="color: #339966;"><strong># Fatiamento com rótulos

</strong></span><strong>dicionario={'País':['Brasil','Uruguai','Inglaterra','Espanha','Holanda','Itália','Argentina'],</strong>
<strong>'Ano':[1958,1930,1966,2010,None,1934,1978],</strong>
<strong>'Titulos':[5,2,1,1,0,4,3]</strong>
<strong>}

</strong><strong>dados = pd.DataFrame(dicionario, index=['a','b','c','d','e','f','g'])</strong>
<span style="color: #339966;"><strong># Mostra df completo</strong></span>
<strong>print(dados, '\n')

</strong><span style="color: #339966;"><strong># Mostra apenas linhas de rótulos b até e:</strong></span>
<strong>print(dados['b':'e'])</strong></pre>
<h3>Indexação: loc() e iloc()</h3>
<p>Podemos realizar indexação com método .loc(), retornando linhas e colunas específicas apenas por meio de seus rótulos:</p>
<pre><span style="color: #339966;"><strong># Indexação com loc</strong></span>
<span style="color: #339966;"><strong># Linha b, colunas de País e Títulos</strong></span>
<strong>print(dados.loc['b',['País', 'Titulos']])</strong>
<span style="color: #339966;"><strong># Linhas de a a d, coluna de Ano:</strong></span>
<strong>print(dados.loc[:'d','Ano'])</strong></pre>
<p>Ou ainda indexar com método .iloc(), que retorna as linhas e colunas específicas de acordo com números de índices:</p>
<pre><span style="color: #339966;"><strong># Indexação com iloc</strong></span>
print(dados.iloc[1,[0, 2]])</pre>
<h3>Ordenação em Dataframes</h3>
<p>Podemos exibir os dados ordenados por índice tanto em ordem crescente quando decrescente com o método sort_index():</p>
<pre><span style="color: #339966;"><strong># Ordenação por índice</strong></span>
<strong>print(dados.sort_index())

</strong><span style="color: #339966;"><strong># Ordenação por índice em ordem inversa</strong></span>
<strong>print(dados.sort_index(ascending=False))

</strong>Para ordenar os dados pelos valores de uma coluna específica usamos o método sort_values(), passando os nomes das colunas na ordem em que desejamos a ordenação:
<span style="color: #339966;"><strong> Ordenação por colunas: ordem alfabética de país</strong></span>
<strong>print(dados.sort_values(by='País'))

</strong><span style="color: #339966;"><strong># Ordem alfabética inversa:</strong></span>
<strong>print(dados.sort_values(by='País', ascending=False))

</strong><span style="color: #339966;"><strong># Ordenação por várias colunas: ordem crescente de títulos e alfabética de países</strong></span>
<strong>print(dados.sort_values(by=['Titulos','País']))

</strong><span style="color: #339966;"><strong># Ou ainda ordem decrescente de títulos e alfabética de países</strong></span>
<span style="color: #339966;"><strong># Ordenação por várias colunas</strong></span>
<strong>print(dados.sort_values(by=['Titulos','País'],</strong>
<strong>ascending = [False, True]))</strong></pre>
<h3>Renomear colunas</h3>
<p>É possível renomear uma ou mais colunas de um DF usando o método <strong>rename()</strong>. Para tal, passamos um mapeamento de dicionário para o parâmetro &#8220;<em>columns</em>&#8221; contendo pares chave:valor nos quais a chave é o nome da coluna a renomear, e o valor é o novo nome que será usado.</p>
<p>Por exemplo, vamos renomear a coluna &#8220;Titulos&#8221; para &#8220;Campeonatos&#8221;:</p>
<pre><span style="color: #339966;"><strong># Renomear uma coluna </strong></span>
<strong>dados2=dados.rename(columns = {'Titulos':'Campeonatos'})</strong>
<strong>print(dados2.columns)</strong></pre>
<p>Uma alternativa é usar o parâmetro axis=&#8217;columns&#8217; ou axis=&#8217;1&#8242;:</p>
<pre><span style="color: #339966;"><strong># Renomear a coluna de volta</strong></span>
<strong>dados2=dados.rename({'Campeonatos':'Titulos'}, axis='columns')</strong>
<strong>print(dados2.columns)</strong></pre>
<p>Para alterar o nome da coluna in loco (sem criar outro df), usamos novamente o parâmetro inplace:</p>
<pre><span style="color: #339966;"><strong># Renomear coluna no DataFrame atual (inplace).</strong></span>
<strong>dados2.rename({'Titulos':'Campeonatos'}, axis='columns', inplace=True)</strong>
<strong>print(dados2.columns)</strong></pre>
<p>Para renomear múltiplas colunas o processo é o mesmo, bastando passá-las como um mapeamento de dicionário.<br />
Por exemplo, vamos renomear as colunas &#8220;Campeonatos&#8221; e &#8220;Ano&#8221; para &#8220;Titulos&#8221; e &#8220;Primeiro_Titulo&#8221; respectivamente no df dados2:</p>
<pre><span style="color: #339966;"><strong># Renomear várias colunas de uma vez no DataFrame atual.</strong></span>
<strong>dados2.rename({'Campeonatos':'Titulos', 'Ano':'Primeiro_Titulo'}, axis='columns', inplace=True)</strong>
<strong>print(dados2.columns)</strong></pre>
<p>Também podemos renomear todas as colunas de um dataframe de uma vez, passando para isso uma lista com os novos nomes a usar. O comprimento da lista deve ser igual ao número de colunas existentes no df, e as colunas serão renomeadas na ordem em que aparecem.</p>
<p>Note que neste caso renomeamos as colunas SEM usar o método rename().</p>
<p>Por exemplo:</p>
<pre><span style="color: #339966;"><strong># Renomear colunas com lista</strong></span>
<strong>nomes = ['Nação','Ano_Ganhou','Qtde_Titulos']</strong>
<strong>dados2.columns = nomes</strong>
<strong>print(dados2.columns)</strong></pre>
<h4>Renomear colunas adicionando sufixos ou prefixos</h4>
<p>Às vezes precisamos renomear colunas adicionando sufixos ou prefixos na forma de uma sequência de caracteres. Podemos fazer isso usando os métodos add_prefix() ou add_suffix(). Por exemplo, vamos adicionar o prefixo &#8220;copa_&#8221; a todas as colunas do dataframe dados2:</p>
<pre><span style="color: #339966;"><strong># Renomear todas as colunas adicionando um prefixo</strong></span>
<strong>dados2 = dados2.add_prefix('copa_')</strong>
<strong>print(dados2.columns)</strong></pre>
<p>Leia mais aqui: <a href="https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.add_prefix.html" target="_blank" rel="noopener">https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.add_prefix.html</a></p>
<p>Para remover um prefixo ou sufixo, podemos usar (entre outros) o método str.replace(), que substitui todas as ocorrências de uma determinada string por outra string (ou nenhuma string, que é o caso). Vamos remover o prefixo &#8220;copa_&#8221; adicionado anteriormente para testar:</p>
<pre><span style="color: #339966;"><strong># Remover prefixo com método str.replace</strong></span>
<strong>dados2.columns = dados.columns.str.replace('copa_', '')</strong>
<strong>dados2</strong></pre>
<p>Cuidado ao usar esse método para remover prefixos e sufixos, pois se houverem outras sequências de caracteres nos nomes das colunas iguais às que se deseja remover, estas também serão removidas, alterando de forma indesejada os nomes.</p>
<p>No próximo artigo estudaremos algumas técnicas de limpeza e tratamento de dados ausentes ou duplicados em um dataframe.</p>
<h3>Colabore com a Bóson Treinamentos</h3>
<p>Ajude o canal adquirindo meus cursos na Udemy:</p>
<ul>
<li>Bancos de Dados com MySQL Básico: <a href="https://bit.ly/35QdWE4" target="_blank" rel="noopener">https://bit.ly/35QdWE4</a></li>
<li>Lógica de Programação com Português Estruturado: <a href="https://bit.ly/3QKPn22" target="_blank" rel="noopener">https://bit.ly/3QKPn22</a></li>
<li>Programação em Python do Zero: <a href="https://bit.ly/python-boson" target="_blank" rel="noopener">https://bit.ly/python-boson</a></li>
</ul>
<p>Adquira também livros e outros itens na loja da Bóson Treinamentos na Amazon e ajude o canal a se manter e crescer: <a href="https://www.amazon.com.br/shop/bosontreinamentos" target="_blank" rel="noopener">https://www.amazon.com.br/shop/bosontreinamentos</a></p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-dataframe-da-biblioteca-pandas-em-python/">Como usar o objeto DataFrame da biblioteca Pandas em Python</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-python/como-usar-o-objeto-dataframe-da-biblioteca-pandas-em-python/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Como usar o objeto Series da biblioteca Pandas em Python</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-series-da-biblioteca-pandas-em-python/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-series-da-biblioteca-pandas-em-python/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Mon, 04 Sep 2023 17:09:20 +0000</pubDate>
				<category><![CDATA[Ciência de Dados]]></category>
		<category><![CDATA[Programação em Python]]></category>
		<category><![CDATA[Big Data]]></category>
		<category><![CDATA[Data Science]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=19627</guid>

					<description><![CDATA[<p>Como usar o objeto Series da biblioteca Pandas para análise de dados em Python O módulo Pandas é uma biblioteca de código aberto em Python que fornece estruturas de dados e ferramentas para análise de dados eficientes e bastante flexíveis. Essa biblioteca é amplamente empregada em tarefas de manipulação, limpeza, análise e transformação de dados em projetos diversos de ciência de dados, análise de dados e engenharia de software em geral. O Pandas possui duas estruturas de dados principais: os objetos Series e DataFrame. Neste tutorial vamos trabalhar com o objeto Series, e na próxima lição, abordaremos o objeto DataFrame. Objeto Series Um Series (&#8220;Série&#8221;) é um objeto do tipo array unidimensional contendo uma sequência de valores (semelhante a uma lista ou um array do NumPy) e um array associado de rótulos (labels) de dados, chamado de índice. Ou seja, trata-se de uma estrutura de dados simples cujos valores são armazenados na forma de uma coluna de dados, porém contendo uma coluna de valores de índice associados. Outra forma de pensar em um Series é como um dicionário ordenado de tamanho fixo, como se fosse um mapeamento entre valores de índices e valores de dados. Ele pode inclusive ser utilizada em [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-series-da-biblioteca-pandas-em-python/">Como usar o objeto Series da biblioteca Pandas em Python</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 usar o objeto Series da biblioteca Pandas para análise de dados em Python</h2>
<p>O módulo Pandas é uma biblioteca de código aberto em Python que fornece estruturas de dados e ferramentas para análise de dados eficientes e bastante flexíveis. Essa biblioteca é amplamente empregada em tarefas de manipulação, limpeza, análise e transformação de dados em projetos diversos de ciência de dados, análise de dados e engenharia de software em geral.</p>
<p>O Pandas possui duas estruturas de dados principais: os objetos Series e DataFrame. Neste tutorial vamos trabalhar com o objeto Series, e na próxima lição, abordaremos o objeto DataFrame.</p>
<h3>Objeto Series</h3>
<p>Um Series (&#8220;Série&#8221;) é um objeto do tipo array unidimensional contendo uma sequência de <strong>valores</strong> (semelhante a uma lista ou um array do NumPy) e um array associado de rótulos (<em>labels</em>) de dados, chamado de <strong>índice</strong>.</p>
<p>Ou seja, trata-se de uma estrutura de dados simples cujos valores são armazenados na forma de uma coluna de dados, porém contendo uma coluna de valores de índice associados.</p>
<p>Outra forma de pensar em um Series é como um dicionário ordenado de tamanho fixo, como se fosse um mapeamento entre valores de índices e valores de dados. Ele pode inclusive ser utilizada em alguns contextos em que um dicionário seria empregado.</p>
<p>No geral, usamos Series para guardar dados sobre um atributo em particular no dataset, sendo possível extrair uma coluna de um DataFrame na forma de um objeto Series, ou ainda adicionar uma coluna a um DataFrame a partir de um Series.</p>
<h3>Como importar a biblioteca Pandas</h3>
<p>Para que possamos criar e usar um objeto Series, primeiramente devemos importar o módulo Pandas (que deve estar instalado):</p>
<pre><strong>import pandas as pd</strong></pre>
<p>Caso o módulo Pandas não esteja instalado, use um gerenciador de pacotes como o pip ou conda para realizar sua instalação, como segue:</p>
<pre><strong>pip install pandas</strong></pre>
<p>ou (se estiver usando o Anaconda / Miniconda)</p>
<pre><strong>conda install pandas</strong></pre>
<h3>Como criar um objeto Series</h3>
<p>Podemos criar um objeto Series de várias maneiras, incluindo a partir de listas, dicionários, arrays NumPy e até mesmo criar Series vazias. Vejamos cada uma dessas formas com um exemplo.</p>
<h4>Criar objeto Series vazio invocando o método Series()</h4>
<pre><span style="color: #339966;"><strong># Objeto Series vazio</strong></span>
<strong>serie = pd.Series()</strong>
<strong>print(serie)</strong></pre>
<h4>Criar Series a partir de uma lista comum</h4>
<p>Uma forma mais comum é criar um objeto Series passando algum tipo de array de dados, como uma lista de valores:</p>
<pre><span style="color: #339966;"><strong># Series com lista do Python</strong></span>
<strong>dados = pd.Series([12, 34, 21, -9, 0, 7])</strong>
<strong>print(dados)</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">0    12
1    34
2    21
3    -9
4     0
5     7
dtype: int64</span></pre>
<h4>Criar objeto Series a partir de um array NumPy</h4>
<p>Podemos ainda passar um array NumPy para criar um Series (a biblioteca NumPy deve estar instalada para que o exemplo a seguir funcione):</p>
<pre><span style="color: #339966;"><strong># Series com array NumPy</strong></span>
<strong>import numpy as np

</strong><strong>array_numpy = np.array([10, 20, 30, 40, 50, 60])</strong>
<strong>dados = pd.Series(array_numpy)</strong>
<strong>print(dados)</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">0    10
1    20
2    30
3    40
4    50
5    60
dtype: int32</span></pre>
<h4>Criar Series preenchida com valores repetidos</h4>
<p>Além disso, podemos criar um Series preenchido com um dado repetido para todos os índices:</p>
<pre><span style="color: #339966;"><strong># Series com repetição de itens</strong></span>
<strong>serie = pd.Series(33, index = ["num1", "num2", "num3", "num4", "num5"])</strong>
<strong>print(serie)</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">num1    33
num2    33
num3    33
num4    33
num5    33
dtype: int64</span></pre>
<h4>Criar Series a partir de um dicionário</h4>
<p>Finalmente, podemos criar um objeto Series passando um dicionário como parâmetro. Neste caso, as chaves serão usadas como índices e os valores serão os itens:</p>
<pre><strong><span style="color: #339966;"># Series com dicionário</span></strong>
<strong>dicionario = {</strong>
<strong>    'Ano' :1950,</strong>
<strong>    'Item' : 'TV',</strong>
<strong>    'Valor' : 250.60</strong>
<strong>}

</strong><strong>serie = pd.Series(dicionario)</strong>
<strong>print(serie)</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Ano       1950
Item        TV
Valor    250.6
dtype: object</span></pre>
<p><em>Outro exemplo de dicionário</em></p>
<pre><strong>dicionario = {'Brasil': 5, 'EUA': 0, 'Inglaterra': 1, 'Argentina': 3}</strong>
<strong>dados = pd.Series(dicionario)</strong>
<strong>print(dados)</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Brasil        5
EUA           0
Inglaterra    1
Argentina     3
dtype: int64</span></pre>
<h3>Valores e índices</h3>
<p>A representação em string de uma Series exibida interativamente mostra o índice à esquerda e os valores à direita. Como não especificamos um índice para os dados, um índice default constituído dos inteiros de 0 a n-1 (em que n é o tamanho dos dados) é criado.</p>
<p>Podemos obter a representação do array e o objeto de índice de Series por meio de seus atributos de valores (<strong><em>values</em></strong>) e de índice (<em><strong>index</strong></em>), respectivamente:</p>
<pre><span style="color: #ff0000;"><strong>print('Dados: ', dados.values)</strong>
<strong>print('Índices: ', dados.index)</strong></span></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Dados:  [5 0 1 3]
Índices:  Index(['Brasil', 'EUA', 'Inglaterra', 'Argentina'], dtype='object')</span></pre>
<h3>Criar índices personalizados</h3>
<p>Com frequência, precisamos criar um Series com um índice que identifique cada ponto de dado com um rótulo. Neste caso passamos o parâmetro index=[] contendo uma lista de valores que serão usados como índices:</p>
<pre><strong>dados = pd.Series([12, 34, 21, -9, 0, 7], index=['a','b','c','d','e','f'])</strong>
<strong>print(dados)</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">a    12
b    34
c    21
d    -9
e     0
f     7
dtype: int64</span></pre>
<p>Podemos usar rótulos no índice quando selecionamos valores únicos ou um conjunto de valores:</p>
<pre><strong>print('Dado no índice c: ', dados['c'])</strong>
<strong>print('\nÍndices b e e:')</strong>
<strong>print(dados[['b','e']])</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Dado no índice c:  21

Índices b e e:
b    34
e     0
dtype: int64</span></pre>
<h3>Operações Gerais em objetos Series</h3>
<p>Agora que sabemos como criar e acessar objetos Series do Pandas, vamos conhecer algumas operações básicas que podemos realizar sobre os índices e dados armazenados na estrutura.</p>
<h4>1. Acessar um item</h4>
<p>Podemos acessar itens (valores) usando número de posição de índice ou nome de índice (se aplicado):</p>
<pre><strong>serie = pd.Series([10, 20, 30, 40, 50], index = ["num1", "num2","num3", "num4", "num5"])</strong>
<strong>print('Item na posição 0: ', serie[0])</strong>
<strong>print('Item de índice num3: ', serie['num3'])</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Item na posição 0:  10
Item de índice num3:  30</span></pre>
<h4>2. Descobrir valores máximo e mínimo</h4>
<p>Podemos retornar os valores máximo e mínimo de um objeto Series com o emprego dos métodos .max() e .min():</p>
<pre><strong>serie = pd.Series([5, 7, 12, 2, 1, 6, 7, 0, -3, 22])</strong>
<strong>print(f'Menor valor: {serie.min()}')</strong>
<strong>print(f'Valor mais alto: {serie.max()}')</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Menor valor: -3
Valor mais alto: 22</span></pre>
<p>Para obter o índice associado ao maior valor usamos o método <em>.idxmax()</em> e o índice do menor valor com <em>.idxmin()</em>:</p>
<pre><strong>serie = pd.Series([5, 7, 12, 2, 1, 6, 7, 0, -3, 22])</strong>
<strong>print(f'Valor mais alto: {serie.max()}')</strong>
<strong>print(f'Índice do maior valor: {serie.idxmax()}')</strong>
<strong>print(f'Índice do menor valor: {serie.idxmin()}')</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Valor mais alto: 22
Índice do maior valor: 9
Índice do menor valor: 8</span></pre>
<h4>3. Funções de Estatística Descritiva</h4>
<p>Diversas funções de estatística descritiva estão disponíveis em objetos Series, na forma de métodos associados, como Média Aritmética Simples, Mediana e Somatório, entre outras.</p>
<p>A média aritmética pode ser obtida com o método .mean():</p>
<pre><strong>print(f'Média aritmética: {serie.mean()}')</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Média aritmética: 5.9</span></pre>
<p>A mediana com .median():</p>
<pre><strong>print(f'Mediana dos valores: {serie.median()}')</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Mediana dos valores: 5.5</span></pre>
<p>E o somatório dos valores com .sum():</p>
<pre><strong>print(f'Somatório dos valores: {serie.sum()}')</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Somatório dos valores: 59</span></pre>
<h4>4. Converter objeto Series em lista comum do Python</h4>
<p>Podemos converter um objeto Series em uma lista comum do Python com o método .tolist():</p>
<pre><strong>serie = pd.Series([5, 7, 12, 2, 1, 6, 7, 0, -3, 22])

</strong><span style="color: #339966;"><strong># Ver objeto Series</strong></span>
<strong>print(serie)

</strong><span style="color: #339966;"><strong># Criar lista a partir de Series</strong></span>
<strong>lista = serie.tolist()

</strong><span style="color: #339966;"><strong># Ver lista criada</strong></span>
<strong>print('Lista: ', lista)</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">0     5
1     7
2    12
3     2
4     1
5     6
6     7
7     0
8    -3
9    22
dtype: int64
Lista:  [5, 7, 12, 2, 1, 6, 7, 0, -3, 22]</span></pre>
<h4>5. Mostrar apenas os primeiros e últimos itens da Series</h4>
<p>Se a quantidade de itens no objeto Series for grande, talvez você queira ver apenas os primeiros valores para ter uma ideia da natureza dos dados. Neste caso, pode usar o método head(), que retorna os cinco primeiros itens da série.</p>
<pre><strong>print(serie.head())</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">0     5
1     7
2    12
3     2
4     1
dtype: int64</span></pre>
<p>Da mesma forma, para mostrar os cinco últimos elementos, usamos o método <strong>.tail()</strong></p>
<p>Dependendo da quantidade de itens, o Pandas retorna automaticamente apenas os cinco primeiros e os cinco últimos, sem a necessidade de usar o método .head().</p>
<p>No exemplo a seguir geramos 1000 números aleatórios usando a biblioteca NumPy, e criamos um Series do Pandas com esses valores. Na sequência, imprimimos os valores na tela &#8211; somente os cinco primeiros e cinco últimos devem aparecer neste caso, mesmo sem usar os métodos head() e tail():</p>
<pre><strong>import pandas as pd
</strong><strong>from numpy import random

</strong><strong>lista = []</strong>
<strong>for i in range(1000):</strong>
<strong>    lista.append(random.randint(250))</strong>
<strong>dados = pd.Series(lista)</strong>
<strong>print(dados)</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">0        0
1       39
2      161
3      125
4      147
      ... 
995     24
996     95
997    165
998    144
999     45
Length: 1000, dtype: int64</span></pre>
<h4>6. Mostrar os elementos ordenados por valores de índice: método .sort_index()</h4>
<pre><strong>dicionario = {'Brasil': 5, 'EUA': 0, 'Inglaterra': 1, 'Argentina': 3}</strong>
<strong>dados = pd.Series(dicionario)</strong>
<strong>print(dados.sort_index())</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">Argentina     3
Brasil        5
EUA           0
Inglaterra    1
dtype: int64</span></pre>
<h4>7. Mostrar os elementos ordenados por valores dos itens: método .sort_values()</h4>
<pre><strong>dicionario = {'Brasil': 5, 'EUA': 0, 'Inglaterra': 1, 'Argentina': 3}</strong>
<strong>dados = pd.Series(dicionario)</strong>
<strong>print(dados.sort_values())</strong></pre>
<p>Saída:</p>
<pre><span style="color: #000000;">EUA           0
Inglaterra    1
Argentina     3
Brasil        5
dtype: int64</span></pre>
<p>Vamos praticar um pouco agora.</p>
<h3>Dataset para exercícios</h3>
<p>Escreva um código que gere um objeto Series do Pandas, contendo uma lista com todos os países da União Europeia e suas respectivas populações, com os nomes dos países sendo usados como índices.</p>
<pre><span style="color: #339966;"><strong># Dicionário contendo os países da União Europeia e suas populações</strong></span>
<strong>dados = {</strong>
<strong>'Austria': 9006398,</strong>
<strong>'Alemanha': 83289318,</strong>
<strong>'Bélgica': 11589623,</strong>
<strong>'Bulgária': 7000039,</strong>
<strong>'Chipre': 1207361,</strong>
<strong>'Croácia': 4076246,</strong>
<strong>'Dinamarca': 5806015,</strong>
<strong>'Eslováquia': 5459642,</strong>
<strong>'Eslovênia': 2095861,</strong>
<strong>'Espanha': 47351567,</strong>
<strong>'Estônia': 1324820,</strong>
<strong>'Finlândia': 5523231,</strong>
<strong>'França': 66977107,</strong>
<strong>'Grécia': 10423056,</strong>
<strong>'Hungria': 9775564,</strong>
<strong>'Irlanda': 4882495,</strong>
<strong>'Itália': 60233948,</strong>
<strong>'Letônia': 1906743,</strong>
<strong>'Lituânia': 2793471,</strong>
<strong>'Luxemburgo': 613894,</strong>
<strong>'Malta': 493559,</strong>
<strong>'Países Baixos': 17134872,</strong>
<strong>'Polônia': 37974750,</strong>
<strong>'Portugal': 10286263,</strong>
<strong>'República Tcheca': 10693939,</strong>
<strong>'Romênia': 19405156,</strong>
<strong>'Suécia': 10106005,</strong>
<strong>}

</strong><span style="color: #339966;"><strong># Criar um objeto Series a partir do dicionário</strong></span>
<strong>populacao_ue = pd.Series(dados)

</strong><span style="color: #339966;"><strong># Exibir o objeto Series</strong></span>
<strong>print(populacao_ue)</strong></pre>
<h3>Exercícios: Series do Pandas</h3>
<p>Vamos treinar agora. Para os próximos exercícios, use o Series <em><strong>populacao_ue</strong></em> criado anteriormente. As respostas estão na sequência, com códigos sugeridos.</p>
<p>01. Imprimir a população da França.</p>
<p>02. Imprimir a lista de países da União Europeia em ordem alfabética.</p>
<p>03. Calcular e imprimir o número total de países na União Europeia.</p>
<p>04. Calcular e imprimir a população média dos países da União Europeia. Mostrar o resultado com duas casas decimais apenas.</p>
<p>05. Encontrar e imprimir o país com a maior população na União Europeia.</p>
<p>06. Filtrar e imprimir os países da União Europeia com população acima de 10 milhões, mostrando o resultado em ordem alfabética de nome de país.</p>
<p>07. Calcular e imprimir a população total da União Europeia.</p>
<p>08. Calcular e imprimir a porcentagem da população da Espanha em relação à população total da União Europeia.</p>
<p>09. Ordenar a Series em ordem decrescente de população e imprimir os cinco primeiros países.</p>
<p>10. Criar uma nova Series com a população de apenas três países da União Europeia e calcular a média da população desses países.<br />
Use como exemplos os países França, Alemanha e Croácia.</p>
<p>11. Como exibir apenas as últimas três linhas do Series Pandas de nome &#8220;populacao_ue&#8221;?<br />
A. populacao_ue(3:)<br />
B. populacao_ue(1:3)<br />
C. populacao_ue(-3:)<br />
D. populacao_ue(:3)<br />
E. populacao_ue(+3)</p>
<p>12. Podemos criar um objeto Series do Pandas usando:<br />
A. Array NumPy<br />
B. Lista<br />
C. Dicionário<br />
D. Valores repetidos<br />
E. Todos os anteriores</p>
<h3>RESPOSTAS DOS EXERCÍCIOS</h3>
<p>01.</p>
<pre><strong>print(populacao_ue['França'])</strong></pre>
<p>02.</p>
<pre>print(populacao_ue.sort_index())</pre>
<p>03.</p>
<pre>numero_paises = len(populacao_ue.index)
print("Número de países na União Europeia:", numero_paises)</pre>
<p>04.</p>
<pre>populacao_media = populacao_ue.mean()
print(f'População média dos países da União Europeia: {round(populacao_media, 2)}')</pre>
<p>05.</p>
<pre>pais_maior_populacao = populacao_ue.idxmax()
print("País com maior população na União Europeia:", pais_maior_populacao)</pre>
<p>06.</p>
<pre><span style="color: #339966;"># Filtrar os países da União Europeia com população acima de 10 milhões</span>
paises_mais_10M = populacao_ue[populacao_ue &gt; 10000000]

<span style="color: #339966;"># Ordenar os países filtrados em ordem alfabética e imprimir</span>
paises_ordenados = paises_mais_10M.sort_index()
print("Países da União Europeia com população acima de 10 milhões, em ordem alfabética:")
print(paises_ordenados)</pre>
<p>07.</p>
<pre>print(f'População total da União Europeia: {populacao_ue.sum()} habitantes')</pre>
<p>08.</p>
<pre>populacao_espanha = populacao_ue['Espanha']
populacao_total = populacao_ue.sum()
porcentagem_espanha = (populacao_espanha / populacao_total) * 100
print(f'População da Espanha em relação à população da UE: {porcentagem_espanha:.02f}%')</pre>
<p>09.</p>
<pre>paises_mais_populosos = populacao_ue.sort_values(ascending=False)
print("Cinco primeiros países mais populosos:")
print(paises_mais_populosos.head())</pre>
<p>10.</p>
<pre>paises_selecionados = populacao_ue[['França', 'Alemanha', 'Croácia']]
media_populacao_selecionados = paises_selecionados.mean()
print("Média da população:", media_populacao_selecionados)</pre>
<p>11.</p>
<pre>C. populacao_ue(-3:)</pre>
<p>12.</p>
<pre>E. Todos os anteriores</pre>
<p>É isso aí! No próximo tutorial vamos apresentar o objeto DataFrame (df) do Pandas, mostrando como criar um dataframe e como manipular seu conteúdo pode meio dos métodos e propriedades disponíveis.</p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/como-usar-o-objeto-series-da-biblioteca-pandas-em-python/">Como usar o objeto Series da biblioteca Pandas em Python</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-python/como-usar-o-objeto-series-da-biblioteca-pandas-em-python/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>O que é um Dataset</title>
		<link>https://www.bosontreinamentos.com.br/ciencia-de-dados/o-que-e-um-dataset/</link>
					<comments>https://www.bosontreinamentos.com.br/ciencia-de-dados/o-que-e-um-dataset/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Tue, 22 Mar 2022 18:11:27 +0000</pubDate>
				<category><![CDATA[Ciência de Dados]]></category>
		<category><![CDATA[Bancos de Dados]]></category>
		<category><![CDATA[Big Data]]></category>
		<category><![CDATA[Data Science]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=18151</guid>

					<description><![CDATA[<p>O que é um Dataset Se você estuda ou pesquisa materiais relacionados a bancos de dados ou ciência de dados (ou áreas correlatas), já deve ter se deparado com o termo &#8220;dataset&#8221; em algum momento. Talvez até já tenha utilizado um em algum projeto, mesmo que não se lembre do fato. Mas, o que é um data set? Será o mesmo que um database (banco de dados)? Qual a relação entre dataset e database? E quanto de &#8220;data&#8221; (dados) é necessário para termos um um &#8220;set&#8221; (conjunto) deles? Vou responder a essas e  outras perguntas sobre o assunto neste artigo.  Coleções de dados Um data set (ou ainda dataset) é, basicamente, uma coleção de dados. Esses dados podem ser tabulares (na forma de uma tabela), como os encontrados em bancos de dados relacionais, ou ainda podem ser coleções de arquivos ou documentos em formatos variados. Um grupo de registros pode ser chamado de data set. Em um dataset podemos armazenar os mais variados tipos de informações, tais como registros médicos, dados de sensores, informações científicas, dados estatísticos como dados de censos, e muitas outras. Esses dados são então utilizados por aplicações para realizar processos de análise, com o intuito de obter [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/ciencia-de-dados/o-que-e-um-dataset/">O que é um Dataset</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>O que é um Dataset</h2>
<p><span style="font-weight: 400;">Se você estuda ou pesquisa materiais relacionados a bancos de dados ou ciência de dados (ou áreas correlatas), já deve ter se deparado com o termo &#8220;dataset&#8221; em algum momento. Talvez até já tenha utilizado um em algum projeto, mesmo que não se lembre do fato.</span></p>
<p><span style="font-weight: 400;">Mas, o que é um data set? Será o mesmo que um database (banco de dados)? Qual a relação entre dataset e database? E quanto de &#8220;data&#8221; (dados) é necessário para termos um um &#8220;set&#8221; (conjunto) deles?</span></p>
<p>Vou responder a essas e  outras perguntas sobre o assunto neste artigo. </p>
<h3>Coleções de dados</h3>
<p><span style="font-weight: 400;">Um <em><strong>data set</strong></em> (ou ainda <em>dataset</em>) é, basicamente, uma coleção de dados.</span></p>
<p><span style="font-weight: 400;">Esses dados podem ser tabulares (na forma de uma tabela), como os encontrados em bancos de dados relacionais, ou ainda podem ser coleções de arquivos ou documentos em formatos variados.</span></p>
<p><span style="font-weight: 400;">Um grupo de registros pode ser chamado de data set. Em um dataset podemos armazenar os mais variados tipos de informações, tais como registros médicos, dados de sensores, informações científicas, dados estatísticos como dados de censos, e muitas outras.</span></p>
<p><span style="font-weight: 400;">Esses dados são então utilizados por aplicações para realizar processos de análise, com o intuito de obter informações e novos insights para um negócio.</span></p>
<h3><strong>Onde conseguimos um Data set?</strong></h3>
<p><span style="font-weight: 400;">Diversos data sets estão disponíveis para uso pelo público, para pesquisas ou simplesmente aprendizado de alguma tecnologia como <a href="https://youtu.be/JPC5mE9iI0I" target="_blank" rel="noopener">Big Data</a>, Machine Learning ou <a href="http://www.bosontreinamentos.com.br/bancos-de-dados/o-que-e-um-banco-de-dados-relacional/">Bancos Relacionais</a>.</span></p>
<p><span style="font-weight: 400;">Exemplos incluem:</span></p>
<ul>
<li><a href="https://archive.ics.uci.edu/ml/datasets/Iris" target="_blank" rel="noopener"><span style="font-weight: 400;">Dataset Iris Flower</span></a></li>
<li><a href="http://yann.lecun.com/exdb/mnist/" target="_blank" rel="noopener"><span style="font-weight: 400;">Banco MNIST</span></a></li>
</ul>
<p><span style="font-weight: 400;">Alguns sites disponibilizam e permitem a publicação de data sets abertos (ou com algum custo), como por exemplo:</span></p>
<ul>
<li><span style="font-weight: 400;"><a href="https://datahub.io/" target="_blank" rel="noopener">Data Hub</a> &#8211; Diretório de data sets abertos gerenciado por uma comunidade</span></li>
<li><a href="https://data.worldbank.org/" target="_blank" rel="noopener">World Bank Open Data</a> &#8211; Dados de Desenvolvimento Mundial do Banco Mundial</li>
<li><a href="https://data.gov/" target="_blank" rel="noopener">DATA.GOV</a> &#8211; Dados abertos do governo dos Estados Unidos da América </li>
<li><a href="https://dados.gov.br/dataset" target="_blank" rel="noopener">dados.gov.br</a> &#8211; Portal Brasileiro de Dados abertos </li>
<li><a href="https://www.imf.org/en/Data" target="_blank" rel="noopener">IMF Data</a> &#8211; Dados do Fundo Monetário Internacional (FMI)</li>
<li><a href="https://www.kaggle.com/datasets" target="_blank" rel="noopener">Kaggle Datasets</a> &#8211; Sistema de busca de data sets do Kaggle</li>
</ul>
<p>Os datasets podem ser gerados a partir de inúmeras fontes de dados distintas, como por exemplo dados de compras realizadas pelos usuários de uma loja, avaliações desses usuários sobre os produtos ou serviços adquiridos, preenchimento de formulários e pesquisas online (ou físicas), oriundos de sistemas eletrônicos como sensores de dados físicos, e muitas outras.</p>
<h3>Como é composto um Dataset</h3>
<p>No geral, um data set consiste de dois componentes básicos: linhas e colunas, mas não exatamente como em uma planilha. Comumente, cada linha de um data set contém dados a respeito de uma informação em particular &#8211; similar a uma tabela, mas não necessariamente idêntico. É comum o emprego de arquivos CSV (valores separados por vírgulas) para a criação de datasets.</p>
<p>Como exemplo, podemos considerar o fragmento de conjunto de dados a seguir, que trata de elementos químicos da tabela periódica. Trata-se de uma tabela de dados, na forma de uma planilha, que pode ser importada em programas de análise de dados e manipulada com o emprego de técnicas, funções e bibliotecas específicas.</p>
<div id="attachment_18152" style="width: 709px" class="wp-caption aligncenter"><img decoding="async" aria-describedby="caption-attachment-18152" class="wp-image-18152" title="Data Set de Elementos Químicos - Bóson Treinamentos" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2022/03/data-set-elementos-quimicos.png" alt="Data Set de Elementos Químicos - Bóson Treinamentos" width="699" height="192" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2022/03/data-set-elementos-quimicos.png 954w, https://www.bosontreinamentos.com.br/wp-content/uploads/2022/03/data-set-elementos-quimicos-420x115.png 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2022/03/data-set-elementos-quimicos-768x211.png 768w" sizes="(max-width: 699px) 100vw, 699px" /><p id="caption-attachment-18152" class="wp-caption-text">Data Set de Elementos Químicos &#8211; Bóson Treinamentos</p></div>
<p>Neste exemplo, cada coluna se refere a uma propriedade específica dos elementos químicos, e cada linha contém o conjunto de propriedades de um elemento em particular. Para cada elemento há uma linha de dados.</p>
<p>Já o fragmento do <a href="https://github.com/openfootball/worldcup" target="_blank" rel="noopener">data set openfootball</a> a seguir, armazenado no Github e descoberto a partir do Data Hub, traz dados sobre as finais da Copa do Mundo de Futebol masculino de 1994, realizada nos EUA.</p>
<p>Note que o formato é diferente do exemplo anterior (elementos químicos), tratando-se de um arquivo de texto puro:</p>
<div id="attachment_18154" style="width: 663px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-18154" class="wp-image-18154 size-full" title="Data Set Copa do Mundo 1994" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2022/03/data-set-copa-mundo-eua.png" alt="Data Set Copa do Mundo 1994" width="653" height="433" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2022/03/data-set-copa-mundo-eua.png 653w, https://www.bosontreinamentos.com.br/wp-content/uploads/2022/03/data-set-copa-mundo-eua-420x278.png 420w" sizes="auto, (max-width: 653px) 100vw, 653px" /><p id="caption-attachment-18154" class="wp-caption-text">Dados da Copa do Mundo 1994 do Data Set OpenFootball</p></div>
<p>Porém, os dados ainda assim estão armazenados em um formato tabular, com cada linha no geral remetendo a uma partida específica, e cada coluna a uma informação sobre as partidas.</p>
<p>A última linha (linha 41) mostra os dados da final entre Brasil e Itália, e podemos ver que a partida foi realizada no Rose Bowl, em Pasadena, com vitória do Brasil por 3 a 2 nos pênaltis, após empate em 0 x 0 no tempo normal e prorrogação*</p>
<p><em>*dia memorável, quebrei o lustre da sala da casa de meus avós com uma cabeçada (sem querer) após o pênalti de R. Baggio, ao dar um pulo para comemorar.</em></p>
<h3>Ferramentas usadas para analisar data sets</h3>
<p>Muitas ferramentas podem ser empregadas na análise e uso dos dados de um data set, com algumas das mais comuns listadas a seguir:</p>
<ul>
<li>Bibliotecas das linguagens R e <a href="http://www.bosontreinamentos.com.br/category/programacao-em-python/">Python</a> (como o Pandas)</li>
<li>Tableau</li>
<li>Microsoft Excel</li>
<li>Power BI</li>
<li>QlikView</li>
<li>RapidMiner</li>
<li><a href="http://www.bosontreinamentos.com.br/curso-completo-de-mysql/">Linguagem SQL</a></li>
</ul>
<p>entre muitos outros pacotes de software e bibliotecas de funções.</p>
<h3>Diferença entre Dado, Dataset e Banco de Dados</h3>
<p>É muito comum confundir esses termos, pois se referem a conceitos similares entre si. Mas eles <em>não são a mesma coisa</em>. Qual a diferença então entre Data set, Dados e Bancos de Dados (Database)?</p>
<p>Vejamos:</p>
<ul>
<li><a href="http://www.bosontreinamentos.com.br/modelagem-de-dados/conceitos-de-dados-informacoes-e-bancos-de-dados/"><strong>Dados</strong></a> são observações ou medições brutas (não processadas ou processadas) representadas como texto, números ou outros formatos.</li>
<li><strong>Data set</strong> é uma coleção estruturada de dados, geralmente associados a um assunto específico.</li>
<li>Já um <strong><a href="http://www.bosontreinamentos.com.br/bancos-de-dados/o-que-e-um-banco-de-dados-relacional/">Banco de Dados</a></strong> é uma coleção organizada de dados, que podem ser armazenados na forma de datasets correlacionados. Esses conjuntos de dados são geralmente armazenados e acessados eletronicamente a partir de um sistema informatizado (como um SGBD) que permite que os dados sejam facilmente acessados, manipulados e atualizados.</li>
</ul>
<h3>Conclusão</h3>
<p>Um dataset é um conjunto de dados tabulados e organizados em um arquivo de formato específico (.csv, .xls, .botxt, etc.), empregado em várias áreas das ciências de dados como fonte de informação para pesquisa, estudo, obtenção de informações e treinamento de sistemas de aprendizado de máquina (machine learning) e inteligência artificial, entre outros.</p>
<p>E, falando em Ciência de Dados, quais linguagens de programação são as mais indicadas para trabalhar nessa área? Confira neste artigo: <a href="http://www.bosontreinamentos.com.br/ciencia-de-dados/7-linguagens-de-programacao-para-ciencia-de-dados-2021/">7 linguagens de programação para Ciência de Dados</a>.</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/ciencia-de-dados/o-que-e-um-dataset/">O que é um Dataset</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/ciencia-de-dados/o-que-e-um-dataset/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>7 Linguagens de programação para Ciência de Dados &#8211; 2021</title>
		<link>https://www.bosontreinamentos.com.br/ciencia-de-dados/7-linguagens-de-programacao-para-ciencia-de-dados-2021/</link>
					<comments>https://www.bosontreinamentos.com.br/ciencia-de-dados/7-linguagens-de-programacao-para-ciencia-de-dados-2021/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Tue, 23 Mar 2021 15:44:49 +0000</pubDate>
				<category><![CDATA[Carreira]]></category>
		<category><![CDATA[Ciência de Dados]]></category>
		<category><![CDATA[Análise de Dados]]></category>
		<category><![CDATA[Big Data]]></category>
		<category><![CDATA[Data Science]]></category>
		<category><![CDATA[Julia]]></category>
		<category><![CDATA[Octave]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=17644</guid>

					<description><![CDATA[<p>7 Linguagens de programação para Ciência de Dados &#8211; 2021 A ciência de dados é uma área do conhecimento que envolve o estudo e a análise de dados dos mais variados tipos, incluindo financeiros, científicos, sociais e econômicos. Seu intuito é a extração de conhecimento, descoberta de informações ocultas e detecção de padrões em conjuntos de dados para auxiliar na tomada de decisões e gerar valor para o negócio. Por conta disso,&#160;uma das profissões / carreiras mais em alta na atualidade é o cargo de Cientista de Dados.&#160; Um cientista de dados precisa ter um leque de conhecimentos diverso, combinando expertise em várias áreas do conhecimento, como matemática (principalmente estatística e probabilidade), conhecimentos específicos da área do negócio e, naturalmente, linguagens de programação para a criação de algoritmos e aplicações de software que são empregados no dia-a-dia. E aqui surge a dúvida mais comum entre os aspirantes à ciência de dados: que linguagem de programação aprender? Dada a quantidade de opções existentes, incluindo linguagens de uso geral e linguagens de nicho, quais linguagens de programação seriam mais apropriadas para uso em ciência de dados? Para ajudar a responder a essas perguntar e dar um direcionamento aos interessados na área, listo [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/ciencia-de-dados/7-linguagens-de-programacao-para-ciencia-de-dados-2021/">7 Linguagens de programação para Ciência de Dados &#8211; 2021</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>7 Linguagens de programação para Ciência de Dados &#8211; 2021</h2>
<p>A ciência de dados é uma área do conhecimento que envolve o estudo e a análise de dados dos mais variados tipos, incluindo financeiros, científicos, sociais e econômicos. Seu intuito é a extração de conhecimento, descoberta de informações ocultas e detecção de padrões em conjuntos de dados para auxiliar na tomada de decisões e gerar valor para o negócio.</p>
<p>Por conta disso,&nbsp;uma das profissões / carreiras mais em alta na atualidade é o cargo de Cientista de Dados.&nbsp;</p>
<p>Um cientista de dados precisa ter um leque de conhecimentos diverso, combinando expertise em várias áreas do conhecimento, como matemática (principalmente estatística e probabilidade), conhecimentos específicos da área do negócio e, naturalmente, linguagens de programação para a criação de algoritmos e aplicações de software que são empregados no dia-a-dia.</p>
<p>E aqui surge a dúvida mais comum entre os aspirantes à ciência de dados: que linguagem de programação aprender? Dada a quantidade de opções existentes, incluindo linguagens de uso geral e linguagens de nicho, quais linguagens de programação seriam mais apropriadas para uso em ciência de dados?</p>
<p>Para ajudar a responder a essas perguntar e dar um direcionamento aos interessados na área, listo a seguir sete linguagens de programação muito importantes e úteis para o trabalho de um cientista de dados atualmente (e para outras áreas, como Big Data, Machine Learning, Inteligência Artificial, e outras).</p>
<p>Vamos lá!</p>
<h3>1. <a href="http://www.bosontreinamentos.com.br/category/programacao-em-python/">Python</a></h3>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17374" title="linguagem de programação python" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Python-logo-1024x1024.png" alt="Logotipo Python" width="250" height="250" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Python-logo-1024x1024.png 1024w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Python-logo-170x170.png 170w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Python-logo-420x420.png 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Python-logo-768x768.png 768w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Python-logo.png 2000w" sizes="auto, (max-width: 250px) 100vw, 250px" /></p>
<p>Python é, sem sombra de dúvida, a linguagem ideal para iniciantes em ciência de dados e muitas outras áreas da computação). Com Python é possível trabalhar em nichos diversos como aprendizado de máquina, inteligência artificial, análise de dados, visualização de dados, automação de tarefas e como linguagem de propósito geral, tudo graças ao seu extenso conjunto de poderosas bibliotecas, que inclui ferramentas como <a href="http://www.bosontreinamentos.com.br/programacao-em-python/como-criar-um-array-no-python-com-numpy/">NumPy</a>, <a href="http://www.bosontreinamentos.com.br/programacao-em-python/como-criar-graficos-com-matplotlib-em-python/">Matplotlib</a>, Pandas, SciPy e muitas outras.</p>
<p>É, atualmente, uma das linguagens mais utilizadas no mundo, e com perspectivas de crescimento ainda maior nos próximos anos.<br />
Além de tudo isso, é uma linguagem ideal para iniciantes em computação, por sua facilidade de uso e curva de aprendizado muito suave.</p>
<p>É uma linguagem de código aberto, orientada a objetos, muito flexível e com uma comunidade de desenvolvedores gigantesca, que facilita enormemente a troca de informações e orientações sobre ouso da linguagem em si e suas bibliotecas.</p>
<h3>2. <a href="http://www.bosontreinamentos.com.br/category/programacao-em-r/">Linguagem R</a></h3>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17376" title="linguagem r para ciência de dados" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/logo-linguagem-r.png" alt="Linguagem R" width="251" height="141" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/logo-linguagem-r.png 960w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/logo-linguagem-r-420x236.png 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/logo-linguagem-r-768x432.png 768w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/logo-linguagem-r-580x326.png 580w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/logo-linguagem-r-174x98.png 174w" sizes="auto, (max-width: 251px) 100vw, 251px" /></p>
<p>Outra linguagem de peso no mundo da ciência de dados, é uma das ferramentas open source para análise estatística mais poderosas disponívis, e que pode ser empregada em tarefas como processamento de grandes volumes de dados, modelagem matemática, mineração de dados, cálculos estatísticos (claro!), e ainda por cima possui bibliotecas gráficas de alta qualidade para visualização de dados.</p>
<p>Com R é possível criar aplicações como sistemas de detecção de fraudes financeiras, modelagem de análise de sentimentos e sistemas de recomendação, além de aplicações para áreas tão diversas quanto engenharia, medicina e biologia.</p>
<p>Tarefas como análise de séries temporais, clustering e modelagem linear são algumas dos exemplos de processos que a linguagem R suporta com simplicidade.</p>
<p>Além disso, existem várias interfaces que podem ser usadas com o R para facilitar o trabalho de desenvolvimento de algoritmos e aplicações, tais como o RStudio e Jupyter Notebooks, entre outras.</p>
<p>Comumente usamos Python e R combinados, unindo suas funcionalidades em um par excelente para praticamente qualquer aplicação.</p>
<p>Como contras da linguagem, podemos citar a velocidade de execução e a quantidade de recursos de hardware que scripts escritos em R consomem, especialmente memória RAM.</p>
<h3>3. <a href="http://www.bosontreinamentos.com.br/curso-completo-de-mysql/">SQL</a></h3>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17655" title="bancos de dados com SQL" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2021/03/Database-icon-05.png" alt="linguagem SQL para bancos de dados" width="250" height="250" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2021/03/Database-icon-05.png 400w, https://www.bosontreinamentos.com.br/wp-content/uploads/2021/03/Database-icon-05-170x170.png 170w" sizes="auto, (max-width: 250px) 100vw, 250px" /></p>
<p>Linguagem de Consulta Estruturada para Bancos de Dados, é uma das linguagens mais importantes para trabalho com dados e principalmente <a href="https://youtu.be/JPC5mE9iI0I" target="_blank" rel="noopener">Big Data</a>, ao combinar capacidades analíticas e de consultas com transacionais. SQL é um conhecimento básico para praticamente qualquer interessado em trabalhar com desenvolvimento de sistemas de todos os tipos, e em ciência de dados é imprescindível.</p>
<p>Em que usamos SQL exatamente? Bem, trata-se de uma linguagem de domínio específico, sendo empregada no gerenciamento de dados armazenados, local ou remotamente.</p>
<p>Note que existem diversos &#8220;sabores&#8221; de SQL, dependendo da implementação do fabricante &#8211; mas todos seguem um mesmo padrão, o ANSI SQL. E um ponto muito favorável do SQL é que essa linguagem se integra com muita facilidade às outras linguagens de programação, sendo extremamente comum desenvolver aplicações que mesclem códigos escritos, por exemplo, em Python ou Java com SQL.</p>
<h3>4. <a href="http://www.bosontreinamentos.com.br/category/java/">Java</a></h3>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17379" title="linguagem java para data science" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/java.png" alt="Linguagem Java da Oracle" width="250" height="250" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/java.png 512w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/java-170x170.png 170w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/java-420x420.png 420w" sizes="auto, (max-width: 250px) 100vw, 250px" /></p>
<p>Linguagem de propósito geral e alta performance, o Java é empregado no desenvolvimento de algoritmos para machine learning, além de encontrar aplicações em nichos como Big Data e IoT (Internet das Coisas). É vastamente empregada no desenvolvimento de aplicações móveis e para Web.</p>
<p>Muitos frameworks e ferramentas empregadas em Big Data são escritos ou rodam em Java, como por exemplo Apache Spark, Hive e o Hadoop.</p>
<p>Uma das grandes vantagens do Java é a disponibilidade de IDEs de qualidade para o desenvolvimento de aplicações com eficiência e rapidez, incluindo softwares de alta complexidade. Alguns dos IDEs mais comuns incluem o Eclipse, Netbeans e IntelliJ, entre outros menos usados.</p>
<p>Alguns dos nichos onde o Java é mais empregado na área de ciência de dados incluem Aprendizado Profundo (Deep Learning), Processamento de Linguagem Natural (NLP &#8211; Natural Language Processing) e Mineração de Dados (Data Mining), entre outras.</p>
<p>Um ponto no qual a linguagem peca é a falta de ferramentas altamente especializadas para trabalho com estatística e cálculos matemáticos avançados, o que pode ser contornado combinando a linguagem Java com outras linguagens mais especializadas como a linguagem R, por exemplo.</p>
<h3>5. <a href="http://www.bosontreinamentos.com.br/category/programacao-em-c/">C/C++</a></h3>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17381" title="aprender c++ para ciência de dados" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/linguagem-c-programacao-1024x1024.png" alt="Linguagem de Programação C++" width="250" height="250" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/linguagem-c-programacao-1024x1024.png 1024w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/linguagem-c-programacao-170x170.png 170w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/linguagem-c-programacao-420x420.png 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/linguagem-c-programacao-768x768.png 768w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/linguagem-c-programacao.png 1600w" sizes="auto, (max-width: 250px) 100vw, 250px" /></p>
<p>São as linguagens mais antigas listadas neste artigo, e provavelmente as mais difíceis de aprender, mas nem por isso com importância menor: C/C++ (principalmente C++) constitui a principal ferramenta em muitos tipos de sistemas de alta performance, sendo empregada em áreas como Inteligência Artificial, Aprendizado de Máquina e Robótica, onde o processamento de dados analíticos precisa ser feito com muita rapidez e alta performance.</p>
<p>Uma das aplicações mais modernas do C++ é no desenvolvimento de aplicações para veículos autônomos, que necessitam de algoritmos de análise de dados altamente complexos e performáticos, e em muitas aplicações de tempo real onde conjuntos de dados precisam ser tratados praticamente no momento em que são utilizados.</p>
<p>É interessante notar que muitas das linguagens citadas neste artigo são elas próprias escritas em C ou C++, com Python, R e Julia, assim como muitas bibliotecas e frameworks usados em data science, como o TensorFlow, por exemplo.</p>
<h3>6. <a href="http://www.bosontreinamentos.com.br/julia/como-instalar-a-linguagem-julia-no-linux-debian/">Julia</a></h3>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17236" title="linguagem julia para data science" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/julia-logo-1024x692.png" alt="Logo linguagem Julia" width="250" height="169" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/julia-logo.png 1024w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/julia-logo-420x284.png 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/julia-logo-768x519.png 768w" sizes="auto, (max-width: 250px) 100vw, 250px" /></p>
<p>Inicialmente concebida como uma linguagem para programação científica, é uma linguagem de alto nível extremamente rápida que pode ser usada para o desenvolvimento de diversos tipos de aplicações, sozinha ou em conjunto com bibliotecas C/C++ ou Python.</p>
<p>Sua grande força está nas tarefas de análise numérica, apesar de também poder ser usada como linguagem de programação de propósito geral. É uma linguagem intuitiva, bastante acessível, além de ser de código aberto.</p>
<p>Uma de suas principais aplicações é na área financeira, onde existe a necessidade de realizar cálculos de forma massiva e com muita rapidez, com cálculos de análise de risco ou análise de séries temporais.</p>
<p>Um de seus problemas é o fato de ser uma linguagem relativamente nova e, que por isso, ainda possui uma comunidade de usuários pequena, com menos documentação disponível para consulta.</p>
<p>Porém, permite o interfaceamento (direto ou por pacotes específicos) com bibliotecas de outras linguagens, como Python, R, C++, Matlab e até mesmo Fortran, a´lem de possuir suporta a computação distribuída e computação paralela, o que significa aplicações de elevada performance!</p>
<p>Suas ferramentas de visualização de dados ainda não estão no mesmo nível das ferramentas disponíveis outras linguagens, mas vem melhorando a cada dia.</p>
<h3>7. Matlab / <a href="http://www.bosontreinamentos.com.br/category/octave/">Octave</a></h3>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17432 size-full" title="programação com octave para ciência de dados" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Gnu-octave.png" alt="GNU Octave - Computação Científica" width="200" height="200" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Gnu-octave.png 200w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/12/Gnu-octave-170x170.png 170w" sizes="auto, (max-width: 200px) 100vw, 200px" /></p>
<p>Matlab é um ambiente de computação matemática e uma linguagem proprietária amplamente utilizada em cenários que demandam operações de cálculos avançados.</p>
<p>Encontra aplicações em análise de dados, processamento de imagens, processamento de sinais e, evidentemente, criação de modelos matemáticos por meio da manipulação de matrizes, álgebra linear, análise numérica e outras técnicas, facilitando enormemente a resolução dos problemas matemáticos mais complicados.</p>
<p>É uma linguagem recomendada para trabalho com Big Data e também na Indústria, principalmente de Engenharia. O Matlab traz suporte nativo a diversos formatos de dados empregados em telemetria, sensores, processamento de imagem e vídeo, e muitos outros.</p>
<p>Como ponto talvez negativo do Matlab posso citar o fato de não ser uma linguagem muito rápida, e necessitar de uma licença, de custo relativamente elevado, para ser usada.</p>
<p>O Octave é a principal alternativa ao Matlab, podendo substitui-la no geral em quase todas as tarefas necessárias para análise de dados, com algumas diferenças funcionais. Além disso, é gratuito.</p>
<h3>Extra: Matemática</h3>
<p>Como citado no início do artigo, conhecimentos em matemática são muito importantes &#8211; até mesmo cruciais &#8211; para o trabalho na área de data science. Alguns dos tópicos mais relevantes em matemática que é necessário dominar &#8211; ou ao menos revisar &#8211; incluem:</p>
<ul>
<li><a href="http://www.bosontreinamentos.com.br/matematica/topicos-em-matematica-media-mediana-e-moda-estatistica/">Estatística</a> (essencial)</li>
<li>Probabilidade&nbsp;(essencial)</li>
<li>Cálculo Integral e Diferencial</li>
<li>Cálculo Numérico (Álgebra Linear)</li>
</ul>
<p>Entre outros. Claro que conhecer matemática é benéfico para qualquer área de atuação, principalmente nos domínios da tecnologia, independente do trabalho ser voltado para ciência de dados ou não.</p>
<p>Além disso, tão importante quanto conhecer as linguagens de programação é saber como usar as diversas bibliotecas e frameworks disponíveis para data science, pois, no dia-a-dia do trabalho, é o que você irá usar com mais frequência, e por isso vale a pena investir seu tempo nesse aprendizado.</p>
<h3>Conclusão</h3>
<p>Neste artigo procurei trazer algumas das linguagens de programação mais indicadas para quem deseja trabalhar com ciência de dados. Note que essas sete linguagens não são as únicas que se prestam a essa tarefa, existindo outras linguagens também interessantes para a área, como Haskell e Lisp, por exemplo. Ciência de Dados é uma área muito vasta, se ramificando em inúmeros caminhos possíveis, e a verdade é que provavelmente você precisará aprender mais do que uma das linguagens citadas &#8211; talvez várias delas ao longo de sua carreira e estudos.</p>
<p>Finalmente, tudo o que foi exposto aqui é, basicamente, minha opinião pessoal e minha visão, baseada em meus estudos e experiência de mercado e acadêmica.</p>
<p>Evidentemente vocês podem pensar de forma diferente &#8211; talvez achando que uma linguagem deveria ter sido incluída na lista, ou que uma das linguagens que citei não deveria estar aqui &#8211; e por isso os convido a postarem seus pensamentos nos comentários logo abaixo, para trocarmos ideias sobre esse assunto tão importante e interessante na atualidade &#8211; e certamente pelos anos vindouros.</p>
<p>Até!</p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/ciencia-de-dados/7-linguagens-de-programacao-para-ciencia-de-dados-2021/">7 Linguagens de programação para Ciência de Dados &#8211; 2021</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/ciencia-de-dados/7-linguagens-de-programacao-para-ciencia-de-dados-2021/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Como instalar o IDE Juno para programação em Julia no Windows</title>
		<link>https://www.bosontreinamentos.com.br/julia/como-instalar-o-ide-juno-para-programacao-em-julia-no-windows/</link>
					<comments>https://www.bosontreinamentos.com.br/julia/como-instalar-o-ide-juno-para-programacao-em-julia-no-windows/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Thu, 26 Nov 2020 13:13:00 +0000</pubDate>
				<category><![CDATA[Julia]]></category>
		<category><![CDATA[Ciência de Dados]]></category>
		<category><![CDATA[Computação Científica]]></category>
		<category><![CDATA[Computação Numérica]]></category>
		<category><![CDATA[Data Science]]></category>
		<category><![CDATA[Matemática]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=17221</guid>

					<description><![CDATA[<p>Como instalar o IDE Juno para programação em Julia no Windows 10 Neste tutorial vamos mostrar como instalar e configurar o IDE Juno, para desenvolvimento em linguagem Julia. O Juno é um ambiente de desenvolvimento para Julia que é instalado junto ao editor de textos Atom, e por isso é necessário ter o Atom pré-instalado em sua máquina &#8211; é a partir dele que o Juno será baixado, instalado e configurado. O website oficial do Juno, com informações detalhadas e manuais de uso é o https://junolab.org. Instalando o Juno no Windows 10 Vamos seguir os passos abaixo para instalar o IDE Juno em um computador com Windows: 1. É necessário ter a linguagem Julia já instalada na máquina antes de instalar o IDE Juno. Caso não a tenha, siga os passos deste tutorial para instalar a Julia no Windows. 2. Com a linguagem Julia já instalada, baixe e instale o editor Atom, se você ainda não tiver esse editor de textos em seu sistema. Logo após instalá-lo, abra-o. 3. No IDE Atom, vá até Configurações (Ctrl+,), e entre no painel de instalação (Install Packages). Digite uber-juno na caixa de pesquisa Packages e pressione enter. Clique no botão de instalação do [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/julia/como-instalar-o-ide-juno-para-programacao-em-julia-no-windows/">Como instalar o IDE Juno para programação em Julia no Windows</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 instalar o IDE Juno para programação em Julia no Windows 10</h2>
<p>Neste tutorial vamos mostrar como instalar e configurar o IDE Juno, para desenvolvimento em linguagem Julia. O Juno é um ambiente de desenvolvimento para Julia que é instalado junto ao editor de textos Atom, e por isso é necessário ter o Atom pré-instalado em sua máquina &#8211; é a partir dele que o Juno será baixado, instalado e configurado.</p>
<p>O website oficial do Juno, com informações detalhadas e manuais de uso é o <a href="https://junolab.org" target="_blank" rel="noopener">https://junolab.org</a>.</p>
<h3>Instalando o Juno no Windows 10</h3>
<p>Vamos seguir os passos abaixo para instalar o IDE Juno em um computador com Windows:</p>
<p>1. É necessário ter a linguagem Julia já instalada na máquina antes de instalar o IDE Juno. Caso não a tenha, siga os passos deste <a href="http://www.bosontreinamentos.com.br/julia/como-instalar-a-linguagem-julia-no-windows/">tutorial para instalar a Julia no Windows</a>.</p>
<p>2. Com a linguagem Julia já instalada, <a href="https://atom.io/" target="_blank" rel="noopener">baixe e instale o editor Atom</a>, se você ainda não tiver esse editor de textos em seu sistema. Logo após instalá-lo, abra-o.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17222" title="Instalar IDE Juno para Julia" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-01.jpg" alt="Instalar IDE Juno para Julia" width="650" height="428" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-01.jpg 859w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-01-420x277.jpg 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-01-768x506.jpg 768w" sizes="auto, (max-width: 650px) 100vw, 650px" /></p>
<p>3. No IDE Atom, vá até Configurações (<strong>Ctrl+,</strong>), e entre no painel de instalação (<em><strong>Install Packages</strong></em>).</p>
<p>Digite <strong>uber-juno</strong> na caixa de pesquisa <strong>Packages</strong> e pressione enter. Clique no botão de instalação do pacote da JunoLab com o mesmo nome (<strong>Install</strong>).</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17223 size-full" title="Instalar IDE Juno para Julia" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-02.jpg" alt="Instalar IDE Juno para Julia" width="400" height="306"></p>
<p>O Juno será instalado e configurado pelo Atom, incluindo todos os pacotes necessários. Aguarde enquanto o processo é executado</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17224 size-full" title="Instalar IDE Juno para Julia" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-03.jpg" alt="Instalar IDE Juno para Julia" width="487" height="218" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-03.jpg 487w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-03-420x188.jpg 420w" sizes="auto, (max-width: 487px) 100vw, 487px" /></p>
<p>Após o término da instalação, pode ser necessário incluir o caminho do executável do Julia nas configurações do IDE para que seja possível utilizar a linguagem (no meu caso foi). Para isso, clique no menu do Atom em <em><strong>Packages -&gt; Juno -&gt; Settings</strong></em>.</p>
<p>Procure a caixa &#8220;<em><strong>Julia Path (The location of the Julia binary)</strong></em>&#8221; e nela insira o caminho completo do executável do Julia. Esse caminho pode ser obtido clicando com o botão direito do mouse sobre o ícone do Julia da área de trabalho do Windows, e selecionando <em>Propriedades -&gt; Atalho</em>.<br />
Geralmente o caminho é algo como <em>C:\Users\<strong>nome-usuário</strong>\AppData\Local\Programs\Julia 1.5.3\bin\julia.exe</em>, onde <em><strong>nome-usuário</strong></em> é o nome do usuário que você usou para se logar no sistema.</p>
<p>Copie e cole o link na caixa <strong>Julia Path</strong> (retire as aspas, se houverem). Pressione enter para finalizar.</p>
<h3>Testar o Juno IDE</h3>
<p>Para testar o IDE, clique no menu <strong>Juno -&gt; Open REPL</strong>.&nbsp;Na seção &#8220;<strong>Press Enter to start Julia</strong>&#8220;, pressione a tecla enter para iniciar o ambiente da Julia. Pode demorar um pouco para que o interpretador esteja disponível, portanto, aguarde.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-17225" title="Instalar IDE Juno para linguagem Julia" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-iniciar-julia-04.jpg" alt="Instalar IDE Juno para Julia" width="750" height="134" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-iniciar-julia-04.jpg 952w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-iniciar-julia-04-420x75.jpg 420w, https://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-instalar-atom-iniciar-julia-04-768x137.jpg 768w" sizes="auto, (max-width: 750px) 100vw, 750px" /></p>
<p>Para testar a linguagem e o IDE, vamos digitar as linhas de código a seguir no interpretador de comandos do Julia para executar um cálculo aritmético simples:</p>
<pre><span style="color: #ff0000;"><strong>julia&gt; a = 5;</strong></span>
<span style="color: #ff0000;"><strong>julia&gt; b = 8;</strong></span>
<span style="color: #ff0000;"><strong>julia&gt; c = a * b / 2;</strong></span>
<span style="color: #ff0000;"><strong>julia&gt; println(c)</strong></span></pre>
<p>Resultado:<img loading="lazy" decoding="async" class="aligncenter wp-image-17227 size-full" title="Instalar IDE Juno para linguagem Julia e testar a linguagem" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2020/11/juno-testar-julia-06.jpg" alt="Instalar IDE Juno para linguagem Julia" width="234" height="150"></p>
<p>É isso aí! Maiores informações sobre a instalação do Juno IDE, incluindo a resolução de problemas, podem ser obtidas na página de documentação oficial: <a href="http://docs.junolab.org/latest/man/installation/" target="_blank" rel="noopener">docs.junolab.org/latest/man/installation/</a></p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/julia/como-instalar-o-ide-juno-para-programacao-em-julia-no-windows/">Como instalar o IDE Juno para programação em Julia no Windows</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/julia/como-instalar-o-ide-juno-para-programacao-em-julia-no-windows/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Como criar gráficos com matplotlib em Python</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/como-criar-graficos-com-matplotlib-em-python/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-python/como-criar-graficos-com-matplotlib-em-python/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Thu, 14 Nov 2019 23:18:05 +0000</pubDate>
				<category><![CDATA[Programação em Python]]></category>
		<category><![CDATA[Data Science]]></category>
		<category><![CDATA[matplotlib]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Visualização de Dados]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=15397</guid>

					<description><![CDATA[<p>Gráficos com matplotlib em Python O matplotlib é uma biblioteca gráfica 2D, que contém uma grande coleção de módulos para trabalho com gráficos e visualização de dados em Python.&#160; Permite criar representações gráficas de dados de alta qualidade em vários formatos e também ambientes interativos, em inúmeras plataformas. Além de poder ser usado em scripts do Python, também pode ser empregado em Jupyter Notebooks, servidores de aplicação Web e em toolkits de interface gráfica, entre outros. Com esta biblioteca podemos gerar gráficos de vários tipos, histogramas, scatterplots e muitos outros tipos de visualização de dados, usando poucas linhas de código (afinal, é Python!). Neste artigo veremos como criar um gráfico simples usando matplotlib e seus módulos. Mas antes, vamos rever dois conceitos importantes que serão necessários: Plano Cartesiano e Geração de Listas em Python. O Plano Cartesiano Um plano cartesiano é, basicamente, uma representação gráfica que possui duas linhas numéricas: um eixo x (na horizontal) e um eixo y (na vertical), perpendiculares entre si. O centro desse gráfico é chamado de Origem (O), e números no lado direito da origem no eixo x são positivos, e os à esquerda são negativos. Da mesma forma, números acima da origem no eixo [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/como-criar-graficos-com-matplotlib-em-python/">Como criar gráficos com matplotlib em Python</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>Gráficos com matplotlib em Python</h2>
<p><span style="font-weight: 400;">O <strong>matplotlib</strong> é uma biblioteca gráfica 2D, que contém uma grande coleção de módulos para trabalho com gráficos e visualização de dados em Python.&nbsp;</span></p>
<p>Permite criar representações gráficas de dados de alta qualidade em vários formatos e também ambientes interativos, em inúmeras plataformas. Além de poder ser usado em scripts do Python, também pode ser empregado em Jupyter Notebooks, servidores de aplicação Web e em toolkits de interface gráfica, entre outros.</p>
<p>Com esta biblioteca podemos gerar gráficos de vários tipos, histogramas, scatterplots e muitos outros tipos de visualização de dados, usando poucas linhas de código (afinal, é Python!).</p>
<p>Neste artigo veremos como criar um gráfico simples usando matplotlib e seus módulos. Mas antes, vamos rever dois conceitos importantes que serão necessários: Plano Cartesiano e Geração de Listas em Python.</p>
<h3>O Plano Cartesiano</h3>
<p>Um plano cartesiano é, basicamente, uma representação gráfica que possui duas linhas numéricas: um eixo x (na horizontal) e um eixo y (na vertical), perpendiculares entre si.</p>
<p>O centro desse gráfico é chamado de Origem (O), e números no lado direito da origem no eixo x são positivos, e os à esquerda são negativos. Da mesma forma, números acima da origem no eixo y são positivos e números abaixo da origem, negativos.</p>
<p>Um ponto no gráfico é a combinação de um par de valores nos eixos x e y. Esse par de valores é chamado de coordenadas, estabelecendo a localização de um ponto qualquer.</p>
<p>A figura a seguir mostra um plano cartesiano com um ponto plotado (na cor roxa), na posição (2,3), que significa valor 2 no eixo x e valor 3 no eixo y:</p>
<div id="attachment_15724" style="width: 410px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-15724" class="wp-image-15724 size-full" title="O plano de coordenadas cartesiano" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/11/plano-coordenadas-cartesiano.png" alt="O plano de coordenadas cartesiano" width="400" height="400" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/11/plano-coordenadas-cartesiano.png 400w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/11/plano-coordenadas-cartesiano-170x170.png 170w" sizes="auto, (max-width: 400px) 100vw, 400px" /><p id="caption-attachment-15724" class="wp-caption-text">Plano de coordenadas cartesiano. Gerado em https://www.oliverboorman.biz/projects/tools/cartesian_grid.php</p></div>
<h3><strong>Listas em Python</strong></h3>
<p>Usaremos listas para armazenar os dados que serão plotados nos gráficos. Assim, poderemos armazenar os valores dos eixos x e y que deverão ser plotados.</p>
<p>Antes disso, vamos relembrar como criar uma lista, acessar seus elementos individualmente e como iterar por eles.</p>
<p><strong>Criar uma lista</strong></p>
<p>Criamos uma lista atribuindo um conjunto de valores entre colchetes e separados por vírgulas a uma variável, como no exemplo a seguir:</p>
<pre><span style="font-weight: 400;">minhaLista = [2, 5, 9, 12]</span></pre>
<p>Criamos neste exemplo uma lista de nome minhaLista, contendo quatro elementos numéricos.</p>
<p><strong>Acessar os elementos da lista</strong></p>
<p>Para acessar um elemento de uma lista basta indicar o número da posição do elemento desejado, entre colchetes, logo após o nome da lista:</p>
<pre><span style="font-weight: 400;">minhaLista[0]</span>
<span style="font-weight: 400;">minhaLista[3]</span></pre>
<p>Nos dois exemplos acima, acessamos os elementos das posições 0 e 3 da lista. Lembre-se que o primeiro elemento de uma lista é sempre o elemento da posição 0, de modo que o elemento da posição 3 da lista acima é na verdade o quarto elemento armazenado.</p>
<p><strong>Iteração em uma lista</strong></p>
<p>Podemos iterar por uma lista, acessando todos os seus elementos sequencialmente, usando um laço for, como no exemplo a seguir:</p>
<pre><span style="font-weight: 400;">for item in minhaLista:</span>
<span style="font-weight: 400;">&nbsp;&nbsp;&nbsp;&nbsp;print(item)</span></pre>
<p>Cada elemento da lista é atribuído à variável item em cada iteração, e seu valor é impresso na tela.</p>
<p>Agora que revisamos a criação de uma lista e o acesso a seus elementos, vamos ver como instalar o matplotlib em seu sistema.</p>
<h3><strong>Instalação do matplotlib</strong></h3>
<p>A instalação dos pacotes do matplotlib é muito simples. O site oficial da biblioteca é&nbsp;<a href="http://www.matplotlib.org" target="_blank" rel="noopener"><span style="font-weight: 400;">www.matplotlib.org</span></a></p>
<h4>Instalação no Windows</h4>
<p>Para instalar a biblioteca em um computador com Windows execute os seguintes comandos em um prompt:</p>
<pre><strong>python -m pip install -U pip</strong>
<strong>python -m pip install -U matplotlib</strong></pre>
<h4>Instalação no Linux</h4>
<p>Use o gerenciador de pacotes de sua distribuição para realizar a instalação do matplotlib no Linux. Por exemplo:</p>
<p>Debian / Ubuntu:</p>
<pre>sudo apt install python3-matplotlib</pre>
<p>Fedora:</p>
<pre>sudo dnf install python3-matplotlib</pre>
<p>Red Hat:</p>
<pre>sudo yum install python3-matplotlib</pre>
<p><span style="font-weight: 400;">Caso você esteja trabalhando com a distribuição Anaconda, não será necessário baixar e instalar o matplotlib, pois ele já vem instalado por padrão (além de trazer inúmeras outras ferramentas muito úteis para ciência de dados).</span></p>
<p>Mais informações sobre a instalação do matplotlib podem ser obtidas aqui:&nbsp;<a href="https://matplotlib.org/users/installing.html" target="_blank" rel="noopener">https://matplotlib.org/users/installing.html</a></p>
<h2><strong>Criar gráficos com matplotlib</strong></h2>
<p><span style="font-weight: 400;">Agora vamos criar gráficos com matplotlib efetivamente usando a biblioteca. Começamos criando duas listas para armazenar os dados dos eixos x e y que serão plotados no gráfico:</span></p>
<pre><span style="font-weight: 400;">eixoX = [1, 2, 3, 4]</span>
<span style="font-weight: 400;">eixoY = [2, 5, 9, 12]</span></pre>
<p><span style="font-weight: 400;">Usaremos o módulo <strong>pylab</strong> para realizar as operações necessárias à plotagem de um gráfico simples.</span></p>
<p><span style="font-weight: 400;">O PyLab é uma interface para a biblioteca Matplotlib, sendo um módulo pertencente à biblioteca. Este módulo importa o matplotlib.pyplot, para plotagem de gráficos, e o NumPy, para cálculos matemáticos e operações com arrays, em um namespace único.</span></p>
<p><span style="font-weight: 400;">Importar os módulos necessários:</span></p>
<pre><span style="font-weight: 400;">from pylab import plot, show</span></pre>
<p><span style="font-weight: 400;">Criar o gráfico:</span></p>
<pre><span style="font-weight: 400;">plot(eixoX, eixoY)</span>
<span style="font-weight: 400;">show()</span></pre>
<p><span style="font-weight: 400;">A função <strong>plot()</strong> cria o gráfico e o armazena em um objeto na memória; a função <strong>show()</strong> o mostra na tela.</span></p>
<p><img loading="lazy" decoding="async" class="Gráfico com matplotlib em Python aligncenter wp-image-15398 size-full" title="Gráfico com matplotlib em Python 01" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/graficos01.png" alt="Gráfico com matplotlib em Python" width="378" height="268"></p>
<p>Note que, se você não executar a função show(), o gráfico será criado mas não será exibido na tela, ficando armazenado em memória.</p>
<h3><strong>Como marcar os pontos no gráfico</strong></h3>
<p><span style="font-weight: 400;">Para marcar os pontos no gráfico usamos o parâmetro <strong>marker</strong> na função plot():</span></p>
<pre><span style="font-weight: 400;">plot(eixoX, eixoY, marker='o')</span></pre>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-15399 size-full" title="Gráfico com matplotlib em Python 02" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/graficos02.png" alt="Gráfico com matplotlib em Python" width="374" height="257"></p>
<p><span style="font-weight: 400;">O valor &#8216;o&#8217; indica que os pontos serão pequenos círculos. podemos também marcar apenas os pontos no gráfico, sem as linhas que os conectam, da seguinte forma:</span></p>
<pre><span style="font-weight: 400;">plot(eixoX, eixoY, 'o')</span></pre>
<h3><strong>Como plotar mais de uma linha no mesmo gráfico</strong></h3>
<p><span style="font-weight: 400;">Vamos criar um gráfico que mostre as temperaturas máxima e mínima ao longo dos meses em um determinado local. Precisaremos de três listas:</span></p>
<pre><span style="font-weight: 400;">meses = ['Jan', 'Fev', 'Mar','Abr','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez']</span>
<span style="font-weight: 400;">Tmax = [38,39,32,29,26,22,19,15,20,22,25,27]</span>
<span style="font-weight: 400;">Tmin = [23,23,22,21,19,16,12,10,16,21,22,22]</span></pre>
<p><span style="font-weight: 400;">Agora passamos as listas em pares meses/temperaturas para a função plot():</span></p>
<pre><span style="font-weight: 400;">from pylab import plot, show, legend</span>
<span style="font-weight: 400;">plot(meses,Tmax,meses,Tmin)</span>
<span style="font-weight: 400;">legend(['Tmax','Tmin'])</span>
<span style="font-weight: 400;">show()</span></pre>
<p><span style="font-weight: 400;">Note que uma cor diferente para cada linha é escolhida automaticamente, para indicar que cada linha corresponde a um conjunto de dados.</span></p>
<p><span style="font-weight: 400;">Note que também importamos o módulo <strong>legend</strong>, que nos permitirá adicionar uma legenda ao gráfico, de modo a sabermos qual linha corresponde a qual dado. A função legend() recebe uma lista de nomes como argumento, e usará essa lista para criar a legenda, com os nomes passados correspondendo às listas de valores plotadas no gráfico, em ordem.</span></p>
<p><span style="font-weight: 400;">A função <strong>legend()</strong> deve ser executada após a função plot() para funcionar.</span></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-15400 size-full" title="Gráfico com matplotlib em Python 03" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/graficos03.png" alt="Gráfico com matplotlib em Python" width="375" height="262"></p>
<p><span style="font-weight: 400;">Podemos adicionar um título e rótulos aos eixos x e y do gráfico. Para isso usamos as funções <strong>title()</strong>, <strong>xlabel()</strong> e <strong>ylabel()</strong>, que devem ser importadas a partir de seus módulos. Por exemplo, vamos adicionar rótulos e um título ao nosso gráfico:</span></p>
<pre><span style="font-weight: 400;">from pylab import plot, show, legend, title, xlabel, ylabel</span>
<span style="font-weight: 400;">meses = ['Jan', 'Fev', 'Mar','Abr','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez']</span>
<span style="font-weight: 400;">Tmax = [38,39,32,29,26,22,19,15,20,22,25,27]</span>
<span style="font-weight: 400;">Tmin = [23,23,22,21,19,16,12,10,16,21,22,22]</span>
<span style="font-weight: 400;">plot(meses,Tmax,meses,Tmin)</span>
<span style="font-weight: 400;">title('Temperaturas Máximas e Mínimas do Ano')</span>
<span style="font-weight: 400;">xlabel('Mês')</span>
<span style="font-weight: 400;">ylabel('Temp/°C')</span>
<span style="font-weight: 400;">legend(['Tmax','Tmin'])</span>
<span style="font-weight: 400;">show()</span></pre>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-15401 size-full" title="Gráfico com matplotlib em Python 04" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/graficos04.png" alt="Gráfico com matplotlib em Python" width="392" height="293" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/graficos04.png 392w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/graficos04-174x131.png 174w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/graficos04-300x225.png 300w" sizes="auto, (max-width: 392px) 100vw, 392px" /></p>
<p><span style="font-weight: 400;">Finalmente, vamos configurar os valores máximo e mínimo de cada eixo. Por exemplo, queremos que o eixo y (temperaturas) mostre temperaturas entre 0 e 45 °C. Para isso, usamos a função <strong>axis()</strong> (importar o módulo axis também):</span></p>
<pre><span style="font-weight: 400;">from pylab import plot, show, legend, title, xlabel, ylabel, axis</span></pre>
<p><span style="font-weight: 400;">Adicionar a Função ao código anterior:</span></p>
<pre><span style="font-weight: 400;">axis(ymin=0,ymax=45)</span></pre>
<p><span style="font-weight: 400;">Resultado:</span></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-15402 size-full" title="Gráfico com matplotlib em Python 05" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/graficos05.png" alt="Gráfico com matplotlib em Python" width="389" height="282"></p>
<p><span style="font-weight: 400;">De forma similar, podemos também usar os parâmetros <strong>xmin</strong> e <strong>xmax</strong> na função axis() para determinar os limites numéricos máximo e mínimo no eixo x.</span></p>
<p>É isso aí! Nesta lição vimos como criar um gráfico bem básico &#8211; mas informativo &#8211; usando um módulo da biblioteca matplotlib. Na próxima lição vamos nos aprofundar na criação de gráficos mais especializados e em configurações mais complexas destes gráficos.</p>
<p>Até lá!.&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/como-criar-graficos-com-matplotlib-em-python/">Como criar gráficos com matplotlib em Python</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-python/como-criar-graficos-com-matplotlib-em-python/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Introdução aos Números Complexos em Python</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/introducao-aos-numeros-complexos-em-python/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-python/introducao-aos-numeros-complexos-em-python/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Wed, 18 Sep 2019 12:49:29 +0000</pubDate>
				<category><![CDATA[Matemática]]></category>
		<category><![CDATA[Programação em Python]]></category>
		<category><![CDATA[Ciência de Dados]]></category>
		<category><![CDATA[Data Science]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=15344</guid>

					<description><![CDATA[<p>Números Complexos em Python Neste tutorial vamos mostrar como trabalhar com números complexos de forma básica usando a linguagem Python. Números complexos possuem inúmeras aplicações, como por exemplo nas áreas de mecânica quântica, eletromagnetismo,&#160; cartografia, processamento de sinais, geometria e diversas outras. Mas o que são números complexos? Na matemática, podemos classificar os números em duas categorias, os números reais e os números imaginários. Um número real é aquele que, quando elevado ao quadrado sempre retorna um valor de sinal positivo, independente do número ser positivo ou negativo. Por exemplo, 5 é um número real, pois 52 = 25 (positivo). Outros exemplos de números reais: -3 (-32 = 9) 1/2 34,23 Já números imaginários são números que, ao serem elevados ao quadrado, retornam um resultado negativo. O número imaginário unitário é i, que simboliza a raiz quadrada de -1. Assim: i2 = -1 Um número complexo z é a combinação de um número real com um número imaginário. Assim, temos que: z = a + bi onde a é a parte real do número, e bi é a parte imaginária do número. Exemplos de números complexos: 2 + 4i -6 + 13i 7 &#8211; 5i 0.5 + 2.3i Números Complexos [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/introducao-aos-numeros-complexos-em-python/">Introdução aos Números Complexos em Python</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>Números Complexos em Python</h2>
<p>Neste tutorial vamos mostrar como trabalhar com <a href="http://www.bosontreinamentos.com.br/matematica/introducao-aos-numeros-complexos/" target="_blank" rel="noopener">números complexos</a> de forma básica usando a <a href="http://www.bosontreinamentos.com.br/category/programacao-em-python/" target="_blank" rel="noopener">linguagem Python</a>.</p>
<p>Números complexos possuem inúmeras aplicações, como por exemplo nas áreas de mecânica quântica, eletromagnetismo,&nbsp; cartografia, processamento de sinais, geometria e diversas outras.</p>
<h3>Mas o que são números complexos?</h3>
<p>Na matemática, podemos classificar os números em duas categorias, os números reais e os números imaginários.</p>
<p>Um número real é aquele que, quando elevado ao quadrado sempre retorna um valor de sinal positivo, independente do número ser positivo ou negativo.</p>
<p>Por exemplo, 5 é um número real, pois 5<sup>2</sup> = 25 (positivo).<br />
Outros exemplos de números reais:</p>
<p><strong>-3 (-3<sup>2</sup> = 9)</strong><br />
<strong>1/2</strong><br />
<strong>34,23</strong></p>
<p>Já números imaginários são números que, ao serem elevados ao quadrado, retornam um resultado negativo.<br />
O número imaginário unitário é <strong>i</strong>, que simboliza a raiz quadrada de -1. Assim:</p>
<pre><strong><span style="color: #800000; font-size: 14pt;">i<sup>2</sup> = -1</span></strong></pre>
<p>Um número complexo z é a combinação de um número real com um número imaginário.<br />
Assim, temos que:</p>
<pre><span style="font-size: 14pt; color: #800000;"><strong>z = a + bi</strong></span></pre>
<p>onde <strong>a</strong> é a parte real do número, e <strong>bi</strong> é a parte imaginária do número.</p>
<p>Exemplos de números complexos:</p>
<p><strong>2 + 4i</strong><br />
<strong>-6 + 13i</strong><br />
<strong>7 &#8211; 5i</strong><br />
<strong>0.5 + 2.3i</strong></p>
<h3>Números Complexos em Python: o tipo <em>complex</em></h3>
<p>Para declarar uma variável do tipo <strong><em>complex</em></strong> (número complexo), basta atribuir-lhe um valor no formato x + yj. Por exemplo, vamos atribuir o número complexo <strong>3+4j</strong> à variável <strong>x</strong>:</p>
<pre>x = 3 + 4j</pre>
<p>Note que em Python usamos a letra<strong> j</strong> para denotar a parte imaginária do número, em vez da letra <strong>i</strong>, que é usual na matemática convencional (a letra j é empregada em disciplinas de engenharia elétrica e física).<br />
Podemos verificar o tipo da variável x com a função type():&nbsp;</p>
<pre>type(x)
<span style="color: #000000;">&lt;class 'complex'&gt;</span></pre>
<p>Outra forma de criar um número complexo é com o emprego da função <strong>complex(x,y)</strong>, que recebe dois parâmetros:</p>
<p><strong>x</strong>: Valor da parte real do número complexo<br />
<strong>y</strong>: Valor da parte imaginária do número complexo</p>
<p>Suponha que você quer criar a variável y, atribuindo-lhe o número complexo 5+2j. Usando a função complex() você pode simplesmente executar:</p>
<pre>y = complex(5,2)</pre>
<p>E então verificar o tipo da variável:</p>
<pre>type(y)
<span style="color: #000000;">&lt;class 'complex'&gt;</span></pre>
<p>Verifique o conteúdo da variável também:</p>
<pre>print(y)
<span style="color: #000000;">(5+2j)</span></pre>
<h3>Operações com números complexos em Python</h3>
<p>A linguagem Python nos permite realizar diversas operações usando números complexos, como soma, subtração, multiplicação e divisão, entre outras.</p>
<p>Vejamos alguns exemplos dessas operações básicas.</p>
<p>1 &#8211; Definir números complexos para usar nos exemplos de cálculos</p>
<pre>a = 1+2j
b = complex(3,4)</pre>
<p>2 &#8211; Soma de números complexos:</p>
<pre>print(a + b)
<span style="color: #000000;">(4+6j)</span></pre>
<p>3 &#8211; Subtração de números complexos:</p>
<pre>print(a - b)
<span style="color: #000000;">(-2-2j)</span></pre>
<p>4 &#8211; Multiplicação de números complexos:</p>
<pre>print(a * b)
<span style="color: #000000;">(-5+10j)</span></pre>
<p>5 &#8211; Divisão de números complexos:</p>
<pre>print(a / b)
<span style="color: #000000;">(0.44+0.08j)</span></pre>
<p>6 &#8211; Podemos obter as partes real e imaginária do número complexo acessando as propriedades <strong>real</strong> e <strong>imag</strong> do número, respectivamente:</p>
<pre>print(a.real)
print(a.imag)
<span style="color: #000000;">1.0
2.0</span></pre>
<p>7 &#8211; Obter o Conjugado: Um conjugado possui a mesma parte real, porém uma parte imaginária de igual magnitude e sinal oposto. Para calculá-lo usamos o método <strong>conjugate()</strong>:</p>
<pre>print(b.conjugate())
<span style="color: #000000;">(3-4j)</span></pre>
<p>É isso aí! Neste tutorial introduzimos o conceito de números complexos em Python, e apresentamos algumas operações básicas que podem ser realizadas na linguagem.&nbsp;Na parte 2 deste tutorial vamos abordar o modulo&nbsp;<strong>cmath</strong>, que permite realizar diversas outras operações com números complexos, como cálculos de fase, conversão entre formas polar e retangular, uso de funções trigonométricas e hiperbólicas, funções de classificação, e muito mais.</p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/introducao-aos-numeros-complexos-em-python/">Introdução aos Números Complexos em Python</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-python/introducao-aos-numeros-complexos-em-python/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Calcular Raízes de Equação de 2º Grau com Python</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/calcular-raizes-de-equacao-de-2o-grau-com-python/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-python/calcular-raizes-de-equacao-de-2o-grau-com-python/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Tue, 17 Sep 2019 13:30:12 +0000</pubDate>
				<category><![CDATA[Programação em Python]]></category>
		<category><![CDATA[Data Science]]></category>
		<category><![CDATA[Matemática]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=15361</guid>

					<description><![CDATA[<p>Equação de 2º Grau com Python Neste artigo vamos escrever um script em Python que permite calcular as raízes de uma equação do 2º grau (equação quadrática), com os valores das variáveis de entrada fornecidos pelo usuário. Uma equação do&#160;2º grau é dada por uma expressão do tipo: ax2 + bx + c = 0 Onde x é uma incógnita, e os valores a, b e c são conhecidos &#8211; são os coeficientes da equação, que serão fornecidos pelo usuário ao programa. Os coeficientes são números reais, e o valor do coeficiente a deve ser diferente de zero, caso contrário a equação se torna uma equação de 1° grau. A fórmula empregada para o cálculo dessas raízes é a famosa Fórmula de Bhaskara, dada por: O trecho intermediário b2 &#8211; 4ac também é chamado de &#8220;Discriminante&#8221;, ou &#8220;Delta&#8221; da equação. Os valores de x que satisfazem a essa equação são suas soluções. Este tipo de equação pode ter até duas soluções &#8211; que chamaremos de x1 e x2.&#160;Se não houver solução com números reais (raízes reais), haverá solução com números complexos. Também é possível que haja apenas uma solução (x1 = x2). Neste caso, dizemos que a raiz é dupla. [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/calcular-raizes-de-equacao-de-2o-grau-com-python/">Calcular Raízes de Equação de 2º Grau com Python</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>Equação de 2º Grau com Python</h2>
<p>Neste artigo vamos escrever um script em Python que permite calcular as raízes de uma equação do 2º grau (equação quadrática), com os valores das variáveis de entrada fornecidos pelo usuário.</p>
<p>Uma equação do&nbsp;2º grau é dada por uma expressão do tipo:</p>
<pre><span style="font-size: 18pt; color: #800000;"><strong>ax<sup>2</sup> + bx + c = 0</strong></span></pre>
<p>Onde <strong>x</strong> é uma incógnita, e os valores <strong>a</strong>, <strong>b</strong> e <strong>c</strong> são conhecidos &#8211; são os coeficientes da equação, que serão fornecidos pelo usuário ao programa. Os coeficientes são números reais, e o valor do coeficiente <strong>a</strong> deve ser diferente de zero, caso contrário a equação se torna uma equação de 1° grau.</p>
<p>A fórmula empregada para o cálculo dessas raízes é a famosa Fórmula de Bhaskara, dada por:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15368" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/equacao-2-grau-python.png" alt="Equação do segundo grau com Python" width="390" height="95"></p>
<p>O trecho intermediário <span style="color: #800000;"><strong>b<sup>2</sup> &#8211; 4ac</strong></span> também é chamado de &#8220;Discriminante&#8221;, ou &#8220;Delta&#8221; da equação.</p>
<p>Os valores de x que satisfazem a essa equação são suas soluções. Este tipo de equação pode ter até duas soluções &#8211; que chamaremos de x1 e x2.&nbsp;Se não houver solução com números reais (raízes reais), haverá solução com números complexos.</p>
<p>Também é possível que haja apenas uma solução (x1 = x2). Neste caso, dizemos que a raiz é dupla.</p>
<h3>Código</h3>
<p>A seguir temos o código que foi empregado na criação do script de exemplo.</p>
<pre># Calcular as Raízes de uma Equação do 2º Grau

def raizes(a, b, c):
    D = (b**2 - 4*a*c)
    x1 = (-b + D**(1/2)) / (2*a)
    x2 = (-b - D**(1/2)) / (2*a)

    print('\nValor de x1: {0}'.format(x1))
    print('Valor de x2: {0}'.format(x2))

if __name__ == '__main__':
    while True:
        print('Calculando as raízes de uma equação de 2º grau\n')
        a = float(input('Entre com o valor de a: '))
        b = float(input('Entre com o valor de b: '))
        c = float(input('Entre com o valor de c: '))
        raizes(a,b,c)

        continua = input('Deseja sair? Digite q ou Enter para novo cálculo:')
        if (continua == 'q'):
            break</pre>
<p>Neste script, criamos uma função de nome <strong>raizes()</strong>, que recebe como parâmetros os valores de a, b e c da equação a ser resolvida e aplica a fórmula apresentada anteriormente. Invocamos&nbsp; essa função no programa principal, após requisitar os valores ao usuário, dentro de um loop infinito com laço while, para que o script seja repetido quantas vezes o usuário desejar, até ser encerrado com o pressionamento da tecla q.</p>
<h3>Teste do script</h3>
<p>Para testar nosso programa executamos o script e fornecemos os valores de a, b e c. Suponha que desejamos resolver as equações a seguir:</p>
<p><span style="font-size: 18pt; color: #800000;"><strong>x<sup>2</sup> + 3x + 2 = 0</strong></span></p>
<p>e</p>
<p><span style="font-size: 18pt; color: #800000;"><strong>4x<sup>2</sup> + 2x + 3 = 0</strong></span></p>
<p>Rodamos o script duas vezes, fornecendo os valores solicitados, para obter os valores das raízes das equações:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15362" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/raizes-equacao-2-grau-python.png" alt="Raízes da equação de segundo grau com python" width="488" height="404" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/raizes-equacao-2-grau-python.png 488w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/raizes-equacao-2-grau-python-420x348.png 420w" sizes="auto, (max-width: 488px) 100vw, 488px" /></p>
<p>Note que a primeira equação retorna duas raízes reais, de valores -1 e -2. Já a segunda equação não possui raízes reais, mas o Python calcula as raízes na forma de números complexos, retornando os valores (aproximados)<strong> -0.2499 + 0.82915619758885j</strong> e <strong>-0.2500 &#8211;&nbsp;0.82915619758885j</strong> (o python usa a letra j em vez de i para a parte imaginária de um número complexo).</p>
<p>É isso aí! Em breve veremos como gerar um gráfico a partir de uma equação deste tipo, usando a biblioteca <strong>matplotlib</strong>. Até a próxima!</p>
<p>&nbsp;</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/calcular-raizes-de-equacao-de-2o-grau-com-python/">Calcular Raízes de Equação de 2º Grau com Python</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-python/calcular-raizes-de-equacao-de-2o-grau-com-python/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>Programa que calcula Tabuada em Python</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/programa-que-calcula-tabuada-em-python/</link>
					<comments>https://www.bosontreinamentos.com.br/programacao-em-python/programa-que-calcula-tabuada-em-python/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Sun, 15 Sep 2019 16:47:40 +0000</pubDate>
				<category><![CDATA[Programação em Python]]></category>
		<category><![CDATA[Data Science]]></category>
		<category><![CDATA[Matemática]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=15348</guid>

					<description><![CDATA[<p>Programa para calcular Tabuada em Python Neste artigo trazemos um programa simples para cálculo de tabuadas em Python. O objetivo deste programa é treinar o uso de funções, laços de repetição e entrada de dados do usuário, além de criar um algoritmo matemático que pode ser muito útil em determinadas situações. Uma tabuada, ou tábua de multiplicação, é uma sequência de multiplicações de um número x qualquer por valores sucessivos incrementais, geralmente de 1 até 10 (mas podendo se estender conforme a necessidade). A seguir temos o código do script que utilizamos: # Programa Tabuada em Python def tabuada(x): &#160; &#160; for cont in range(1,11) &#160; &#160; &#160; &#160;print('{0} x {1} = {2}'.format(x,cont,x*cont)) if __name__=='__main__': num = int(input('Digite um número: ')) tabuada(num) Começamos definindo uma função de nome tabuada(), que irá receber como argumento um valor inteiro x, para o qual desejamos calcular sua tabuada (tábua de multiplicação). O programa gera um loop de repetição usando uma estrutura for, que irá repetir 10 vezes a multiplicação do número fornecido pelos valores sequenciais de 1 até 10, e imprimir esses valores na tela (formatados). No programa principal (main) pedimos ao usuário que entre com um número, usando a função input(), convertemos [...]</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/programa-que-calcula-tabuada-em-python/">Programa que calcula Tabuada em Python</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>Programa para calcular Tabuada em Python</h2>
<p>Neste artigo trazemos um programa simples para cálculo de tabuadas em Python. O objetivo deste programa é treinar o uso de <a href="http://www.bosontreinamentos.com.br/programacao-em-python/funcoes-em-python-introducao/" target="_blank" rel="noopener">funções</a>, <a href="http://www.bosontreinamentos.com.br/programacao-em-python/20-python-loop-for-estruturas-de-repeticao-funcao-range/" target="_blank" rel="noopener">laços de repetição</a> e entrada de dados do usuário, além de criar um algoritmo matemático que pode ser muito útil em determinadas situações.</p>
<p>Uma tabuada, ou tábua de multiplicação, é uma sequência de multiplicações de um número x qualquer por valores sucessivos incrementais, geralmente de 1 até 10 (mas podendo se estender conforme a necessidade).</p>
<p>A seguir temos o código do script que utilizamos:</p>
<pre># Programa Tabuada em Python
def tabuada(x):
&nbsp; &nbsp; for cont in range(1,11)
&nbsp; &nbsp;  &nbsp; &nbsp;print('{0} x {1} = {2}'.format(x,cont,x*cont))

if __name__=='__main__':
    num = int(input('Digite um número: '))
    tabuada(num)</pre>
<p>Começamos definindo uma função de nome <strong>tabuada()</strong>, que irá receber como argumento um valor inteiro x, para o qual desejamos calcular sua tabuada (tábua de multiplicação). O programa gera um loop de repetição usando uma estrutura for, que irá repetir 10 vezes a multiplicação do número fornecido pelos valores sequenciais de 1 até 10, e imprimir esses valores na tela (formatados).</p>
<p>No programa principal (<em>main</em>) pedimos ao usuário que entre com um número, usando a função <strong>input()</strong>, convertemos esse valor para número inteiro e o armazenamos na variável num. Finalmente, passamos a variável num como parâmetro na invocação da função tabuada().</p>
<p>A seguir podemos ver o programa calculando a tabuada do número 9:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-15357" src="http://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/tabuada-python.jpg" alt="Tabuada em Python" width="260" height="197" srcset="https://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/tabuada-python.jpg 260w, https://www.bosontreinamentos.com.br/wp-content/uploads/2019/09/tabuada-python-174x131.jpg 174w" sizes="auto, (max-width: 260px) 100vw, 260px" /></p>
<p>Você pode estender o programa para calcular qualquer intervalo de valores na tabuada, como por exemplo uma tábua de&nbsp; multiplicações de 1 a 20. Experimente modificar o programa para treinar e aprender mais.</p>
<p>É isso aí! Nos próximos artigos criaremos mais algoritmos de cálculos variados em Python. Até!</p>
<p>O post <a href="https://www.bosontreinamentos.com.br/programacao-em-python/programa-que-calcula-tabuada-em-python/">Programa que calcula Tabuada em Python</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-python/programa-que-calcula-tabuada-em-python/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
	</channel>
</rss>
