Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/diegoribeiro2/estruturacao_de_dados_para_analise_rfm_em_e-commerce
Empresa do ramo de e-commerce que precisa levantar os indicadores de Recência, Frequência e Ticket Médio (RFM) de seus clientes. O processo resultou em um dataset estruturado e pronto para a análise, permitindo à empresa entender melhor o comportamento de seus clientes e direcionar suas estratégias de marketing.
https://github.com/diegoribeiro2/estruturacao_de_dados_para_analise_rfm_em_e-commerce
jupyter-notebook python
Last synced: 10 days ago
JSON representation
Empresa do ramo de e-commerce que precisa levantar os indicadores de Recência, Frequência e Ticket Médio (RFM) de seus clientes. O processo resultou em um dataset estruturado e pronto para a análise, permitindo à empresa entender melhor o comportamento de seus clientes e direcionar suas estratégias de marketing.
- Host: GitHub
- URL: https://github.com/diegoribeiro2/estruturacao_de_dados_para_analise_rfm_em_e-commerce
- Owner: diegoribeiro2
- Created: 2024-10-17T14:02:35.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-10-17T14:04:31.000Z (about 1 month ago)
- Last Synced: 2024-11-09T11:08:09.884Z (10 days ago)
- Topics: jupyter-notebook, python
- Language: Jupyter Notebook
- Homepage:
- Size: 272 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Estudo de Caso: Estruturação de Dados para Análise RFM em E-commerce
## Introdução
Neste projeto, simulamos a situação onde uma empresa do ramo de e-commerce para levantar os indicadores de Recência, Frequência e Ticket Médio (RFM) de seus clientes. A metodologia RFM é uma técnica amplamente utilizada para segmentar clientes e analisar seu comportamento de compra:
- **R (Recency)**: Tempo desde a última compra do cliente (em dias).
- **F (Frequency)**: Quantidade de compras realizadas pelo cliente.
- **M (Monetary)**: Valor do ticket médio gasto pelo cliente, calculado como a média do total gasto por pedido.## Dados Utilizados
Recebi um arquivo CSV contendo informações de compras de um e-commerce em 37 países. As colunas do dataset incluem:
- **CustomerID**: Código de identificação do cliente
- **Description**: Descrição do produto
- **InvoiceNo**: Código da fatura
- **StockCode**: Código de estoque do produto
- **Quantity**: Quantidade do produto
- **InvoiceDate**: Data do faturamento (compra)
- **UnitPrice**: Preço unitário do produto
- **Country**: País da compra## Etapas de Desenvolvimento
### Etapa 01: Leitura e Inspeção dos Dados
Iniciei o projeto lendo o arquivo CSV e inspecionando os dados com a biblioteca Pandas. Utilize o método `describe` para entender a distribuição das variáveis e verificar os tipos de dados presentes no conjunto.
### Etapa 02: Tratamento de Valores Faltantes
Verifiquei se havia valores nulos na identificação do cliente utilizando `isna` e somando os nulos. Removi essas observações para garantir a integridade dos dados.
### Etapa 03: Filtragem de Preços e Quantidades
Realizei filtros para remover entradas com preços unitários ou quantidades iguais ou inferiores a zero. Esse passo foi crucial para eliminar dados inconsistentes que poderiam impactar as análises.
### Etapa 04: Remoção de Duplicatas
Utilizei a função `duplicated` para verificar e remover linhas duplicadas, uma vez que não faz sentido ter a mesma compra registrada mais de uma vez.
### Etapa 05: Correção dos Tipos de Dados
Corrigi os tipos de dados nas colunas relevantes, como `CustomerID` e `InvoiceDate`, para garantir que fossem apropriados para análise.
### Etapa 06: Tratamento de Outliers
Identifiquei e removi outliers extremos, considerando valores com quantidade superior a 10.000 ou preços unitários maiores que 5.000 como erros.
### Etapa 07: Cálculo do Preço Total
Criei uma nova coluna com o preço total da compra, multiplicando as colunas `Quantity` e `UnitPrice`.
### Etapa 08: Cálculo da Última Data de Compra
Utilizei a função `max()` para calcular a data da última compra registrada no dataset, que serviu como referência para o cálculo da recência.
### Etapa 09: Visualizações
Desenvolvi gráficos para analisar:
- Os 10 países com maior valor em vendas
- Os 10 produtos mais vendidos
- O valor de venda total por mês e por país (considerando apenas os 10 principais)### Etapa 10: Cálculo do RFM
Por fim, agrupei os dados por cliente e fatura para obter a data e o preço total do pedido. Calculei o RFM da seguinte forma:
- **R**: Diferença em dias entre a última compra do cliente e a última compra no conjunto de dados.
- **F**: Quantidade total de compras feitas pelo cliente.
- **M**: Média das compras realizadas pelo cliente.Esse processo resultou em um dataset estruturado e pronto para a análise, permitindo à empresa entender melhor o comportamento de seus clientes e direcionar suas estratégias de marketing.