API?
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 20/100
Direção de pesquisa
Start by reviewing the proposed accessor API in pint/#849 and the checked and unchecked DataArray and Dataset methods listed here. Determine which API items remain desired and whether the accessor should eventually be renamed from pint to units; done requires an agreed scope rather than a single isolated edit.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
@jthielen proposed a rough accessor API in pint/#849, to which I've added a couple of things:
DataArray:
-
da.pint.to(...): return dataarray with converted units (#11) -
da.pint.to_base_units(): return dataarray with base units -
da.pint.units: units of quantity (as a Unit) -
da.pint.magnitude: magnitude of quantity -
da.pint.quantify(unit_registry=None, unit=None): create DataArray wrapping a Quantity based on string unit attribute of DataArray or specified unit -
da.pint.dequantify(): replace data with the Quantity's magnitude, and add back string unit attribute from Quantity's unit -
da.pint.sel(): wrap da.sel to handle indexing with Quantities (by casting to magnitude in the coordinate's units similar to how MetPy does it, since true unit-aware indexing is not available yet in xarray) -
da.pint.loc: wrap da.loc likewise -
da.pint.to_system(system): convert all variables to be expressed in the (base?) units of a different system. Might require upstream additions to pint.
Dataset:
-
ds.pint.to(...): return Dataset with converted units (#11) -
ds.pint.to_base_units(): return dataset with base units -
ds.pint.quantify(unit_registry=None): convert all data variables to quantities -
ds.pint.dequantify(): convert all data variables from quantities to magnitudes with units as an attribute -
ds.pint.sel(): wrap ds.sel to handle indexing with Quantities -
ds.pint.loc: wrap ds.loc likewise -
ds.pint.to_system(system): convert all variables to be expressed in the (base?) units of a different system.
(this may be modified as things change on xarray's and pint's end, especially involving Dask arrays (xref #883))
Anything else?
At some point when the integration is more solidified (but before official release) we should change the accessor from pint to units, to get a interface more like what's described here.
This would be:
a) More intuitive
b) Units-library agnostic
c) A good fit for potentially using an entrypoint to choose which units library you want to use. There's already an entrypoint for plotting backends in xarray, and plans to add one for storage backends too.
- Linguagem predominante
- Python
- Estrelas
- 120
- Forks
- 17
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de xarray-contrib/pint-xarray
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 56/100
xarray-contrib/pint-xarray#400 ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 48/100
xarray-contrib/pint-xarray#362 · 1 comentário ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 45/100
xarray-contrib/pint-xarray#361 · 1 comentário ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
xarray-contrib/pint-xarray#303 · 3 comentários ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
xarray-contrib/pint-xarray#271 · 7 comentários ·
Todas as issues de xarray-contrib/pint-xarray
Issues semelhantes
-
[yugabyted] xcluster set_up and add_to_replication fail for database names containing - . or (Abertakind/bug priority/medium qa_automation
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
yugabyte/yugabyte-db#37324 ·
Mantenedores costumam responder em até 1 dia
-
good first issue
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 87/100
btclib-org/btclib-node#2260 ·
Mantenedores costumam responder em até 1 dia
-
ChatBedrockConverse changes the keys of JSON tool results to camelCase (`order_id` becomes `orderId`)Talvez já em andamento @geyazheng assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
langchain-ai/langchain-aws#1469 ·
Mantenedores costumam responder em até 1 dia
-
GCToggler leaves collection enabled if the body re-enables itTalvez já em andamento @Gambit-Checkmate assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
Mantenedores costumam responder em até 7 dias
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
EESSI/docs#949 · 1 comentário ·
Mantenedores costumam responder em até 1 dia