Loading repository data…
Loading repository data…
leandroboteon / repository
Neste repositório, apresento um projeto de análise de dados e modelagem preditiva usando Python, pandas e scikit-learn. Utilizando dados de uma empresa fictícia, desenvolvi um modelo de regressão linear para estimar as vendas com base nos investimentos em plataformas de publicidade online.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Neste projeto, utilizando dados de uma empresa fictícia, nosso objetivo é desenvolver um modelo de regressão para estimar as vendas com base nos investimentos realizados em plataformas de publicidade online, como YouTube, Facebook e jornais.
Após o tratamento dos outliers, analisaremos de forma mais precisa a relação entre os investimentos em marketing e as vendas geradas. Isso resultará na criação de um modelo preditivo refinado, que oferecerá insights estratégicos para otimizar o retorno sobre o investimento.
Para acessar o projeto no Colab, clique aqui.
pythonpandasnumpymatplotlibseabornscikit-learnstatsmodelsO projeto está dividido nas seguintes etapas:
statsmodelsUtilizamos a base de dados "MKT.csv", que contém informações sobre investimentos em marketing e vendas. As colunas do dataset são:
Exploramos os dados do dataset "MKT.csv" para compreender melhor as variáveis e identificar problemas. Utilizamos a biblioteca Pandas para importar e manipular os dados, realizando cálculos estatísticos e visualizações para entender a distribuição dos dados.
Exploramos mais a fundo os dados, identificando relações entre as variáveis e descobrindo padrões relevantes. Utilizamos técnicas de visualização de dados e análises estatísticas para buscar possíveis correlações e identificar outliers.
Inicialmente, utilizamos gráficos boxplot para identificar visualmente a presença de outliers na coluna 'newspaper'. Observamos também o histograma desta feature e constatamos que os dados não seguem uma distribuição normal. Portanto, optamos pelo método do intervalo interquartil (IQR) para identificar e tratar os outliers devido à sua robustez contra distribuições não normais.
Após calcularmos os limites inferior e superior com base no IQR, filtramos o dataframe para excluir os dados que se encontravam fora desses limites. Como resultado do tratamento, removemos os outliers identificados.
Nesta etapa, aplicamos o MinMaxScaler para normalizar os dados, garantindo que todas as variáveis estejam na mesma escala e, assim, melhorar o desempenho dos modelos preditivos.
statsmodelsUtilizamos a biblioteca statsmodels para realizar uma análise estatística detalhada. Esta etapa nos permitiu compreender melhor as relações entre os investimentos em marketing e as vendas, avaliando a significância das variáveis independentes no modelo de regressão.
Decidimos remover a variável newspaper, pois seu p-value está maior que 5%, indicando que não é estatisticamente significativa.
Inicialmente os dados são divididos em conjuntos de treinamento e teste, com 70% dos dados reservados para treinamento e 30% para teste, utilizando a função train_test_split do scikit-learn. Em seguida, é importada a biblioteca necessária para realizar uma regressão linear utilizando LinearRegression do sklearn.linear_model.
Avaliação do desempenho do modelo de regressão linear utilizando as seguintes métricas:
Analisamos os seguintes aspectos:
Neste projeto, desenvolvemos um modelo de regressão linear para prever o valor de vendas com base em investimentos em marketing.
📈 Identificamos uma forte correlação entre a variável youtube e as vendas (sales), indicando que os investimentos nesta plataforma têm um impacto positivo nas vendas.
🧪 A análise com statsmodels revelou que a variável newspaper não é estatisticamente significativa, com um p-value superior a 5%. Portanto, a removemos do modelo. As variáveis youtube e facebook mostraram-se mais relevantes para o aumento das vendas.
📊 As métricas de desempenho do modelo foram:
Esses resultados demonstram um bom ajuste do modelo aos dados.
🔍 Observando o gráfico de valores, notamos que o modelo prevê com boa precisão. O gráfico de dispersão entre valores reais e preditos mostra que os pontos estão próximos da linha ideal, e o histograma dos resíduos indica uma distribuição normal.