Tag

python para análise de dados Archives - Análise Macro

Introdução ao pandas

By | Python

A biblioteca pandas pode ser considerada a mais importante dentro do mundo da análise de dados para o Python. É a ferramenta principal para construção de estrutura, manipulação e limpeza de dados, sendo também utilizada com bibliotecas de processamento numérico e construção de gráficos. No post de hoje, iremos realizar uma breve introdução a esta biblioteca.

O ponto chave do pandas está na estrutura de dados no qual a biblioteca permite criar e manipular, são elas: Series e DataFrame.

Series é um objeto array unidimensional (tal qual o array criado com o Numpy) possuindo um índice (rótulos das observações). O DataFrame é considerado como um conjunto de dados retangulares ou dados tabulares, no qual cada coluna tem um tipo de dado, representados por um índice de colunas e um índice para cada observação (linha).

Para importar a biblioteca, iremos utilizar a seguinte convenção:

import pandas as pd

Series

Como dito, o objeto Series é um array unidimensional associado a um rótulo de dados chamado índice (ou index). Podemos criar uma Series a partir do seguinte código.

series_obj = pd.Series([4, 5, 6, 3])
series_obj

Veja que para cada valor há um número representando a ordem das observações. É possível criar os valores dos índice.

series_obj2= pd.Series([4, 7, 8, -2], index = ['a', 'b', 'c', 'd'])
series_obj2

Assim como um array do Numpy, é possível realizar cálculos com o objeto séries, seja através de funções, multiplicação escalar ou mesmo filtragens. A ordem do índice não se altera. Veja também que pela filtragem é possível escolher através do rótulo da observação.

# Calcula a média da Series
series_obj2.mean()
# Multiplica a array por 2
series_obj2 * 2
# Seleciona o valor no qual o índice é representado por 'a'
series_obj2['a']

DataFrame

Como dissemos, o DataFrame representa uma tabela de dados retangulares contendo uma coleção de colunas, preenchidas de uma série de observações, sejam elas numéricas, strings, booleans, etc. Possui também dois índices, sendo uma para as observações e outra para as colunas. Podemos dizer que é uma coleção de lista, dicionários ou arrays unidimensionais.

Vamos construir um DataFrame a partir de um conjunto de dicionários.

data_raw = {'cursos' : ['machine learning', 'econometria', 'séries', 'visualização'],
        'carga_horaria' : [90, 60, 90, 40],
        'desconto' : [True, False, True, False]}

data = pd.DataFrame(data_raw)
data

É possível também, a partir do pandas, importar dados de outros lugares. O mais comum é importar arquivos .csv. Vemos um exemplo abaixo, importando um dataset de treino de um conjunto de dados sobre preços de casas na Califórnia contidos no Google Colab.

california_houses = pd.read_csv('/content/sample_data/california_housing_train.csv')

Quando recebemos esse conjunto de dados, o interessante é explorá-lo para obter uma noção de seu conteúdo. Podemos utilizar diversos métodos para isso.

# Retorna as primeiras linhas do DataFrame
california_houses.head()

# Exibe as informações sobre o DataFrame
california_houses.info()
# Sumariza as estatísticas
california_houses.describe()
Também é possível retirar os números dos índices e os nomes das colunas
# Retira as colunas
california_houses.columns

# Números dos índices
california_houses.index

Nesse post realizamos uma breve introdução aos pandas, há ainda uma série de outras possibilidades de manipulação e cálculos que podemos realizar, tais como filtragens mais avançadas dos DataFrames, agregação e junção com condições, além de aprender métodos para preparar um Dataframe para visualização e modelagem.

Como analogia, podemos dizer que a biblioteca pandas pode ser considerada como um canivete suíço, com uma variedade de ferramentas, ficando a cargo do usuário qual utilizar, podendo em muitas vezes ser vasto o tempo necessário de aprendizagem. Apesar disso, os cursos da Análise Macro facilitam este problema, com uma série de aulas teóricas e práticas com o Python, facilitando a vida de quem quer aprender mais sobre Análise de Dados.

Introdução ao NumPy

By | Python

