-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hierarchical operations on cell ids: parents #62
base: main
Are you sure you want to change the base?
Conversation
something else we could do is to add a new With that, though, we'd have to rename the method. H3 uses |
when it's about grids I would call it 'grid level' not 'resolution'. Cell size sets a limit to resolution but is no guarantee for it. If you resample 1km gridded data to a 10m grid you change the cell size (level) but not the resolution, which might be 1,5 or even 2km. |
If I understand correctly, you'd like to use distinct terms for the number of subdivisions of the base pixels and the true information content? Right now, with
Then what about |
'the number of subdivisions of the base pixel' is not really defined in DGGS terminology. We talk about the 'refinement ratio' which is the ratio of the number of child cells to parent cells. In a congruent (nested) DGGS converting values to a higher level (smaller cell size) does not at all affect the information content. You can first dis-aggregate and then re-aggregate without any loss (or gain). In other words you can change the level without changing the resolution. So yes, these two parameters are distinct.
I'm sorry if this messes with your legacy, but I would really ask you to stick whenever possible with agreed (standard) terminology. Often enough this will be difficult as you might find inconsistent standards because different groups did not align their definitions. But at least for DGGS we have a pretty solid set of terms that could largely help to converge on a common 'gridding' language. As for the variable name, maybe
For a method, |
sorry the late reply. I will raise this in the meeting on Monday (Sep 2, see #45 if you'd like to join), hopefully we can come up with a good way forward. In any case, this is an experimental package, so fortunately we don't really have to care about backwards compatibility and can just go ahead and make breaking changes if necessary. As far as confusion with other types of levels go, do those appear in the context of grid parameters? If not, I think the context will be sufficient to disambiguate, so I'm not worried that this would be confusing. |
Regarding
I wouldn't mind using the same method for upgrading or downgrading the cell level, even if the dimension size would change in the case of getting ids at a finer level. It might also make sense to keep the dimension size unchanged in the latter case too, e.g., using the cell centroid. I agree that a |
as discussed in the meeting, using the cell centroid / the child cell that is at the center of the parent cell does not work for all DGGS. We could, however, have a way to opt into this, raising an error for e.g. quadrilateral cells. Something like
We've decided to go with As an aside, the OGC draft has a
As far as I remember, we didn't really discuss the naming for the method I'm proposing here. While For an additional idea: since we've used the word "zoom" in this context, what about |
Towards #38 (comment): this computes the parents at the given resolution for every cell id. This is similar to
h3ronpy.pandas.change_resolution_paired
(as mentioned in #18), with the restriction that it is only possible to compute the parents.Note that this does not aim to perform any sort of aggregation / interpolation / reindexing. In other words, this is purely a cell id operation.
In theory, we could expand this to also return the children, but then size of the
cells
dim would change, and we'd get duplicated entries incell_ids
coordinate.Tests are still missing, I'll add them once we settled on a design.