Olá! Meu nome é Allan Spadini e te desejo as boas-vindas ao curso de introdução à NumPy!
Autodescrição: Sou um homem branco, de cabelos e olhos castanho escuros, e sobrancelhas grossas. Visto uma camiseta cinza com o nome "alura" em branco. À minha direita, um microfone que se estende até a altura do meu ombro. Ao fundo, uma estante localizada à direita, com uma luminária da Alura, um símbolo de Data Science e um vaso de planta.
NumPy é uma biblioteca Python, então é interessante que você tenha algum conhecimento em programação nesta linguagem para melhor aproveitar este curso!
Esta biblioteca é voltada para computação numérica e científica, portanto, trabalharemos com objetos do tipo array que servem para realizar operações matemáticas e estatísticas, muito importantes em ciência de dados.
Vamos nessa?
Vamos a um resumo do projeto geral deste curso!
Trabalharemos com um dataset de preços de maçãs. Ou seja, uma tabela de dados semelhante ao que vemos em softwares como Excel e Google Planilhas. A ideia é que comecemos a analisar esses dados seguindo os mesmo processos utilizados nos softwares citados, como, por exemplo, somar os valores de uma coluna, calcular a média ou realizar operações entre diferentes colunas. Para isso, usaremos a ferramenta NumPy, que é uma biblioteca Python.
Esta biblioteca possui uma série de vantagens em operações com arrays, que são objetos semelhantes às listas. Entre as vantagens, podemos citar a rapidez das operações, menos memória sendo ocupada e a série de métodos atrelados a esses objetos.
Na sequência, veremos como criar um array!
Agora, começaremos a trabalhar com o conjunto de dados dos preços das maçãs. Para isso, abriremos o Google Colab, ferramenta que usaremos no decorrer do curso.
Nossos dados estão no repositório do GitHub, disponibilizado na atividade 2. Note que se trata de uma tabela em que cada linha representa uma cidade da Rússia, e cada coluna, uma data. Dessa forma, temos o registro do preço das maçãs no intervalo de Janeiro/2013 a Março/2020.
Visualização dos 5 primeiros registros das 5 primeiras colunas.
1.2013 | 2.2013 | 3.2013 | 4.2013 | 5.2013 | |
---|---|---|---|---|---|
Moscow | 79.72 | 81.08 | 79.68 | 79.80 | 80.63 |
Kaliningrad | 42.67 | 44.37 | 44.73 | 46.75 | NaN |
Petersburg | 62.55 | 62.73 | 63.43 | 63.83 | 66.06 |
Krasnodar | 48.26 | 51.01 | 50.91 | 53.94 | 61.27 |
Ekaterinburg | 71.25 | 71.35 | 70.90 | 71.92 | 72.91 |
Com o arquivo apple_ts.csv
já salvos no computador, vamos ao Google Colab. Na lateral esquerda, temos as opções "Índice", "Localizar e substituir", "Variáveis" e "Arquivos", clicaremos nesta última, representada pelo símbolo de uma pasta.
Dentro de "Arquivos", vamos em "Fazer upload para o armazenamento da sessão". Em seguida, buscamos e selecionamos o arquivo da nossa base de dados. Após o carregamento, este documento aparecerá na listagem de arquivos do Colab.
Após o salvarmos no Colab, precisamos carregá-lo com a linguagem Python, o que faremos utilizando uma função da NumPy que facilita este processo.
O primeiro passo, portanto, é importar a biblioteca NumPy, a qual daremos o apelido np
. Para isso, usaremos o seguinte comando:
import numpy as np
Para executá-lo, teclamos "Shift + Enter".
Na célula seguinte, chamaremos a função .loadtxt()
passando o nome do arquivo 'apples_ts.csv'
. Precisamos passar, também, o delimitador do arquivo que, por ser CSV, tem como padrão ser delimitado por vírgula delimiter=','
.
np.loadtxt('apples_ts.csv', delimiter=',')
Ao executarmos, é retornado um erro, informando que não foi possível converter uma string em um float. Isso acontece porque, quando trabalhamos com arrays em NumPy, precisamos que exista somente um único tipo de dado dentro do array.
Nossa intenção é trabalhar somente com valores numéricos. Mas note que, na primeira coluna, temos textos correspondentes aos nomes das cidades. Sendo assim, precisamos solicitar todas as colunas, com exceção desta, de índice zero.
Lembre-se que a contagem de itens de um array começa sempre do zero, por isso a primeira coluna corresponde à 0.
Para isso, acrescentaremos usecols
que será igual ao array de valores que queremos.
np.loadtxt('apples_ts.csv', delimiter=',', usecols=)
Para este array, usaremos a função np.arange()
que deve gerar a sequência de valores.
Adicionaremos esta função em uma nova célula.
Nela passamos os índices das colunas, iniciando por 1. Em nosso dataset, temos 7 anos de informação e cada ano possui 12 meses, então 7x12 = 84; adicionamos + 3 (correspondente aos 3 meses de 2020) e obtivemos 87. Sendo assim, nossa lista vai de 1 a 87.
Porém, no Python, precisamos digitar o valor final +1 para que este último dado seja englobado, ou seja, 88. Por fim, precisamos passar o valor de incremento, que é 1
:
np.arange(1, 88, 1)
Ao executarmos esta célula, nos é retornado um array com a lista de contagem do número 1 ao 87, o que significa que conseguimos gerar essa sequência de 1 em 1. Sendo assim, podemos passar esta função para usecols
, que está no comando da célula anterior:
np.loadtxt('apples_ts.csv', delimiter=',', usecols=np.arange(1, 88, 1))
Executando este comando, temos como retorno os dados de nosso dataset no formato de array.
Sempre que iniciamos o Colab, precisamos subir nosso arquivo, o que pode ser um pouco trabalhoso. Pensando nisso, veremos outra maneira de carregar nossos dados.
Para isso, temos que salvar o arquivo no GitHub e, ao abri-lo, clicamos na opção "Raw". Uma nova janela será aberta com os dados dispostos dessa maneira:
,1.2013,2.2013,3.2013,4.2013,5.2013,6.2013,7.2013,8.2013,9.2013,10.2013,11.2013,12.2013,1.2014,2.2014,3.2014,4.2014,5.2014,6.2014,7.2014,8.2014,9.2014,10.2014,11.2014,12.2014,1.2015,2.2015,3.2015,4.2015,5.2015,6.2015,7.2015,8.2015,9.2015,10.2015,11.2015,12.2015,1.2016,2.2016,3.2016,4.2016,5.2016,6.2016,7.2016,8.2016,9.2016,10.2016,11.2016,12.2016,1.2017,2.2017,3.2017,4.2017,5.2017,6.2017,7.2017,8.2017,9.2017,10.2017,11.2017,12.2017,1.2018,2.2018,3.2018,4.2018,5.2018,6.2018,7.2018,8.2018,9.2018,10.2018,11.2018,12.2018,1.2019,2.2019,3.2019,4.2019,5.2019,6.2019,7.2019,8.2019,9.2019,10.2019,11.2019,12.2019,1.2020,2.2020,3.2020
Copiaremos o link desta janela e o passaremos para uma variável chamada url
, em uma célula do Colab. Vale ressaltar que precisamos passá-lo entre aspas.
url = 'https://raw.githubusercontent.com/alura-cursos/numpy/dados/apples_ts.csv'
Para usar esta maneira, é importante que o comando acima seja feito na célula seguinte à importação da biblioteca NumPy.
Após executar esta célula, podemos passar a variável url
como primeiro argumento de np.loadtxt()
ao invés do nome do arquivo. Por fim, podemos passar todo o comando para uma nova variável que chamaremos de dado
:
dado = np.loadtxt(url, delimiter=',', usecols=np.arange(1, 88, 1))
Dessa forma, temos toda a informação carregada na variável dado
!
A seguir, começaremos a analisar os dados para verificar se estão adequados para realizarmos nossas operações.
O curso NumPy: análise numérica eficiente com Python possui 92 minutos de vídeos, em um total de 42 atividades. Gostou? Conheça nossos outros cursos de Data Science em Data Science, ou leia nossos artigos de Data Science.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.