Es simple: si tenías un cero en la posición 1 del array y luego lo eliminaste en el filtrado, ya no existe dicha posición en el array; por eso es que en el mensaje se indica que no se ha definido una posición 1.
Te conviene recorrer al array con el constructor
foreach
.