Olá! Meu nome é Afonso Rios, sou instrutor de dados na Alura.
Sou um homem de pele morena, tenho olhos castanhos escuros, cabelos curtos e lisos, também castanhos escuros, e barba. Estou vestindo uma camiseta preta com alguns detalhes em verde. Ao fundo, há uma parede branca, com iluminação esverdeada.
Neste curso de introdução a data science, vamos aprender a utilizar a linguagem Python voltada à área de ciência de dados. Aqui, não aprenderemos como usar as bibliotecas mais usuais da ciência de dados, como Pandas e NumPy.
Nosso objetivo é estudar todos os conceitos até chegar ao ponto de entender um pouco mais essas bibliotecas, seus métodos e como são tratados os dados para realização de análises. Além disso, aprenderemos a:
Ler bibliotecas e entender como funcionam;
Instalar, importar e aplicar essas bibliotecas;
Criar e interpretar funções (funções com e sem parâmetro, funções que retornam valores e funções anônimas);
Utilizar estruturas de dados compostas (listas de listas, listas de tuplas, criar listas e adicionais a partir do List comprehension);
Lidar com exceções nos códigos (entender quando um erro acontece no nosso programa e o que podemos fazer para passar esse erro ao usuário de maneira que ele entenda e que o programa não seja interrompido).
Ao final do curso, você será capaz de resolver situações-problema, utilizando todo esse ferramental e construirá uma base sólida, que te auxiliará a utilizar a linguagem Python na área de data science.
Para que sua experiência seja ainda mais proveitosa, é ideal que você já saiba conceitos básicos da linguagem, como:
Uso de variáveis;
Estruturas condicionais e de repetição;
Estruturas de dados simples (listas, tuplas e dicionários);
Utilizar o Google Colab.
Vamos lá?!
Você foi contratado para auxiliar um time de ciência de dados a resolver alguns problemas para uma escola que atua do ensino médio ao ensino superior.
Para entender como ajudar na resolução de demandas que surgem a todo o momento, você precisará passar por um pequeno treinamento, guiando-se por uma lista de conteúdos, cada um deles aborda uma situação relacionada às demandas da escola.
O primeiro assunto são as bibliotecas do Python!
As bibliotecas do Python são, basicamente, um conjunto de módulos e funções úteis para a pessoa usuária. Esses módulos e funções desempenham tarefas segundo as nossas necessidades, sem que seja necessário trazer todos os pacotes e dados para o projeto.
Para conseguir utilizar uma biblioteca, precisamos instalá-la - caso ela não esteja no ambiente - atualizá-la ou importá-la no nosso projeto.
Para instalar uma biblioteca ou atualizá-la, podemos utilizar o pip, um gerenciador de bibliotecas do Python.
Lembrando que, no Colab do curso, você encontrará não só instruções sobre a instalação das bibliotecas, mas também o código de todos os projetos, soluções e problemas que precisaremos resolver.
Pensando em um modelo real, poderíamos dizer que o trabalho do pip
é semelhante ao de um bibliotecário. Enquanto o bibliotecário cataloga e organiza os documentos e livros em um acervo, o pip
organiza as bibliotecas e pacotes dentro do Python.
Vamos escrever pip install
, sendo install
palavra-chave para instalação. Em seguida, indicaremos qual biblioteca vamos instalar. Nós escolheremos a matplotlib
, biblioteca usada para visualização de dados.
pip install matplotlib
Talvez apareçam marcações vermelhas abaixo do código, como se ele estivesse errado. O motivo disso acontecer é que o trabalho com pip
envolve a camada do prompt de comando da nossa máquina virtual.
No nosso Colab do curso, para trabalharmos com essa máquina virtual, precisamos de uma palavra-chave bem pequena. Na verdade, se trata de um símbolo, a exclamação "!", que adicionaremos no início do código.
!pip install matplotlib
Essa exclamação indica que a célula de código não é comum, como as utilizadas para linguagem ou em operações, mas, sim, uma célula que usaremos no prompt de comando para instalar ou atualizar bibliotecas.
Vamos rodar o código!
!pip install matplotlib
A seguir, temos um trecho do retorno:
Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/
Requirement already satisfied: matplotlib in /usr/local/lib/python3.9/dist-packages (3.5.3)
Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.9/dist-packages (from matplotlib) (23.0)
Requirement already satisfied: pyparsing>=2.2.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib) (3.0.9)
O retorno mostra alterações e atualizações em processo e o aviso "requirement already satisfied", indicando que o matplotlib já está instalado na versão básica do Colab. Caso contrário, a instalação seria concluída.
Também podemos instalar a biblioteca a partir de uma versão específica.
Vamos supor a seguinte situação: nós trabalhamos com algum método ou função no matplotlib em determinada versão, por exemplo, a "3.6.12". Na versão acima, essa função deixou de existir ou seus parâmetros mudaram. Neste caso, o código quebraria.
Quando utilizamos a instalação de uma versão específica, estamos assegurando ao usuário do nosso código que ele vai funcionar corretamente, porque fizemos testes neste tipo de versão.
A instalação é bem simples. Vamos começar passando !pip install matplotlib
. Para instalar a versão acima, adicionaremos o operador ==
, que navegará no Python e escolherá a versão 3.6.2
. Lembrando que não é necessário passar a versão entre aspas.
!pip install matplotlib==3.6.2
O pip
precisa atualizar a versão, então busca essa versão no PyPI, repositório de bibliotecas, e a instá-la na nossa máquina. Vamos rodar o código.
Ele está carregando, instalando as bibliotecas, atualizando, desinstalando a versão anterior e, por fim, a instalação é concluída. Provavelmente aparecerá um warning (aviso) de que precisamos restaurar a seção para que as modificações sejam aplicadas ao projeto.
WARNING: The following packages were previously imported in this runtime: [matplotlib, mlp_toolkits]
You must restart the runtime in order to use newsly installed versions.
(Em tradução livre: Os seguintes pacotes foram importados anteriormente neste tempo de execução [matplotlib, mlp_toolkits] Você deve reiniciar o tempo de execução para usar novas versões instaladas)
Podemos acessar "Ambiente de execução", no topo da página, e escolher a opção "Reiniciar ambiente de execução" ou apertar "Restart Runtime" que aparece logo após a resposta do código para restartar/reiniciar o ambiente de execução.
Rodando novamente o código, poderemos conferir que agora todas as requisições foram satisfeitas. A seguir, você pode acompanhar um trecho do retorno:
Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/
Requirement already satisfied: matplotlib==3.6.2 in /usr/local/lib/python3.9/dist-packages (3.6.2)
Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib==3.6.2) (1.4.4)
Requirement already satisfied: pyparsing>=2.2.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib==3.6.2) (3.0.9)
Após o retorno, no Colab, você encontra o acesso à PYPI, repositório de bibliotecas do Python.
Instalamos a biblioteca e ela já está na nossa máquina. O próximo passo é importar a biblioteca, isto é, trazê-la para nosso código Python.
Para importar a biblioteca, usaremos import
seguido do nome desta biblioteca, matplotlib
.
import matplotlib
Rodamos e apareceu um sinal de check em verde ao lado da célula, informando que a importação foi concluída. Na próxima célula, passaremos matplotlib.__version__
.
Dunder methods: métodos mágicos ou dunder methods são parâmetros com dois underlines seguidos:
__
. Basicamente, trazem alguns métodos extraordinários, que podem ser aplicados em vários tipos de módulos, classes e objetos e respondem a um tipo específcio de tarefa.É importante saber a versão de biblioteca estamos trabalhando, seja ela a matplotlib ou outra biblioteca, inclusive para conferir se precisamos atulizar ou não essa versão e entender os requisitos para trabalhar com o projeto.
Vamos rodar o código:
matplotlib.__version__
'3.6.2'
O retorno é "3.6.2", versão que escolhemos na instalação. Outra forma de importar um código, biblioteca ou pacote do Python é usando alias, um apelido. No seu dia a dia, provavelmente você não é chamado por seu nome inteiro. Assim como seu apelido, podemos dizer que o alias é uma forma carinhosa ou mais simples de se chamar uma biblioteca.
Nós trabalharemos com a biblioteca matplotlib.pyplot
, um submódulo no Matplotlib, ou seja, um módulo dentro do módulo, responsável por trabalhar também com a visualização de dados.
import matplotlib.pyplot as plt
Estamos importando a biblioteca matplotlib.pyplot
como (as) "plt". Ou seja, plt
será o apelido do matplotlib.pyplot
. Repetir matplotlib.pyplot
todas as vezes em que for necessário executar um código é bastante cansativo.
A função do plt
é reduzir a quantidade de caracteres que utilizaremos no nosso código. Agora, vamos passar plt.show()
, sendo que o ponto indica o que vamos pegar de dentro do plt
.
Nós temos uma biblioteca com várias funções, módulos, classes, objetos e precisamos escolher o que desejamos visualizar. Inclusive, ao passarmos o ponto, plt.
, visualizaremos várias opções.
Estamos utilizando .show()
, um objeto que serve para mostrar na tela apenas a imagem produzida. Porém, não produzimos nada. Ao rodarmos plt.show()
, não teremos um erro, mas nada será executado. Receberemos apenas uma confirmação de que o código foi executado de maneira correta: check em verde ao lado da célula.
plt.show()
Aprendemos a importar a biblioteca com e sem alias e também a instalá-la. No próximo vídeo, aprenderemos a utilizá-la!
Aprendemos a instalar e importar bibliotecas no nosso projeto. Chegou a hora de entender como utilizar os pacotes de bibliotecas e os métodos de variáveis que estão nelas.
Lembrando que é importante sempre consultar a Documentação do Python, estudar e entender seus métodos para utilizá-los da melhor forma no projeto!
No nosso primeiro exemplo, vamos testar a biblioteca Matplotlib, mais especificamente, a matplotlib.pyplot
para encontrar a média de estudantes de uma classe.
Nós criaremos um pequeno gráfico de barras mostrando as métricas desses estudantes. Vamos lá?!
Começaremos fazendo algo que aprendemos anteriormente: importando a biblioteca Matplotlib com alias.
import matplotlib.pyplot as plt
Rodamos e realizamos a importação da biblioteca. A seguir, temos duas listas. Uma de estudantes
e outra de notas
.
estudantes = ["João", "Maria", "José"]
notas = [8.5, 9, 6.5]
Para criar um gráfico a partir desses dados, utilizaremos um método dentro do plt
chamado bar()
. Vamos escrever: plt.bar()
. É como se disséssemos: do plt
quero bar()
.
Quando passamos o mouse nos parênteses de bar()
, visualizamos uma série de parâmetros que podem ser usados. Nós trabalharemos com dois: x
, que se refere ao eixo x e height
, a altura, que se refere ao eixo y.
Vamos passar o nome do parâmetro que utilizaremos e o valor que virá para ele:
Primeiro parâmetro: x = estudantes
. Para o parâmetro x
, estamos passando o valor estudantes
.
Segundo parâmetro: height = notas
. Para o parâmetro height
, estamos passando o valor das notas
.
O código ficará assim:
plt.bar(x = estudantes, height = notas)
Precisamos rodar a lista de estudantes e notas e o código plt.bar()
. O retorno é um gráfico de três barras, com "João", "Maria" e "José" na base e as barras apontando suas respectivas notas: João com 8,5; Maria com 9,0; e José com 6,5.
Interessante como, com um código simples, conseguimos construir um gráfico! Agora, vamos para o segundo exemplo. Nele, usaremos a biblioteca random.
A biblioteca random é responsável por gerar números e sequências aleatórias. Quando queremos trabalhar com aleatoriedades nos nossos dados, é bastante usual utilizar a random
.
No nosso exemplo, vamos selecionar aleatoriamente um(a) estudante para apresentar seu trabalho de ciências de dados, usando a biblioteca random
.
Se quiser conhecer um pouco mais sobre a random e todos os seus métodos, basta acessar a documentação da biblioteca random
Inicialmente, vamos apenas aumentar a nossa lista de estudantes:
estudantes_2 = ["João", "Maria", "José", "Ana"]
Não se esqueça de rodar o código!
Até aqui, aprendemos a:
importar uma biblioteca;
importar uma biblioteca com alias
Agora aprenderemos a importar uma função específica de uma biblioteca.
Para estruturar a nossa função, vamos considerar que: queremos, da random
, uma função que faça uma escolha (choice). Isto é, da random
quero choice
.
from nome_biblioteca import metodo
Agora vamos preencher:
o nome da biblioteca é random
.
e o método é choice
.
from random import choice
Com isso, selecionamos da biblioteca, a função choice
, que fará a escolha de um(a) estudante.
Para compreender o que uma função, método, classe ou objeto fazem, podemos recorrer a uma built-in function (função embutida) chamada help(). Ela traz uma ajuda de como utilizar determinado tipo de funcionamento.
Se quiser conhecer melhor a função
help()
, você pode acessar a documentação
Estamos trabalhando com a função choice
e vamos passar:
help(choice)
Help on method choice in module random:
choice(seq) method of random.Random instance Choose a random element from a non-empty sequence.
O retorno é uma pequena explicação sobre como utilizar a choice
:
Recebe uma sequência, choice(seq)
, que será aplicada ao método random.Random
.
Escolhe um elemento aleatório dentro da nossa sequência e ela não pode ser vazia.
Conseguirá trabalhar com qualquer tipo de iterável (item de dicionário, tupla ou lista) que componha uma sequência de dados.
Vamos passar a função choice()
para a variável estudante
. Nos parênteses de choice()
, passaremos estudantes_2
, que é a nossa lista de estudantes.
Em seguida, colocaremos a escolha aleatória do choice()
dentro da variável estudante
.
estudante = choice(estudantes_2)
estudante
'Maria'
Rodamos o código e a estudante escolhida aleatoriamente pelo choice()
foi a "Maria". Vamos testar de novo:
estudante = choice(estudantes_2)
estudante
'José'
Desta vez, o escolhido foi "José". Significa que o choice()
está escolhendo aleatoriamente o(a) estudante que apresentará o trabalho de ciência de dados.
Bem legal! Conseguimos importar:
Uma biblioteca.
Métodos específicos de uma biblioteca.
Uma biblioteca com um apelido já consagrado, o plt
.
Na próxima aula, vamos começar a aprender como criar uma sequência de instruções para determinados comportamentos que queremos reproduzir em determinada parte do código ou mais a frente. Vamos falar sobre funções! Até a próxima!
O curso Python para Data Science: trabalhando com funções, estruturas de dados e exceções possui 150 minutos de vídeos, em um total de 51 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.