INTRODUÇÃO AO PYTHON PARA
CIÊNCIA DE DADOS
Prof. Dr. Anderson Ara Prof. Dr. José Jairo de S. e Silva
Slide 06
FUNÇÕES EM PYTHON
2 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Funções
O que são?
Funções são blocos de código que realizam uma tarefa específica.
Elas permitem isolar a solução de um problema para ser reutilizada em outras partes do
programa, sem precisar repetir as mesmas linhas.
Vantagens
Reutilização de código: Evita duplicação e facilita a manutenção.
Organização: Torna o código mais legível e estruturado.
Modularidade: Permite dividir o programa em partes menores e mais gerenciáveis.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 3 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Tipos de funções
Funções embutidas (built-in): Já vêm com o Python, como range(),round(),map(),filter(),
zip(), enumerate(), etc.
Funções definidas pelo usuário: Criadas pelo programador usando a palavra-chave def.
A seguir apresentaremos algumas das funções built-in mencionadas acima.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 4 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Função round()
A função round() arredonda números para o inteiro mais próximo ou para o número de casas
decimais desejado.
Sintaxe:
round(numero, ndigits)
print(round(3.7))
## 4
print(round(3.14159, 2))
## 3.14
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 5 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Função map()
Em algumas situações, podemos estar interessados em aplicar uma determinada função em
um objeto iterável (como uma lista ou tupla) e obter um novo objeto iterável com os resultados.
A função map() é usada para aplicar uma função a cada item de um iterável (como uma lista ou
tupla) e retornar um novo iterável com os resultados.
Exemplo:
x = [1,-1,2,-2,3,-3]
y = list(map(abs, x)) # Aplica a função abs() a cada elemento de x
print(y)
## [1, 1, 2, 2, 3, 3]
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 6 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
No exemplo anterior, aplicamos a função abs() (valor absoluto) a cada elemento da lista x,
resultando em uma nova lista y com os valores absolutos.
Essa é a sintaxe esperada: map(função, objeto iterável). Com isso, podemos aplicar
qualquer função que desejarmos a cada elemento do iterável.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 7 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Função filter()
Seguindo a mesma loógica de aplicar uma função a um objeto iterável, podemos estar
interessados em filtrar os elementos de um iterável com base em uma condição específica.
Exemplo:
lista = ["1","2","3","João","Maria","Paula"]
x = list(filter([Link], lista)) # Filtra apenas os elementos que são dígitos
print(x)
## ['1', '2', '3']
y = list(map(int, x)) # Converte os elementos filtrados para inteiros
print(y)
## [1, 2, 3]
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 8 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Neste exemplo, primeiramente utilizamos a função filter() com a função [Link] para
filtrar apenas os elementos da lista que são dígitos. O resultado é uma nova lista x contendo
apenas os elementos que passaram no filtro.
Após isso, utilizamos, então, a função map() para converter os elementos filtrados para inteiros,
resultando na lista y.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 9 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Função zip()
A função zip() é ligeiramente diferente das demais que vimos até agora, mas também retorna
um iterável. Ela é usada para combinar elementos de múltiplos iteráveis (como listas ou tuplas)
em pares ou tuplas.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 10 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Exemplo:
x = [1,2,3]
y = [4,5,6]
z = [7,8,9,10]
result1 = list(zip(x,y))
result2 = list(zip(x,z))
result3 = list(zip(x,y,z))
print(result1)
## [(1, 4), (2, 5), (3, 6)]
print(result2)
## [(1, 7), (2, 8), (3, 9)]
print(result3)
## [(1, 4, 7), (2, 5, 8), (3, 6, 9)]
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 11 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
No primeiro resultado, foram combinados exatamente os pares de valores de x e y da seguinte
forma: o primeiro elemento de x com o primeiro de y, o segundo de x com o segundo de y e
assim por diante.
Perceba, no entanto, o que acontece com objetos de tamanhos diferentes: a combinação ocorre
até onde é possível. Quando não é mais possível combinar, os elementos restantes ficam de fora
do resultado.
A função zip() é especialmente útil quando precisamos agrupar dados relacionados de
diferentes fontes ou listas, facilitando a manipulação e análise desses dados em conjunto.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 12 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Função enumerate()
Em algumas situações, podemos estar interessados em acessar o índice de um objeto iterável
(como uma lista ou tupla) enquanto iteramos sobre seus elementos. A função enumerate() é
usada para adicionar um contador automático a um iterável, retornando pares de índice e valor.
Exemplo:
lista = [ " Primeiro " , " Segundo " , " Terceiro " ]
lista_com_indice = list(enumerate(lista))
print(lista_com_indice)
## [(0, ' Primeiro '), (1, ' Segundo '), (2, ' Terceiro ')]
Neste exemplo, a função enumerate() é aplicada à lista lista, resultando em uma nova lista
lista_com_indice que contém tuplas com o índice e o valor correspondente de cada
elemento da lista original.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 13 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
A função enumerate() é especialmente útil quando precisamos iterar sobre uma lista e
também precisamos do índice de cada elemento, facilitando a manipulação e análise dos
dados.
Exemplo:
notas = [6.5, 7.0, 8.2, 5.9, 9.1, 6.8]
# Aplica bônus de 1 pontos nas notas de posições ímpares
for i, nota in enumerate(notas):
if i % 2 != 0: # Verifica se o índice é ímpar
notas[i] = min(nota + 1, 10.0) # Adiciona 1 ponto à nota, mas não ultrapassa 10.0
print(notas)
## [6.5, 8.0, 8.2, 6.9, 9.1, 7.8]
Neste exemplo, utilizamos a função enumerate() para iterar sobre a lista notas, obtendo tanto
o índice (i) quanto o valor da nota (nota). Em seguida, verificamos se o índice é ímpar e, se for,
adicionamos 1 ponto à nota correspondente, garantindo que a nota não ultrapasse 10.0 usando
a função min().
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 14 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Manipulação de Arquivos: Conceitos Fundamentais
Um arquivo é uma área em disco para armazenar dados de forma permanente, gerenciada
pelo sistema operacional. Permite a entrada e saída de dados em programas.
O Ciclo de Vida de um Arquivo: O trabalho com arquivos sempre segue três etapas:
1. Abertura: Conecta o programa ao arquivo no disco.
2. Leitura e/ou Escrita: As operações desejadas são realizadas.
3. Fechamento: Libera os recursos do computador e garante que os dados foram gravados.
Função open(nome, modo): É usada para abrir um arquivo em Python
nome: O nome do arquivo (ex: "[Link]")
modo: Uma string que define a operação. Principais modos:
'r': Leitura (read).
'w': Escrita (write). Apaga o conteúdo anterior se o arquivo já existir.
'a': Escrita (append). Adiciona novos dados ao final do arquivo, preservando o conteúdo
existente.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 15 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Exemplo: Escrita e Leitura
Escrevendo em um arquivo (modo='w')
O método .write() grava uma string no arquivo. É preciso adicionar \n para criar novas
linhas.
# Abre o arquivo para escrita. Se não existir, será criado.
arquivo_escrita = open("[Link]", "w")
for linha in range(1, 6): # Escreve os números de 1 a 5
arquivo_escrita.write(f"{linha}\n")
arquivo_escrita.close() # Fecha o arquivo para salvar as alterações
print("Arquivo '[Link]' criado com sucesso.")
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 16 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Lendo de um arquivo (modo='r')
O método .readlines() lê todas as linhas do arquivo e retorna uma lista.
# Abre o mesmo arquivo, agora para leitura
arquivo_leitura = open("[Link]", "r")
print("\nConteúdo do arquivo:")
for linha in arquivo_leitura.readlines():
print([Link]()) # .strip() remove quebras de linha invisíveis
arquivo_leitura.close()
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 17 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Adicicionando mais dados (modo='a')
# Abre o arquivo para adicionar mais números
arquivo_append = open("[Link]", "a")
for linha in range(6, 11): # Adiciona os números de 6 a 10
arquivo_append.write(f"{linha}\n")
arquivo_append.close()
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 18 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Criando sua própria função
Em muitas situações, pode ser que não exista uma função nativa ou em algum pacote para
realizar o que desejamos. Nesses casos, podemos criar nossas próprias funções.
Para fazer isso, utiliza-se a palavra-chave def, seguida do nome da função, parênteses (que
podem conter parâmetros) e dois pontos.
O corpo da função é indentado abaixo da definição.
A função pode retornar um valor usando a palavra return.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 19 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Exemplo:
def numero_par(numero):
return numero % 2 == 0 # Retorna True se o número for par, caso contrário False
numeros = [1, 2, 3, 4, 5, 6]
for i in numeros:
if numero_par(i):
print(f"{i} é par")
else:
print(f"{i} é ímpar")
## 1 é ímpar
## 2 é par
## 3 é ímpar
## 4 é par
## 5 é ímpar
## 6 é par
Perceba que o resultado dessa função é simplesmente um booleano (True ou False), indicando
se o número é par ou não.
A função numero_par é então chamada dentro de um loop que itera sobre uma lista de
números, imprimindo se cada número é par ou ímpar com base no resultado da função.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 20 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Exemplo 2: Aqui definiremos uma função que recebe três parâmetros, sendo dois deles
opcionais (com valores padrão). A função realiza uma operação matemática simples e retorna o
resultado.
def funcao_exemplo(a, b=2, c=3):
return a + b * c
resultado1 = funcao_exemplo(4)
resultado2 = funcao_exemplo(4, 5)
resultado3 = funcao_exemplo(4, 5, 6)
print(resultado1)
## 10
print(resultado2)
## 19
print(resultado3)
## 34
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 21 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Exemplo 3: Aqui vamos definir uma função que recebe uma lista com dados e retorna o valor
máximo, mínimo e a média dos valores na lista.
def estatisticas(lista):
maximo = max(lista)
minimo = min(lista)
media = sum(lista) / len(lista)
return maximo, minimo, media
dados = [10, 20, 30, 40, 50]
# Chamando a função e armazenando os resultados nos objetos
maximo_dados, minimo_dados, media_dados = estatisticas(dados)
print(f"Máximo: {maximo_dados}, Mínimo: {minimo_dados}, Média: {media_dados}")
## Máximo: 50, Mínimo: 10, Média: 30.0
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 22 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Expressões lambda
Expressões lambda são uma forma concisa de criar funções anônimas (sem nome) em Python.
Elas são úteis quando você precisa de uma função simples para uma tarefa específica e não
deseja definir uma função completa usando def. Exemplo
numeros = [1, 2, 3, 4, 5]
dobrados = list(map(lambda x: x * 2, numeros))
print(dobrados)
## [2, 4, 6, 8, 10]
impares = list(filter(lambda x: x % 2 != 0, numeros))
print(impares)
## [1, 3, 5]
No exemplo acima, usamos expressões lambda para criar funções anônimas que são passadas para
as funções map() e filter().
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 23 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Método
Método é uma função que está associada a um objeto e é chamada usando a notação de ponto
(objeto.método()). Exemplo:
x = 'Python'
y = [1,-2,-3,-4,5]
# Função:
print(x)
## Python
max(y)
## 5
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 24 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Método
#Método:
[Link]()
## 'PYTHON'
[Link](99)
print(y)
## [1, -2, -3, -4, 5, 99]
Métodos são amplamente utilizados em programação orientada a objetos para encapsular
comportamentos específicos de um objeto.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 25 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Funções vs Métodos
Funções são blocos de código independentes que realizam uma tarefa específica e podem ser
chamadas diretamente pelo nome.
Métodos são funções associadas a objetos e são chamados usando a notação de ponto
(objeto.método()), podendo acessar os atributos do objeto.
Característica funcao(objeto) (Função) [Link]() (Método)
A quem É independente, não pertence a um Pertence a um objeto; é definido na
pertence? objeto. classe do objeto.
Como é O objeto é passado como argumento: É chamado a partir do objeto:
chamada? len(minha_lista) minha_lista.append(10)
Uma ferramenta geral que opera Um comportamento que o próprio
Principal Ideia
sobre dados. objeto executa.
Mais ligado à programação É a base da Programação Orientada a
Paradigma
procedural. Objetos (POO).
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 26 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
De forma geral, as funções são fundamentais na programação, pois promovem a reutilização de
código, melhoram a organização e facilitam a manutenção dos programas.
Ao criar suas próprias funções, você pode encapsular lógica específica, tornando seu código
mais eficiente e fácil de entender.
Desafio: utilizando os conhecimentos adquiridos até aqui, crie uma função que receba
um número inteiro positivo e calcule o fatorial desse número.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 27 / 39
PACOTES EM PYTHON
28 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Trabalhando com Pacotes
Pacotes são coleções de módulos que fornecem funcionalidades adicionais para o Python. Eles
são usados para organizar e reutilizar código, facilitando o desenvolvimento de aplicações
complexas.
A importação de pacotes é feita usando a palavra-chave import, seguida do nome do pacote ou
módulo que você deseja usar.
Podem ser importadas funções, classes ou variáveis específicas de um módulo usando a sintaxe
from módulo import item.
Há também a possibilidade de importar um módulo com um apelido usando a palavra-chave
as, o que pode ser útil para evitar conflitos de nomes ou para simplificar o código.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 29 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Trabalhando com Pacotes
Pacotes Nativos (Standard Library)
Conjunto de módulos que já vêm junto com a instalação do Python. Fazem parte do núcleo da
linguagem e são essenciais para tarefas comuns.
Criados e mantidos pelos desenvolvedores do Python.
Garantem funções básicas para programação sem depender de pacotes externos.
Portabilidade: qualquer instalação de Python terá esses módulos.
Essenciais: cobrem áreas comuns como:
Matemática (math, statistics, random);
Sistema operacional (os, sys, pathlib);
Data e hora (datetime, time);
Arquivos e compressão (csv, json, zipfile);
Internet e rede (http, urllib);
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 30 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Trabalhando com Pacotes
Pacote math e Arredondamento em Python
Oferece funções matemáticas avançadas: trigonometria, logaritmos, exponenciais,
arredondamento etc.
Arredondamento com math
[Link](x): arredonda para baixo (menor inteiro).
[Link](x): arredonda para cima (maior inteiro).
[Link](x): remove a parte decimal (truncamento).
import math
print([Link](3.7))
print([Link](3.2))
print([Link](-3.9))
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 31 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Trabalhando com Pacotes
Pacote statistics
Fornece funções estatísticas para análise de dados numéricos e é ideal para cálculos rápidos sem
precisar de bibliotecas externas.
Principais Funções
[Link](lista) → média aritmética.
[Link](lista) → mediana.
[Link](lista) → moda (valor mais frequente).
[Link](lista) → desvio padrão amostral.
[Link](lista) → variância amostral.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 32 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Exemplo:
import statistics as st
dados = [2, 4, 4, 4, 5, 7, 9]
[Link](dados)
## 5
[Link](dados)
## 4
[Link](dados)
## 4
[Link](dados)
## 2.309401076758503
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 33 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Trabalhando com Pacotes
Pacote random
Uma biblioteca que fornece funções para gerar números aleatórios e realizar seleções aleatórias
de elementos.
Ele é amplamente utilizado em simulações, amostragem estatística e outras aplicações que
requerem aleatoriedade.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 34 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Exemplo: Geração de números pseudo-aleatórios
import random
# Gerar um número aleatório entre 1 e 10
[Link](19) # Define a semente para reprodutibilidade
numero_aleatorio = [Link](1, 10)
print(f"Número aleatório entre 1 e 10: {numero_aleatorio}")
## Número aleatório entre 1 e 10: 1
# Gerar um número aleatório entre 0 e 1
[Link](42) # Define a semente para reprodutibilidade
numero_aleatorio_float = [Link]()
print(f"Número aleatório entre 0 e 1: {numero_aleatorio_float}")
## Número aleatório entre 0 e 1: 0.6394267984578837
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 35 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Exemplo: Embaralhamento de uma lista
# Selecionar um elemento aleatório de uma lista
import random
[Link](7) # Define a semente para reprodutibilidade
elemento_aleatorio1 = [Link](['maçã', 'banana', 'laranja','mamao','abacaxi'])
elemento_aleatorio2 = [Link](['maçã', 'banana', 'laranja','mamao','abacaxi'])
print(f"Elementos aleatórios selecionados: {elemento_aleatorio1,elemento_aleatorio2}")
## Elementos aleatórios selecionados: ('laranja', 'banana')
Note que definimos uma semente (seed) para garantir que os resultados sejam reprodutíveis.
Alterar a semente resultará em uma sequência diferente de números aleatórios.
Nos exemplos vistos, mude a semente (seed) e veja como o resultado muda.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 36 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Trabalhando com pacotes externos
O que devemos saber, basicamente sobre pacotes externos, antes de utilizá-los?
Instalação: A maioria dos pacotes não vem pré-instalada com o Python. Eles podem ser
instalados usando gerenciadores de pacotes como pip ou conda.
Exemplo: pip install nome_do_pacote
Como estamos usando a IDE Rstudio, podemos instalar pacotes Python diretamente do
terminal do RStudio ou usando a função
reticulate::py_install("nome_do_pacote") dentro de um script R.
Depois de instalar os pacotes, você pode importá-los em seu código Python usando a
palavra-chave import.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 37 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Documentação: É importante ler a documentação do pacote para entender suas
funcionalidades, como usá-lo e quais dependências ele pode ter.
A documentação geralmente está disponível no site oficial do pacote ou em repositórios
como o PyPI (Python Package Index).
No Rstudio, você pode usar a função reticulate::py_help("nome_do_pacote") para
acessar a documentação do pacote instalado.
Atualização: Pacotes são frequentemente atualizados para corrigir bugs ou adicionar novas
funcionalidades. Mantenha seus pacotes atualizados para aproveitar essas melhorias.
Ou no Rstudio: reticulate::py_install("nome_do_pacote", pip = TRUE, upgrade =
TRUE)
Compatibilidade: Verifique a compatibilidade do pacote com a versão do Python que você está
usando, bem como com outros pacotes que você possa ter instalado.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 38 / 39
INTRODUÇÃO AO PYTHON PARA CIÊNCIA DE DADOS
Pacotes externos úteis e populares para Ciência de Dados em
Python
NumPy: Biblioteca fundamental para computação científica, oferecendo suporte a arrays
multidimensionais e funções matemáticas avançadas.
Pandas: Biblioteca para manipulação e análise de dados, fornecendo estruturas de dados como
DataFrames.
Matplotlib: Biblioteca para criação de visualizações estáticas, animadas e interativas em Python.
Seaborn: Biblioteca baseada no Matplotlib, especializada em visualizações estatísticas.
statsmodels: Biblioteca para modelagem estatística, incluindo regressão linear, análise de séries
temporais e testes estatísticos.
Scikit-learn: Biblioteca para aprendizado de máquina, oferecendo ferramentas para
classificação, regressão e clusterização.
Prof. Dr. Anderson Ara - DEST/LEG/UFPR - ara@[Link] & Prof. Dr. José Jairo de S. e Silva - [Link]@[Link] 39 / 39