arraytable (objecttable) fails when the argument is a nested table
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Inizia riproducendo l’esempio di DataFrame annidato con objecttable(dfn) e confrontalo con i punti di ingresso jsontable e DataFrame(jsontable(jdata)) mostrati nell’issue. Determina la rappresentazione prevista per le tabelle annidate, quindi aggiungi la copertura per questo caso e verifica che non fallisca più con l’errore StructTypes.StructType mancante.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I wanted to see the json file corresponding to a dataframe that has dataframes as elements in one of the columns.
3×3 DataFrame
Row │ f oc sdf
│ String Int64 DataFrame
─────┼──────────────────────────────
1 │ f1 1 3×2 DataFrame
2 │ f2 2 2×2 DataFrame
3 │ f3 3 3×2 DataFrame
I have previously verified that
julia> Tables.istable(dfn)
true
but I get this result
julia> objecttable(dfn)
ERROR: ArgumentError: DataFrame doesn't have a defined `StructTypes.StructType`
Stacktrace:
...
I wonder if it is possible to manage this type of structures
if i use jsontable on this string (http://bl.ocks.org/nautat/4085017)
jdata = "[
{
\"name\":\"bob\",
\"salary\":13000,
\"friends\":[
{
\"name\": \"sarah\",
\"salary\":10000
},
{
\"name\": \"bill\",
\"salary\":5000
}
]
},
{
\"name\":\"marge\",
\"salary\":10000,
\"friends\":[
{
\"name\": \"rhonda\",
\"salary\":10000
},
{
\"name\": \"mike\",
\"salary\":5000,
\"hobbies\":[
{
\"name\":\"surfing\",
\"frequency\":10
},
{
\"name\":\"surfing\",
\"frequency\":15
}
]
}
]
},
{
\"name\":\"joe\",
\"salary\":10000,
\"friends\":[
{
\"name\": \"harry\",
\"salary\":10000
},
{
\"name\": \"sally\",
\"salary\":5000
}
]
}
]"
and then i try to get the dataframe
julia> jsontable(jdata)
JSONTables.Table{false, JSON3.Array{JSON3.Object, Base.CodeUnits{UInt8, String}, Vector{UInt64}}}([:name, :salary, :friends], Dict{Symbol, Type}(:name => String, :salary => Int64, :friends => JSON3.Array{JSON3.Object, Base.CodeUnits{UInt8, String}, SubArray{UInt64, 1, Vector{UInt64}, Tuple{UnitRange{Int64}}, true}}), JSON3.Object[{
...
julia> DataFrame(jsontable(jdata))
3×3 DataFrame
Row │ name salary friends
│ String Int64 Array…
─────┼───────────────────────────────────────────────────
1 │ bob 13000 JSON3.Object[{\n "name": "sa…
2 │ marge 10000 JSON3.Object[{\n "name": "rh…
3 │ joe 10000 JSON3.Object[{\n "name": "ha…
- Lingua principale
- Julia
- Stelle
- 71
- Fork
- 11
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di JuliaData/JSONTables.jl
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
JuliaData/JSONTables.jl#25 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
JuliaData/JSONTables.jl#20 · 2 commenti ·
-
Define `filter`Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
JuliaData/JSONTables.jl#15 ·
-
Defining additional methodsAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
JuliaData/JSONTables.jl#13 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 30/100
JuliaData/JSONTables.jl#10 · 1 commento · 5 reazioni ·
Tutte le issue di JuliaData/JSONTables.jl
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
oscar-system/GAP.jl#1455 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
JuliaAI/MLJTransforms.jl#85 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
SciML/OrdinaryDiffEq.jl#4875 ·
I maintainer di solito rispondono entro 3 giorni
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
SciML/NonlinearSolve.jl#1372 ·
I maintainer di solito rispondono entro 1 giorno