Questão nº 93

Questão de Ciência de Dados · FGV TCE-PA 2024 (nº 93)

FGV2024Auditor de Controle Externo - Administrativa - Ciência de DadosCiência de Dados
Gabarito: Bver comentário ↓

Considere a biblioteca Pandas e o trecho de código a seguir:

import pandas as pd
data = {'Cidade': ['Parauapebas', 'Marabá', 'Altamira'], 'Região': ['I', 'II', 'II'], 'Jan': [150, 395, 300], 'Fev': [275, 195, 250], 'Mar': [250, 280, 200]}
df = pd.DataFrame(data, columns=['Cidade','Região','Jan', 'Fev','Mar'])
print(df.groupby('Região')[['Jan', 'Fev', 'Mar']].mean().iloc[1,2])

Assinale a opção que apresenta o valor numérico exibido como saída ao comando print.

Resposta comentada

Gabarito Alternativa B

A função groupby() no Pandas é utilizada para agrupar linhas de um DataFrame com base em valores de uma ou mais colunas, permitindo aplicar operações de agregação como a média (mean()) a cada grupo. O método iloc[] serve para selecionar dados por sua posição numérica (índice inteiro) no DataFrame resultante, onde iloc[linha, coluna] acessa um valor específico.

Para resolver a questão, seguimos os passos:

  1. Criação do DataFrame df:

          Cidade Região  Jan  Fev  Mar
    0  Parauapebas      I  150  275  250
    1       Marabá     II  395  195  280
    2     Altamira     II  300  250  200
    
  2. Agrupamento por 'Região' e cálculo da média para 'Jan', 'Fev', 'Mar':

    • Região 'I': Apenas a linha 0.
      • Jan: 150
      • Fev: 275
      • Mar: 250
    • Região 'II': Linhas 1 e 2.
      • Jan: (395 + 300) / 2 = 347.5
      • Fev: (195 + 250) / 2 = 222.5
      • Mar: (280 + 200) / 2 = 240.0

    O DataFrame resultante do groupby().mean() é:

            Jan    Fev    Mar
    Região
    I     150.0  275.0  250.0
    II    347.5  222.5  240.0
    
  3. Seleção com iloc[1,2]:

    • 1: Refere-se à segunda linha (índice 1), que corresponde à 'Região' 'II'.
    • 2: Refere-se à terceira coluna (índice 2), que corresponde à coluna 'Mar'.
      O valor na interseção da segunda linha e da terceira coluna é 240.0.

(A) Incorreta: Este é o valor individual de 'Fev' para Marabá (Região II), não a média da coluna 'Mar' para a Região 'II'.
(B) Correta: Após agrupar por 'Região' e calcular a média, o valor da média de 'Mar' para a 'Região' 'II' (iloc[1,2]) é 240.0.
(C) Incorreta: Este é o valor da média de 'Fev' para a 'Região' 'I', ou o valor individual de 'Fev' para Parauapebas, não o resultado correto.
(D) Incorreta: Este valor (225.0) é próximo da média de 'Fev' para a 'Região' 'II' (que é 222.5), mas não é o valor da coluna 'Mar'.
(E) Incorreta: Esta é a média de 'Mar' para a 'Região' 'I' (iloc[0,2]), ou o valor individual de 'Fev' para Altamira, mas a questão pede o valor da 'Região' 'II' na coluna 'Mar'. A armadilha aqui é confundir a linha 0 com a linha 1 no iloc ou a coluna 'Fev' com 'Mar'.

Fonte: FGV TCE-PA 2024 Auditor de Controle Externo - Administrativa - Ciência de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho