Sub (and Add, Div, etc) not implemented for ArrayView/ViewRepr?

Ouverte
#743 5 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
30/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
rust
Domaine
data

Piste de recherche

The issue names ArrayView and ViewRepr, along with the Sub, Add, and Div binary operations; no files or tests are identified. Start by locating the operator implementations and related broadcasting handling, then check how views are used on the left-hand side. Done means the requested binary operations work with read-only views without consuming the source array.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

First off, very impressed with this crate so far. I'm a long-time numpy user and I appreciate the task you took on on behalf of the Rust ecosystem.

I only recently started using Rust, so I might just be trying to do the wrong thing here, but I'm curious why an ArrayView can not be used on the LHS of a binary operation like +, -, etc. That seems like a natural use-case, since you need a read-only view of the data in the array but won't be modifying it.

In my case I'd like to compare an array of values to a particular query by broadcasting and then operate on the matching rows later–this means I can't consume the array in this operation*.

Is the appropriate thing to Zip over the rows and compare them that way? I can see how to do that but it seemed verbose, so I thought I'd check. And if this is an oversight I can try to help implement a PR.

* a broadcasting comparison operator would be even better for this but the existence of #35 suggests that might be difficult.

Langage dominant
Rust
Étoiles
4.3k
Forks
391
Métriques de merge des PR
Aucune PR mergée en 30 j

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de rust-ndarray/ndarray

Toutes les issues de rust-ndarray/ndarray

Issues similaires

Plus d'issues Rust

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.