Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Técnicas de Atribuição de Coorte | Estruturação e Preparação de Dados de Coorte
Análise de Coorte com Python
Seção 1. Capítulo 1
single

single

Técnicas de Atribuição de Coorte

Deslize para mostrar o menu

A análise de coorte é uma técnica poderosa em analytics que permite agrupar usuários com base em características ou experiências compartilhadas dentro de um período de tempo definido. O método mais comum é atribuir usuários a coortes de acordo com a data de sua primeira transação ou interação. Essa abordagem possibilita acompanhar como diferentes grupos se comportam ao longo do tempo, revelando tendências como retenção, engajamento e churn que ficariam ocultas em dados agregados.

Atribuir usuários a coortes é uma etapa fundamental na análise de coorte. Ao definir regras claras para a atribuição de coortes – como agrupar pelo mês ou semana da primeira compra do usuário – é possível criar segmentos significativos para análises mais aprofundadas. Esse processo não só ajuda a identificar mudanças no comportamento do usuário, mas também apoia decisões de negócios mais direcionadas, como avaliar o impacto de alterações no produto ou campanhas de marketing em grupos específicos de usuários.

Compreender e implementar uma atribuição de coorte adequada garante que sua análise reflita as verdadeiras jornadas dos usuários e forneça insights acionáveis. O exemplo de código a seguir demonstra como atribuir usuários a coortes utilizando a data da primeira transação em Python com pandas.

12345678910111213141516171819
import pandas as pd # Sample transaction data data = { "user_id": [1, 2, 1, 3, 2, 4], "transaction_date": [ "2024-01-15", "2024-01-20", "2024-02-10", "2024-03-05", "2024-03-10", "2024-03-15" ], "amount": [100, 150, 200, 120, 80, 90] } df = pd.DataFrame(data) df["transaction_date"] = pd.to_datetime(df["transaction_date"]) # Assigning each user to a cohort based on their first transaction month df["cohort_month"] = df.groupby("user_id")["transaction_date"].transform("min").dt.to_period("M") print(df[["user_id", "transaction_date", "cohort_month"]])

A lógica por trás da atribuição de coortes é identificar um evento ou característica única – geralmente a data da primeira transação do usuário – e utilizá-la para definir a coorte de cada usuário. No exemplo de código acima, utiliza-se o pandas para agrupar os dados por user_id e encontrar a menor transaction_date para cada usuário. Essa data é então convertida para um período mensal, criando o cohort_month que representa a coorte do usuário.

Ao implementar a atribuição de coortes, considere casos especiais como usuários com múltiplas transações no mesmo dia, datas de transação ausentes ou usuários que possam retornar ao sistema após um longo período de ausência. É uma boa prática garantir que a lógica de atribuição de coortes seja robusta para essas situações, tratando valores ausentes e validando que cada usuário seja atribuído exatamente a uma coorte com base em sua primeira interação real.

Seguir esses princípios ajuda a manter a integridade das suas coortes, garantindo que as análises subsequentes reflitam com precisão o comportamento dos usuários e apoiem decisões de negócios fundamentadas.

Tarefa

Deslize para começar a programar

Você recebe um DataFrame df com as colunas user_id e signup_date, representando os cadastros de usuários. Siga os passos abaixo:

  • Converter a coluna signup_date para o formato datetime.
  • Para cada usuário, identificar a data mais antiga de cadastro (signup_date).
  • Criar uma nova coluna cohort_week que contenha o período semanal (YYYY-MM-DD com frequência semanal) da primeira data de cadastro de cada usuário, utilizando a funcionalidade de períodos do pandas com frequência 'W'.
  • Exibir o DataFrame resultante, que deve incluir a nova coluna cohort_week.

Não modifique nenhuma outra coluna ou a estrutura do DataFrame, exceto para adicionar a coluna cohort_week exigida.

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 1
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

some-alt