Lua para loop reduzir i? Comportamento estranho [duplicado]

Esta pergunta já tem uma resposta aqui:

Decrementando um contador de loop enquanto o loop está sendo executado 1 resposta

Alguém pode me explicar isso?

for i = 1, 5 do
  print(i)
  i = i - 1
  print(i)
end

A saída é:

1
0
2
1
3
2
and so forth

Eu esperava que eu alterasse entre 1 e 0. Mas obviamente ele continua aumentando como se eu não tivesse mudado nada. O que está acontecendo?

Eu tenho que excluir um i'th elemento da tabela de vez em quando. Portanto, o próximo elemento a ser processado seria i novamente. Em C, eu apenas escreveria --i no final do meu conteúdo de loop. Alguma maneira oficial de lua? :)

questionAnswers(3)

yourAnswerToTheQuestion