Olá Felipe, tudo bem? Espero que sim!
Para conseguir passar uma Series booleana como filtragem para os dados, a Series precisa ter a mesma quantidade de linhas que o conjunto de dados, visto que cada um dos elementos do conjunto de dados será escolhido dependendo se o elemento com mesmo índice na Series tem como valor True ou False.
Ao utilizar o head(10) ao final da seleção, foram selecionados somente os 10 primeiros registros e o conjunto de dados possui mais do que 10 linhas, sendo impossível realizar a filtragem.
O instrutor utilizou o head(10) somente para fazer uma checagem com os dados iniciais do conjunto de dados. Após fazer a checagem, ele salvou na variável selecao toda a Series booleana sem o uso do head(10). Portanto o código deve ficar da seguinte forma:
residencial = ['Apartamento', 'Casa', 'Casa de Condomínio', 'Casa de Vila', 'Quitinete']
selecao = dados['Tipo'].isin(residencial)
dados_residencial = dados[selecao]
dados_residencial
Espero que tenha tirado sua dúvida.
Estou à disposição. Bons estudos!