gostaria de saber por que essa alternativa de código não funcionaria:
dados[dados.Tipo.unique() not in imoveis_comerciais]
gostaria de saber por que essa alternativa de código não funcionaria:
dados[dados.Tipo.unique() not in imoveis_comerciais]
Oi Iago, tudo bem?
O método unique() retorna um array com todos os valores únicos de uma coluna, neste caso, a coluna "Tipo". Quando você escreve dados.Tipo.unique(), ele retorna um array com todos os tipos de imóveis presentes na base de dados. No entanto, a expressão dados.Tipo.unique() not in imoveis_comerciais está tentando verificar se o array inteiro não está na lista imoveis_comerciais.
O realmente precisamos fazer é verificar se cada valor na coluna "Tipo" não está na lista imoveis_comerciais. Para isso, você pode usar a expressão @imoveis_comerciais not in Tipo dentro do método query(), como mostrado em aula:
df = dados.query('@imoveis_comerciais not in Tipo')
Essa expressão seleciona todas as linhas do DataFrame dados onde o valor da coluna "Tipo" não está na lista imoveis_comerciais.
Espero ter ajudado.
Qualquer dúvida, compartilhe no fórum.
Abraços e bons estudos!