una seleccionar filas data crear columnas columna agregar dataframe julia-lang

seleccionar - julia crea un dataframe vacío y agrega filas a él



crear un dataframe en python (1)

Estoy probando el módulo Julia DataFrames. Me interesa, así que puedo usarlo para trazar simulaciones simples en Gadfly. Quiero poder agregar iterativamente filas al marco de datos y quiero inicializarlo como vacío.

Los tutoriales / documentación sobre cómo hacer esto son escasos (la mayoría de la documentación describe cómo analizar datos importados).

Para agregar a un dataframe no vacío es sencillo:

df = DataFrame(A = [1, 2], B = [4, 5]) push!(df, [3 6])

Esto regresa

3x2 DataFrame | Row | A | B | |-----|---|---| | 1 | 1 | 4 | | 2 | 2 | 5 | | 3 | 3 | 6 |

Pero para un init vacío, recibo errores.

df = DataFrame(A = [], B = []) push!(df, [3, 6])

Mensaje de error:

ArgumentError("Error adding 3 to column :A. Possible type mis-match.") while loading In[220], in expression starting on line 2

¿Cuál es la mejor manera de inicializar un DataFrame de Julia vacío para que pueda agregarle elementos iterativamente más adelante en un bucle for?


Una matriz de longitud cero definida usando solo [] carecerá de información de tipo suficiente.

julia> typeof([]) Array{None,1}

Entonces para evitar ese problema es simplemente indicar el tipo.

julia> typeof(Int64[]) Array{Int64,1}

Y puede aplicar eso a su problema de DataFrame

julia> df = DataFrame(A = Int64[], B = Int64[]) 0x2 DataFrame julia> push!(df, [3 6]) julia> df 1x2 DataFrame | Row | A | B | |-----|---|---| | 1 | 3 | 6 |