Olá Francisco,
Realmente eu fui muito direto em alguns pontos porque na época eu esperava que as pessoas chegassem sabendo alguns tópicos. Como isso não está acontecendo com a formação atual este curso está sendo reformulado. Isso vai demorar um pouco e acho que ao invés de um curso de estatística o curso que pode te ajudar a entender melhor os tópicos de machine learning é esse aqui: https://cursos.alura.com.br/course/machine-learning-introducao-a-classificacao-com-sklearn
Respondendo as suas perguntas:
1 - Na fórmula Tempo = passageiros.iloc[:,:-1].values poderia-se ter utilizado Tempo = passageiros['tempo'].values ?
Não. Eu fiz a divisão desta maneira por causa da forma como o sklearn espera receber os dados. Nos dois casos temos arrays do numpy, mas no seu exemplo o array será 1D. Se eu fizer Tempo.shape a saída será (144,). Na forma que utilizei o array será 2D. Se eu fizer Tempo.shape a saída será (144, 1). Você também pode imprimir o tempo nas duas versões e reparar nas diferenças.
2 - O que é o gráfico que o professor insere durante o primeiro minuto? É um exemplo? Me parece que ele quis dizer que no arquivo passageiros.csv existem dados faltantes durante o período. Se for isso, poderia ter demonstrado pelo 'isna'. 3 - Não entendi o que são dados de treino e teste. Alguém pode me orientar?
Juntei as duas perguntas porque elas estão relacionadas. Em machine learning nós dividimos a base de dados em treino e teste. Nós fazemos isso porque nunca vamos conseguir coletar todos os dados. Imagine que estamos coletando os dados de clientes de um banco e sempre vão surgir clientes novos. Então "treinamos" o algoritmo com uma grande quantidade de dados e depois verificamos em uma base de dados de teste se o algoritmo também funciona. É importante notar que o algoritmo usou apenas os dados de treino para aprender sobre o problema.
No exemplo dos dados dos passageiros que estou mostrando eu sabia que não faltavam dados, então não havia porque usar o 'isna'. Mas a falta de alguns pontos na base de dados é uma possibilidade e a regressão também serve como forma de estimar esses pontos faltantes depois que realizamos o treino. Por isso, na divisão em treino e teste tiramos alguns pontos intermediários para teste.
4 - Existe alguma documentação do sklearn para compartilhar?
Sim. *
Neste site (em inglês) você tem toda a documentação da biblioteca: https://scikit-learn.org/stable/
5 - Poderia me explicar melhor que ajuste é feito no comando .fit?
No caso da reta comando fit tenta encontrar o a e b da reta y=ax+b que produzem a reta mais próxima possível dos dados de treino. Não era objetivo desse curso cobrir como isso é feito em detalhes. O objetivo era mostrar que a regressão existe e pode ser aplicada neste tipo de exemplo. Se quiser saber como o algoritmo funciona este curso tenta cobrir o tópico: https://cursos.alura.com.br/course/data-science-regressao-linear
6 - Qual a utilidade do comando .flatten ?
Da mesma forma que tinha que passar um array 2d em alguns casos tenho que passar um array 1d. O comando flatten serve para colapsar um array para o caso 1d. Por exemplo, se tiver uma matriz consigo transformá-la em um vetor.
Espero ter respondido as suas dúvidas até o momento. Boa semana.