Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Dúvida] Duvida sobre o iloc[0]

Não consegui entender o motivo de usar o iloc[0], eu printei isso aqui no terminal: print(emissao_por_gas.iloc[0:9].sum()/emissao_por_gas.sum())
E o resultado foi:
Emissão 0.997363

Então qual o motivo de pegarmos o índice 0 com o iloc, sendo que só possuímos esse índice, não tem outro que possa ser usado
Não sei se ficou clara a minha duvida

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
3 respostas

Ei! Tudo bem, Marco?

O código calcula a proporção cumulativa das emissões dos primeiros 9 itens em relação ao total. O resultado de 0.997363 indica que ~99,7% das emissões totais vêm desses top 9 gases.

O iloc[0:9] acessa esses elementos por posição numérica (0 a 8), ignorando rótulos de índice, o que é ideal para slices dinâmicos em séries reordenadas. Em um DataFrame de coluna única, funcionaria da mesma forma. Usar apenas iloc[0] capturaria só o maior gás.

Assim, iloc[0:9] garante extração posicional precisa para a soma parcial, gerando um escalar útil em análises, relatórios ou visualizações.

Espero ter ajudado e qualquer dúvida, compartilhe no fórum.

Até mais, Marco!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado!

A parte do iloc[0,9] eu entendi, era mais em relação o iloc[0]. Porque eu fiz o mesmo código sem o iloc[0] e deu o mesmo resultado, queria entender a necessidade real do iloc[0]

solução!

Oi, Marco!

O iloc[0] é usado para pegar a primeira linha de um DataFrame, mesmo quando existe apenas uma linha. Isso garante que o Pandas retorne o valor de forma explícita e não como uma série ou subconjunto maior.

Um exemplo:


import pandas as pd

dados = {"gas": ["CO2"], "emissao": [100]}
df = pd.DataFrame(dados)

print(df.iloc[0])  

Esse código retorna a primeira linha inteira (CO2 e 100).
Já se você fizer um fatiamento com iloc[0:1], o Pandas vai devolver um DataFrame contendo a linha, não a linha em si.

Outro exemplo prático:


import pandas as pd

valores = {"numero": [10, 20, 30]}
df = pd.DataFrame(valores)

print(df.iloc[0])   
print(df.iloc[0:1]) 
  • df.iloc[0] → retorna a linha como objeto (Series).
  • df.iloc[0:1] → retorna a linha como DataFrame.

Então, o uso do iloc[0] é uma forma de garantir que você está acessando somente aquela primeira linha (útil em cálculos ou quando você espera um valor único).

Conteúdos relacionados

Espero ter ajudado, até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado!