Usando pandas .append dentro de for loop

Estoy agregando filas a un DataFrame de pandas dentro de un bucle for, pero al final el marco de datos siempre está vacío. No quiero agregar las filas a una matriz y luego llamar al constructor DataFrame, porque mi bucle for real maneja muchos datos. También intentépd.concat sin éxito. ¿Podría alguien resaltar lo que me falta para que la declaración de anexos funcione? Aquí hay un ejemplo ficticio:

import pandas as pd
import numpy as np

data = pd.DataFrame([])

for i in np.arange(0, 4):
    if i % 2 == 0:
        data.append(pd.DataFrame({'A': i, 'B': i + 1}, index=[0]), ignore_index=True)
    else:
        data.append(pd.DataFrame({'A': i}, index=[0]), ignore_index=True)

print data.head()

Empty DataFrame
Columns: []
Index: []
[Finished in 0.676s]

Respuestas a la pregunta(3)

Su respuesta a la pregunta