Questão de Programação — Python — FGV 2024
- Código
- fg084794
- Banca
- FGV
- Órgão
- EPE
- Ano
- 2024
- Nível
- Superior
- Cargo
- Analista de Pesquisa Energética (Economia de Energia)
- A1.0
- B2.0
- C3.0
- D4.0
- ENaN
GabaritoD — 4.0
Gabarito: letra D (y = 4.0). A expressão x["1"][:2] seleciona as duas primeiras linhas da coluna "1" por posição, e .iloc[-1] retorna o último elemento dessa seleção, que corresponde ao valor 4.0.
x["1"] → Series com valores [3.0, 4.0, 5.0] e índice ["a","b","c"].
x["1"][:2] → slice posicional: retorna os elementos das posições 0 e 1, ou seja, [3.0, 4.0] com índice ["a","b"].
iloc[-1] → último elemento (posição -1) → 4.0.
1.0 é o valor da coluna "0" no índice "a", não se relaciona com a expressão.
2.0 é o valor da coluna "0" no índice "b".
3.0 é o primeiro elemento da coluna "1", mas o slicing [:2] seguido de iloc[-1] seleciona o segundo elemento, não o primeiro.
Conforme explicação, y = 4.0.
Não ocorre NaN porque todos os índices envolvidos existem. O NaN só apareceria se houvesse alinhamento com índices ausentes, o que não é o caso.
A confusão comum é pensar que [:2] usa rótulos (label-based) quando o índice não é numérico. Na verdade, [] com slice numérico é sempre posicional. Para slice baseado em rótulo, use .loc. Lembre-se: iloc = posição, loc = rótulo.
Gabarito: letra D.
Link permanente: /questoes/fg084794