Fast area-subsetting when loading dfs
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- data, performance
Direzione di ricerca
Inizia leggendo il percorso di selezione dell’area di mikeio.read() e il punto di ingresso mikeio.generic.extract(), quindi confronta il modo in cui ciascuno gestisce i dati DFS2 e gli intervalli temporali. Il comportamento richiesto è un’estrazione basata sull’area senza caricare l’intero dataset globale; il lavoro è completato quando un’estrazione di una piccola area per tutti i timestep termina in modo efficiente e preserva l’output richiesto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I have a request for fast loading of subset of dfs data.
Background: I have a dfs2 file for a global dataset, and I wish to read all timesteps of this data but only a sub-area. The way I do it now, is to pass a bounding box to the mikeio.read() method:
ds = mikeio.read(fn,area = bbox_tuple)
The problem is that this method is really slow, even thought the area is very small. It seems that MIKEIO needs to load the entire area under the hood before subsetting. For reference: it takes 16 minutes to load the data, even though the resulting dfs2 file is only 1900 kb (the original global file is around 110 GB).
Ideally, it would be possible to use the mikeio.generic.extract() method with an 'area' argument instead of only subsetting in time. I imagine something along the lines of:
mikeio.generic.extract(fn, fn_out, area=bbox_tuple, start=0, end=-1, step=1, items=None)
- Lingua principale
- Python
- Stelle
- 5
- Fork
- 1
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
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 DHI/mikecore-python
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
DHI/mikecore-python#49 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
DHI/mikecore-python#54 · 2 commenti ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 45/100
DHI/mikecore-python#52 ·
-
Remaining TODOs in production code: platform notes, licensing questions, and one likely-stale marker Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 30/100
DHI/mikecore-python#51 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
DHI/mikecore-python#50 ·
Tutte le issue di DHI/mikecore-python
Issue simili
-
bug confirmed issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
open-webui/open-webui#30750 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
good first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100