O NumPy, abreviatura de Numerical Python, é a biblioteca básica mais importante para o uso da análise de dados com Python. Os recursos do uso desse pacote permitem ao usuário realizar operações matemáticas, manipulação de vetores e dados entre outras diversas funcionalidade. No post de hoje, mostremos os pontos básicos mais importante do NumPy.

Entre os principais recursos que pode se encontrar com NumPy, estão:

  • ndarray: um vetor multidimensional, que oferece operações aritméticas rápidas;
  • funções matemáticas para operações com vetores;
  • alinhamento e manipulação de dados.

ndarray

o objeto ndarray é uma classe de objeto no Python que permite a utilização de conjunto de dados como um vetor ou um conjunto de vetores, ou seja, permite realizar operações matemáticas e estatísticas, bem como também é possível manejar os dados de forma mais facilitada.

Um exemplo de calculo que podemos utilizar é multiplicar um número inteiro com um vetor de dados. Assim como na matemática, vemos que o valor escalar repete a operação em todos os valores do vetores (algo que não ocorre sem o NumPy sem definir uma operação de fluxo com for) , isto é chamado de vetorização.

import numpy as np
data = np.random.randn(2, 3)

data

# array([[-1.09422288, -0.40715412, 1.09270467],
#         [ 0.77296148, 0.48996521, -0.76444864]])

# data * 5

# array([[-5.47111441, -2.03577062, 5.46352336],
#       [ 3.86480742, 2.44982605, -3.82224319]])

data + data

# array([[-2.18844577, -0.81430825, 2.18540935],
#        [ 1.54592297, 0.97993042, -1.52889728]])

Outra questão, é que o ndarray é um vetor e necessita que os dados sejam homogêneos, ou seja, não se pode ter valores do tipo float64 junto com strings ou booleans.

data.dtype
# dtype('float64')

Para criar um array no NumPy é extremamente simples. Se utiliza array para criar um vetor a partir de uma lista.


arr1 =  np.array([1, 2, 3, 4, 5])
Para controlar o array, um modo simples de criar um vetor ordenado é utilizar arange. Para fatiar os valores, utiliza-se o colchete define o fatiamento conforme a coodernada do valor dentro do array.

np.arange(10)

arr1[1:3]

# array([2, 3])

Para criar arrays multidimensionais (como matrizes), o processo de criação segue igual a criação de um vetor, a diferença é que separamos o valores com colchetes.


arr3d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])
arr3d
# array([[ 1, 2, 3],
#       [ 4, 5, 6],
#       [ 7, 8, 9],
#       [10, 11, 12]])
arr3d * 2

# array([[ 2, 4, 6],
#        [ 8, 10, 12],
#        [14, 16, 18],
#        [20, 22, 24]]

Para realizar cálculos estatístico, o próprio NumPy oferece meios de realizar os cálculos.


# Média
arr1.mean()

# Soma
arr1.sum()

# Desvio Padrão
arr1.std()

# Mínimo
arr1.min

# Máximo
arr1.max

Neste post apresentamos os pontos básicos do NumPy, de forma que iniciantes possam compreender o intuito da biblioteca. As possiblidades que o NumPy oferece são diversas, de modo que seja possível realizar tantas outras tarefas. Caso se interesse em meios de realizar análise de dados de forma mais compreensiva, veja nossos Cursos aplicado de Python.

Estruturas de Dados no Python

By | Python

O ponto inicial de aprendizado do Python, principalmente para a análise de dados, configura-se em entender os tipos de dados e suas estruturas. Essa etapa se mostra fundamental na trilha para quem inicia nesse mundo, e quem decide pular essa etapa acaba obtendo dificuldades futuras. No post de hoje iremos apresentar os pontos fundamentais dos tipos e estrutura de dados do Python, focando para análise de dados.

Tipos de dados

Os tipos de dados são os tipos dos objetos atribuídos dentro do Python. Vamos elencar quatro importantes

  • String: usualmente caracteres, envoltos de aspas  - 'Analise', 'macro', 'python!';
  • Float: são números reais separados por decimal - 4.2, 3.5, 3.8;
  • Integer: são números reais inteiros - 8, -5, 1;
  • Boolean: são valores lógicos - True, False.

