[protocol] Clarify the exact meaning of the buffer's dtype (Dtype tuple in get_buffers())
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 25/100
Piste de recherche
Commencez par lire le texte du protocole cité dans l’issue et comparez-le à tests/test_column_object.py, en particulier à test_dtype et test_get_buffers dans dataframe-interchange-tests. Déterminez si le dtype associé au buffer doit correspondre à Column.dtype ou peut différer, puis mettez à jour la spécification et les attentes des tests correspondantes une fois le sens établi.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
If my assumption is incorrect
Just as a sanity check I checked and pandas/vaex/cuDF/modin all return the type described in
Column.dtypefor theget_buffers()values. A. TODO I realize fordataframe-interchange-testsis generalisetest_dtypeand use it intest_get_buffers.
Note that this is actually not correct, depending on how you interpret it. Yes, the buffers' dtype returns a similar type of DType tuple, but it should not necessarily return the same dtype tuple as its Column.dtype does, as the buffer can have a different dtype than the column.
It seems that we all interpreted this wrongly and all implementations got this wrong (or the text about "the data buffer's associated dtype" is wrong), see https://github.com/apache/arrow/issues/37598, https://github.com/pandas-dev/pandas/issues/54781, https://github.com/pola-rs/polars/pull/10787 (and the same for StaticFrame mentioned above, from a quick look).
Originally posted by @jorisvandenbossche in https://github.com/data-apis/dataframe-api/issues/87#issuecomment-1744791104
- Langage dominant
- Python
- Étoiles
- 106
- Forks
- 22
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de data-apis/dataframe-api
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
data-apis/dataframe-api#363 · 1 commentaire · 8 réactions ·
-
Row ordering design choiceOuverteAPI design
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
data-apis/dataframe-api#356 · 1 commentaire ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
data-apis/dataframe-api#355 ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
data-apis/dataframe-api#352 ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
data-apis/dataframe-api#351 ·
Toutes les issues de data-apis/dataframe-api
Issues similaires
-
cost:cheap practicality:seen-in-the-wild severity:medium
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
fairagro/m4.2_advanced_middleware_api#620 ·
Les mainteneurs répondent en général sous 1 jour
-
area:security effort:S priority:P2 provider:local-libvirt status:ready type:docs
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
randomparity/kdive#3495 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
microsoft/markitdown#2820 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 2 jours