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

Porque se usou o Inplace=true

Exercício

Crie uma visualização com os três alunos mais novos.

Alternativa correta:

alunos.sort_values(by = ['Idade'], inplace = True)
alunos.iloc[:3]

Não entendi porque foi colocado o inplace = True na resposta.

Eu tinha entendido que quando se trata de visualização não é necessário colocar o inplace = True .

Usaríamos o inplace = true apenas se quiséssemos alterar o dataframe original, não é isso?

5 respostas
solução!

Olá João,

Se a gente não utilizar o inplace na linha de cima a próxima linha não vai ter as alterações do sort_values pois não vai ser salvo em nenhum lugar, então estaremos selecionando o [:3] a partir da lista de alunos inicial:

Para fazer sem o inplace teríamos que salvar o valor retornado pelo sort_values ou então fazer todas as operações em uma única linha:

  1. alunos_ordenados = alunos.sort_values(by = ['Idade'])
    alunos_ordenados.iloc[:3]
  2. alunos.sort_values(by = ['Idade']).iloc[:3]

Normalmente quando estamos fazendo apenas uma visualização não utilizamos o inplace, mas nem sempre como visto agora. Espero ter ajudado a esclarecer, qualquer dúvida é só falar!

Entendi Lucas, valeu!

Uma outra forma de fazer e que acho mais correta é essa:

# Crie uma visualização com os três alunos mais novos.
alunos.sort_values(by = 'Idade').head(3)

Entendo que o capítulo apresentava os métodos loc e iloc, mas o fato de ser solicitada apenas uma visualização dos dados torna desnecessário o uso dos mesmos e também justifica a dúvida sobre o inplace, já que ele só foi utilizado por causa do uso forçado do iloc. Espero ter ajudado também!

Valeu Leonardo!

Boa Leonardo! Esse é provavelmente o método a ser utilizado em um ambiente real quando queremos apenas uma visualização.