Vamos realizar um exercício e ver a forma que eles se inserem dentro do Python. Iremos atribuir objetos dados e ver quais os seus tipos com a função type().


analise = 'Análise Macro'

type(analise)

# str
first_float = 8.7

type(first_float)

# float
first_integer = 5

type(first_integer)

# int
first_boolean = True

type(first_boolean)

# bool

Estruturas de dados

Agora que vimos quais são os tipos de dados, devemos entender o que ocorre quando agrupamos eles em múltiplos valores juntos. Esse agrupamento de dados possui o nome de coleção (collection). O Python, por padrão, possui diversas coleção de tipos de objetos, também é possível trabalhar com outros (como vamos ver) importando módulos.

Começaremos com a coleção lista, que compreende-se em um conjunto de valores (homogêneos ou heterogêneos) , que pode ser juntados por meio de um colchete.


lista = [5, 3, 9, 0]

type(lista)

# list

lista_ = [5, 6, 9, 'analise', True]

NumPy - Arrays

NumPy é um módulo do Python para computação numérica. As arrays do NumPy podem ser definidas como uma coleção de dados do mesmo tipo em n dimensões.  Mostraremos primeiro uma array de uma dimensão.


import numpy

array = numpy.array([5, 4, 2, 9])

type(array)

# numpy.ndarray

Como vimos, a função array do NumPy transforma uma lista de valores em uma nova estrutura de dados.

Pandas - DataFrames

Data Frames são as mais conhecida estruturas de dados das linguagens de programação focadas em análise de dados. É possível utilizar no Python através do módulo Pandas (um dos mais conhecidos do Python). O nome desse módulo é uma abreviação de panel data of econometrics. O segredo do Pandas está em poder utilizar a estrutura de dados do numpy em conjunto de suas funções para realizar a montagem e manipulação de dados.

import pandas as pd

linha_1 = numpy.array(['Luiz', 80, False])

linha_2 = numpy.array(['João', 70, True])

linha_3 = numpy.array(['Lorenzo', 85, False])


data = pd.DataFrame(data = [linha_1, linha_2, linha_3], columns = ['nome', 'peso', 'doente'])

data

Aprenda mais!

Para conhecer mais sobre a linguagem Python, e descobrir como você pode realizar sua aplicação no mundo real, veja nossos cursos de Estatística usando R e Python, e R e Python para Economistas.

____________________

Oferta Especial!

No próximo dia 17, das 9h às 19h da manhã, você terá a chance de participar do pré-lançamento do treinamento Análise de Dados Macroeconômicos e Financeiros no R. Para concorrer a uma das vagas com desconto, acesse o link e conheça os detalhes.

____________________

 

Introdução ao Python: como preparar o ambiente de trabalho

By | Python

Introdução

Cada linguagem de programação tem o seu propósito, com sua criação sendo pensada exatamente em resolver algum problema em específico, como no caso do R, que foi desenvolvido por estatísticos visando facilitar o trabalho de análise estatística em geral, e consequentemente para a análise de dados. Mas, e o Python? No post de hoje, iremos explicar o propósito do Python, bem como ensinar a preparar seu ambiente, realizando a instalação da linguagem, da IDE Jupyter Notebook e também como utilizada através do Google.

O Python foi desenvolvido com o propósito de se obter uma linguagem com sintaxe simples, no qual fosse fácil de se aprender, e que tivesse legibilidade de código, priorizando o programador, ao invés de outras variáveis. Por consequente criou-se uma facilidade da linguagem em criação de códigos para aplicações diversas, sendo necessário poucas linhas para criar essas aplicações e também integra-la com outra aplicações. Com o fácil uso e aprendizagem por parte do usuário da linguagem, e com a possibilidade de seu uso em diversas aplicações, o Python se uniu ao que se conhece como linguagem de propósito geral, no qual não há um objetivo em específico para seu uso, sendo assim, sua capacidade de se integrar em diferente áreas permitiu que se tornasse em grande sucesso. E isso também se concentra na área de Análise de dados, no qual o Python se mostrou eficiente.

