python - tutorial - seleccionar columnas de un dataframe pandas




Concatenar una lista de marcos de datos de pandas juntos (2)

Dado que todos los marcos de datos tienen las mismas columnas, simplemente puede concat :

import pandas as pd
df = pd.concat(list_of_dataframes)

Tengo una lista de marcos de datos de Pandas que me gustaría combinar en un marco de datos de Pandas. Estoy usando Python 2.7.10 y Pandas 0.16.2

Creé la lista de marcos de datos de:

import pandas as pd
dfs = []
sqlall = "select * from mytable"

for chunk in pd.read_sql_query(sqlall , cnxn, chunksize=10000):
    dfs.append(chunk)

Esto devuelve una lista de marcos de datos

type(dfs[0])
Out[6]: pandas.core.frame.DataFrame

type(dfs)
Out[7]: list

len(dfs)
Out[8]: 408

Aquí hay algunos datos de muestra

# sample dataframes
d1 = pd.DataFrame({'one' : [1., 2., 3., 4.], 'two' : [4., 3., 2., 1.]})
d2 = pd.DataFrame({'one' : [5., 6., 7., 8.], 'two' : [9., 10., 11., 12.]})
d3 = pd.DataFrame({'one' : [15., 16., 17., 18.], 'two' : [19., 10., 11., 12.]})

# list of dataframes
mydfs = [d1, d2, d3]

Me gustaría combinar d1 , d2 y d3 en un marco de datos de pandas. Alternativamente, sería muy útil un método para leer una tabla de gran tamaño directamente en un marco de datos cuando se utiliza la opción de chunksize .


Si los marcos de datos NO tienen todas las mismas columnas, intente lo siguiente:

df = pd.DataFrame.from_dict(map(dict,df_list))




concat