Bruno-Regis / Python_NumPy

Curso de Numpy da Alura, projeto e desafios resolvidos.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Curso de Numpy - Alura

Tecnologias

1. Introdução

O curso de NumPy da Alura foi palco de estudo para efetivação do presente projeto.
NumPy é uma biblioteca popular em Python para computação numérica. Ela fornece suporte para arrays multidimensionais e funções matemáticas para trabalhar com esses arrays. NumPy é uma base essencial para muitas outras bibliotecas científicas e de dados em Python devido à sua eficiência e facilidade de uso.
Para efetivar o estudo, foram utilizados dois datasets do Kaggle, um chamado apples_ts.csv que fornece dados de preços de maçâs para cidades da Rússia, e outro dataset que foi utilizado no desafio do curso chamado citrus.csv que fornece informações de duas frutas, contendo dados como peso, diâmetro e espectrometria que no caso não foi estudada neste trabalho.

2. Objetivos

  • Desvendar diversas funções da íncrivel biblioteca NumPy;
  • Visualizar dados fornecidos pela Alura, disponíveis no Kaggle;
  • Efetuar método estatístico para obter uma reta ajustada que represente os dados do dataset;
  • Gerar milhares de dados aleatórios com a biblioteca NumPy a fim de encontrar os melhores resultados.

3. Métodos

3.1 Imports

As bibliotecas importadas foram:

  • Numpy.
  • Matplotlib.

3.2 Carregamento e processamento dos dados

Primeiramente, foram carregados os dados dos arquivos csv por meio da função loadtxt da numpy para efetuar as primeiras análises e tratamento dos dados.

3.3 Visualização dos dados

Os dados foram plotados utilizando a biblioteca matplotlib e as primeiras impressões do comportamento foram feitas. Criei um loop inteligente com for capaz de detectar e me indicar valores do tipo NaN (not a number), embora o curso não tenha aprofundado tanto nesta questão de tratamento e limpeza de dados, por ser mais focado na utilização da NumPy, foi possível de tratar os valores Nans e inserir a média dos valores vizinhos no seu index.

4. Regressão linear

A regressão linear é um método estatístico utilizado para modelar a relação entre uma variável dependente entre uma ou mais variáveis independentes. Isto é, o método tem como objetivo encontrar uma reta ajustada que melhor se encaixe aos dados observados. A equação da reta é representada por:

image

4.1 Cálculo do Coeficiente Angular da Reta (a):

image

4.2 Cálculo do Coeficiente Linear da Reta (b):

image

4.3 Números aleatórios

Outra forma de obter os valores dos coeficientes se dá pela geração de números aleatórios. Em resumo, gerei um array de n números hipotéticos para possíveis valores de coeficientes angulares e apliquei a função para encontrar a norma de cada um deles, então, para o melhor resultado assumo que este será meu coeficiente angular.

4.Conclusão

Na primeira parte do estudo, foi feita uma montagem bastante aprofundada para cada uma das cidades, no entanto, não foram plotadas e geradas todas as possíveis retas em função dos mais diversos períodos, com seus respectivos ajustes e coeficientes, até por que, seriam possíveis infinitas alternativas, no entanto, ficou bastante pronto para que qualquer análise requerida para avaliar os preços sejam promovidas. Desta forma, a análise dos preços se deu de uma forma exploratória, abordando a cidade de Moscow, em todos os períodos existentes no data set.
Os valores do dataset do desafio plotados formaram um gráfico de linha muito semelhante a uma reta, isso se deve ao fato de que o comportamento das variáveis serem semi-lineares, isto é, a medida que aumenta o diâmetro, aumenta o peso, com isso, a reta obtida foi bastante fiél com os dados.
Por fim, gostaria de externar que o aprendizado foi de extrema qualiadade, já havia utilizado as bibliotecas do presente projeto em outros projetos acadêmicos, no entanto, consolidei ainda mais o conhecimento já existente e aprofundei muito mais em funções que não conhecia, o desenvolvimento do racicíonio para gerar o loop que encontra os valores Nans foi motivo de muito orgulho. Além do mais, pratiquei muito a escrita utilizando LateX que com certeza aprimorou muito a qualidade de leitura e compreendimento do projeto.

About

Curso de Numpy da Alura, projeto e desafios resolvidos.


Languages

Language:Jupyter Notebook 100.0%