Como toda linguagem de programação, o Python necessita ser instalado nos computadores, e segue dois passos (apenas um obrigatório) para seu uso. Primeiro, deve-se instalar a linguagem em si, para que possa utilizar direto do Prompt de comando do computador. A segunda etapa, se configura na instalação de um Ambiente de Desenvolvimento Integrado (Integrated Development Environment - IDE), no qual permite o melhor uso da linguagem, entregando diversas funcionalidades e atalhos, além de possuir um ambiente mais  agradável e conciso para sua utilização. Existem diversos IDE's, cada usuário escolhe aquele que melhor satifaz seus gostos. Para o Python, existem diversos: Jupyter Notebook (que ensinaremos a instalar aqui); Pycharm; Spyder Notebook, entre diversos outros. Todos estes IDE's podem ser utilizados instalando o gerenciador Anaconda, que visa simplificar o uso de IDE's .

Para a utilização online do Python o Google Colab  simplifica ao máximo o uso do Python, sendo necessário apenas um conta do Google e uma rede. Explicaremos melhor adiante.

Instalando a linguagem Python

O primeiro passo para instalar a linguagem seguem acessar o site do Python, acessar a página de downloads (https://www.python.org/downloads/) e baixar o instalador de acordo com seu Sistema Operacional.

 

Após o download, execute o instalador. Um ponto importante: selecione a caixa "Add Python 3.10 to PATH", que evitará maiores problemas com seu OS. Em seguida, é recomendado instalar via Install Now, com a confirmação da instalação do programação como Administrador.

Após a instalação, certifique também de selecionar "Disable path length limit" para evitar maiores problemas.

Instalando o Jupyter Notebook

Feito todos estes passos, você possui o Python em sua máquina. Você pode utilizá-la direto do Prompt de Comando, que é como iremos  realizar a instalação do IDE Jupyter Notebook.

Para abrir o Prompt de Comando, você pode pesquisar através da pesquisa de seu OS e abri-lo. Outra forma é procurar por "executar" na barra de pesquisa do OS (Windows + R para o atalho) e escrever "cmd" e em seguida OK.

Com o Prompt aberto, digitaremos "pip install jupyter", que é um comando do Python para a instalação do Jupyter Notebook.

 

Após a instalação ser finalizada, você pode continuar utilizando o mesmo Prompt (na imagem realizei a limpeza do Prompt), e escrever "python -m notebook" e executar para abrir o Jupyter Notebook.

O Jupyter será aberto, e como página inicial mostrará os arquivos de sua máquina. Para utilizar a linguagem, clique em "New" -> "Python 3 (ipykernel)". Será aberto uma nova página contendo a página de utilização da linguagem com suas diversas funcionalidades.

Através desta página, é possível criar o código, salvá-lo e diversos formatos. Realizar uploads de arquivos já escritos.

Google Colab

O Google Colab é uma forma extremamente simples de utilizar a linguagem Python em conjunto com uma IDE. O ponto forte está na sua capacidade de fácil integração (Google Drive, Github, entre outros), além de não ser necessário ter instalado a linguagem na máquina.

Para acessar , basta ir no site https://colab.research.google.com/, ter uma conta Google e criar um novo notebook. É possível também realizar o upload de arquivos Python.

Ao criar um Novo notebook, será aberto uma nova página, que será a IDE de uso do Python, semelhante ao Jupyter Notebook, como mostra a imagem abaixo.

Feito isso, você pode se divertir criando os códigos. Aqui na Análise Macro ensinamos através de nossos curso a como utilizar o Python, criando códigos de Estatística Aplicada, Python para Econometria e também um Curso voltado totalmente para Economistas, no qual ensinamos a teoria e prática da análise de dados para Economia e Finanças.

Oferta Especial!

No próximo dia 10, das 9h às 19h da manhã, abriremos as inscrições do pacote R e Python para Análise de Dados com um condição super especial. Para concorrer a uma das vagas com desconto, acesse o link e conheça os detalhes.

 

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais
e conteúdos exclusivos sobre Análise de Dados!

Assinar Gratuitamente