Construya eficientemente Pandas DataFrame a partir de una gran lista de tuplas / filas

He heredado un archivo de datos guardado en el formato Stata .dta. Puedo cargarlo conscikits.statsmodels genfromdta() función. Esto coloca mis datos en una matriz NumPy 1-dimensional, donde cada entrada es una fila de datos, almacenada en un 24-tuple.

In [2]: st_time = time.time(); initialload = sm.iolib.genfromdta("/home/myfile.dta"); ed_time = time.time(); print (ed_time - st_time)
666.523324013

In [3]: type(initialload)
Out[3]: numpy.ndarray

In [4]: initialload.shape
Out[4]: (4809584,)

In [5]: initialload[0]
Out[5]: (19901130.0, 289.0, 1990.0, 12.0, 19901231.0, 18.0, 40301000.0, 'GB', 18242.0, -2.368063, 1.0, 1.7783716290878204, 4379.355, 66.17669677734375, -999.0, -999.0, -0.60000002, -999.0, -999.0, -999.0, -999.0, -999.0, 0.2, 371.0)

Tengo curiosidad si hay una manera eficiente de organizar esto en un DataFrame de Pandas. Por lo que he leído, crear un DataFrame fila por fila parece bastante ineficiente ... pero ¿cuáles son mis opciones?

He escrito un primer paso bastante lento que solo lee cada tupla como un DataFrame de una sola fila y lo agrega. Solo me pregunto si algo se sabe que es mejor.

Respuestas a la pregunta(2)

Su respuesta a la pregunta