Questão FC331222
Considere o seguinte trecho de código Python utilizado por um analista de dados em um projeto de análise de churn de clientes: --- import pandas as pd import numpy as np df = pd.re
Linguagens de Programação
FGV · 2025
Considere o seguinte trecho de código Python utilizado por um analista de dados em um projeto de análise de churn de clientes:
---
import pandas as pd
import numpy as np
df = pd.read_csv("clientes.csv")
df["tempo_contrato"].fillna(df["tempo_contrato"].median(),
inplace=True)
df["idade_faixa"] = pd.cut(df["idade"], bins=[0, 25, 40, 60, np.inf],
labels=["Jovem", "Adulto", "Meia-idade", "Idoso"])
df["score_normalizado"] = (df["score_credito"] -
df["score_credito"].mean()) / df["score_credito"].std()
df_churn = df[df["churn"] ==
1].groupby("idade_faixa")["tempo_contrato"].mean()
---
Com base no código acima, e nos conceitos de Pandas e análise de dados, é correto afirmar que:
- o código utiliza fillna() para substituir valores ausentes por zero, o que pode enviesar a distribuição dos dados.
- a função cut() cria intervalos categóricos baseados na variável score_credito e substitui valores ausentes por “desconhecido”.
- a normalização do score de crédito transforma os dados em uma escala entre 0 e 1, facilitando a aplicação de algoritmos de machine learning.
- o agrupamento final calcula a média do tempo de contrato por faixa etária, considerando apenas os clientes que cancelaram o serviço.
- o método groupby() não pode ser utilizado após filtragem condicional com colchetes, sendo necessário aplicar query() previamente.
Mostrar resposta e comentário
Gabarito
D
Comentário do professor
O código final usa o filtro df[df["churn"] == 1], que seleciona apenas clientes com churn igual a 1 (cancelaram o serviço).
Em seguida aplica groupby("idade_faixa") sobre essa amostra — as faixas em idade_faixa foram criadas antes com pd.cut — e acessa a coluna tempo_contrato.
Finalmente chama .mean(), que calcula a média aritmética do tempo de contrato por grupo. Matematicamente: \( \bar{t} = \frac{1}{n}\sum_{i=1}^{n} t_i \).
Portanto o resultado é uma Series onde cada índice é uma faixa etária e cada valor é a média do tempo de contrato considerando exclusivamente os clientes que cancelaram.
Conteúdo do catálogo FC Concursos · Atualizado em