Add `where`/`select` functions

Ouverte
#3,253 0 commentaires 2 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
25/100
Type d'issue
Fonctionnalité
Clarté
À clarifier
Activité
À l'abandon
Stack technique
cpp
Domaine
backend

Piste de recherche

Commencez par le commentaire lié de l’issue Stan et les deux opérations proposées dans cette issue. Déterminez si select et where doivent être des fonctions distinctes ou des overloads, puis vérifiez que l’implémentation prend en charge le comportement indiqué des masques d’entiers et de la sélection de conteneurs pour les types de conteneurs concernés.

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

Description

new function

Another part of https://github.com/stan-dev/stan/issues/3300#issuecomment-3188755711

Two useful functions:

  • select(ints, T) takes in a container container of integers in {0, 1} and a same-sized other container and returns a new container with those elements picked out (size is sum(first arg))
  • where(ints, T1, T2) takes in two containers and essentially does an element wise version of the ternary operator. Where ints is 1, the corresponding index in T1 is used, where it is 0, T2

These can be treated as two functions, or they could be both be called where and be overloads (this is what numpy does)

Langage dominant
C++
Étoiles
845
Forks
225
Merge moyen
4 j 21 h
PR mergées (30 j)
13

Préparer son environnement

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 stan-dev/math

Toutes les issues de stan-dev/math

Issues similaires

Plus d'issues C++

Recevez les nouvelles issues par e-mail

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