Este conjunto de dados, parte do projeto final do curso de Análise de Dados ministrado por Toti, oferece uma visão aprofundada do comportamento e padrões de compra dos consumidores. É essencial para as empresas adaptarem produtos, estratégias de marketing e melhorarem a experiência do cliente. Com 3900 registros, abrange informações-chave como idade, gênero, histórico de compras, métodos de pagamento preferidos, frequência de compras e mais. Ideal para iniciantes em Análise de Dados, este conjunto sintético fornece uma base sólida para a tomada de decisões baseada em dados e estratégias centradas no cliente.
Certifique-se de ter o Python >= 3.9 e todas as dependências instaladas antes de executar os scripts. Você pode instalá-las usando:
pip install -r requirements.txt
O script principal main.py
coordena várias tarefas essenciais para o projeto. Abaixo estão detalhados os passos do processo:
- Limpeza de Dados: Execute o script
clean_data.py
para limpar os dados do CSV original. - Criação do Banco de Dados: Utilize o script
criar_db.py
para criar o banco de dados (moda_estilos.db
). - Inserção de Dados: O script
csv_to_db.py
executa a inserção de dados do CSV no banco de dados.
Para executar o script principal, utilize o seguinte comando:
python main.py
O script clean_data.py
realiza várias operações para limpar e enriquecer o conjunto de dados original:
- Ler o CSV Original: Utiliza o
pandas
para ler o arquivo CSV original (shopping_trends_updated.csv
) e carregar os dados em um DataFrame. - Criar a Coluna 'Localização': Adiciona uma nova coluna chamada 'Localização', atribuindo cidades brasileiras aleatórias a cada linha.
- Adição das Colunas 'Item Comprado' e 'Categoria': Gera aleatoriamente produtos para a coluna 'Item Comprado' e atribui categorias a esses produtos.
- Mapeamento de Categorias: Define um mapeamento de categorias para atribuir categorias aos itens comprados.
- Função para Atribuir Categorias: Define uma função que atribui categorias conforme o mapeamento definido.
- Aplicação da Função para Atribuir Categorias: Aplica a função para atribuir categorias aos itens comprados e cria a coluna 'Categoria'.
- Lista de Métodos de Pagamento e Adição da Coluna 'Método de Pagamento': Adiciona uma coluna 'Método de Pagamento' com métodos de pagamento brasileiros aleatórios a cada linha.
- Salvamento do DataFrame em um Novo Arquivo CSV: Salva o DataFrame atualizado em um novo arquivo CSV (
shopping_trends_clean.csv
).
Este script enriquece o conjunto de dados original com informações adicionais, como localização, item comprado, categoria e método de pagamento, antes de salvar em um novo arquivo CSV.
O script criar_db.py
cria e configura um banco de dados SQLite:
- Conectar ao Banco de Dados SQLite: O script se conecta ao banco de dados SQLite (criará um novo arquivo se não existir).
- Criar Tabela 'clientes': Cria uma tabela chamada 'clientes' com informações sobre os clientes, como idade, gênero, localização, status da assinatura, compras anteriores, método de pagamento e frequência de compras.
- Criar Tabela 'items': Cria uma tabela chamada 'items' que armazena informações sobre os itens disponíveis para compra, como nome do item, categoria, valor, tamanho, cor e temporada.
- Criar Tabela 'compras': Cria uma tabela chamada 'compras' que registra informações sobre cada compra, incluindo valor da compra, avaliação, tipo de envio, desconto aplicado, código promocional usado, e referências às tabelas 'clientes' e 'items'.
- Fechar a Conexão: Finaliza a conexão com o banco de dados SQLite.
Este script é fundamental para a estruturação do banco de dados usado no projeto, definindo as tabelas e suas relações.
O script csv_to_db.py
adiciona dados do arquivo CSV ao banco de dados SQLite:
- Conectar ao Banco de Dados SQLite: O script se conecta ao banco de dados SQLite (
moda_estilos.db
). - Ler o CSV: Utiliza o
pandas
para ler o arquivo CSV limpo (shopping_trends_clean.csv
). - Adicionar Dados à Tabela 'clientes': Seleciona as colunas relevantes do DataFrame e adiciona os dados à tabela 'clientes' no banco de dados.
- Adicionar Dados à Tabela 'items' e Eliminar Duplicados: Seleciona as colunas relevantes do DataFrame e adiciona os dados à tabela 'items', eliminando duplicatas com base no nome do item.
- Verificar Valores Nulos e Inexistentes na Coluna 'Item Comprado': Verifica se há valores nulos na coluna 'Item Comprado' e se todos os itens existem na tabela 'items'.
- Adicionar Dados à Tabela 'compras': Seleciona as colunas relevantes do DataFrame e adiciona os dados à tabela 'compras', mapeando os IDs correspondentes dos itens.
- Fechar a Conexão: Finaliza a conexão com o banco de dados SQLite.
Este script é responsável por transferir os dados do arquivo CSV para o banco de dados SQLite, garantindo a integridade e consistência dos dados.
Com os dados do CSV já inseridos no banco de dados SQLite, você pode prosseguir com a importação desses dados no Power BI. Aqui estão os passos para realizar a importação utilizando a conexão via SQLite e ODBC:
- Baixe e Instale o Driver SQLite: Certifique-se de ter o driver SQLite instalado no seu sistema.
- Abra o Power BI: Inicie o Power BI Desktop.
- Escolha 'Obter Dados': Na guia "Página Inicial", escolha a opção "Obter Dados" e selecione "Outros" para ver mais opções.
- Escolha 'ODBC': Selecione "ODBC" e escolha o driver ODBC para SQLite.
- Configure a Conexão: Insira as informações necessárias, como o nome do arquivo do banco de dados SQLite e as credenciais, se aplicável.
- Selecione Tabelas: Selecione as tabelas desejadas (clientes, items, compras) para importar no Power BI.
- Configure uma Fonte de Dados ODBC (ProjetoBI): Certifique-se de ter uma fonte de dados ODBC configurada com o nome "ProjetoBI" para o seu banco de dados SQLite.
- Abra o Power BI: Inicie o Power BI Desktop.
- Escolha 'Obter Dados': Na guia "Página Inicial", escolha a opção "Obter Dados" e selecione "Outros" para ver mais opções.
- Escolha 'ODBC': Selecione "ODBC" e escolha a fonte de dados ODBC configurada. (ProjetoBI)
- Selecione Tabelas: Selecione as tabelas desejadas (clientes, items, compras) para importar no Power BI.
Após a configuração da conexão, você poderá explorar e visualizar os dados do seu banco de dados SQLite diretamente no Power BI, permitindo a criação de relatórios e dashboards interativos.
Os dados utilizados neste projeto foram obtidos do Kaggle. Você pode encontrar o conjunto de dados em Customer Shopping Trends Dataset.
Este projeto foi desenvolvido como parte do curso de Análise de Dados ministrado por Toti.
David SulbaránSamil Moret