Tive dificuldade para entender o motivo de adicionarmos sm.add_constant() na regressão e percebi que a explicação no curso poderia ser mais clara (talvez relembrando a equação):
Y = beta0 * X0 + beta1 * X1 + beta2 * X2 + ... + epsilon, dado que X0 = 1 para todo o conjunto de dados.
Olhando aqui no fórum percebi que não só eu tive essa dúvida, sendo que tive que ir atrás do método utilizado pelo pacote para daí sim encontrar algum sentido, já que alguns outros pacotes/ferramentas, já tem a opção de considerar beta1 na regressão. Então acho que é uma informação super importante, já que ao usar outro pacote, o aluno pode adicionar essa coluna sem necessidade e gerando redundância fazendo o intercepto estimado tender a um valor menor do que o real (já que haveriam na prática dois beta0, o inserido pelo aluno e o já incluido no pacote/ferramenta)