Vectorisation du calcul d'un histogramme

La vectorisation accélère vite les choses, profitons en.

a marqué ce sujet comme résolu.
Auteur du sujet

J’étais en train de coder un truc qui utilise une sorte d’histogramme et je me suis demandé si on pouvais s’affranchir des boucles en utilisant numpy (ou autre). En entrée j’ai les bins et j’aimerais dire à quelle classe appartient chaque exemple. Un exemple :

data = [1, 18, 21, 0, 48, 21, 44]
bins = [5, 20, 30, 50]

out = [0, 1, 2, 0, 3, 2, 3]

J’ai donc réussi à vectoriser cette opération, je me demandais si vous aviez d’autres solutions ou ce que vous pensiez de la mienne.

    data = ...
    bins = ...
    data = np.repeat(data[..., np.newaxis], len(bins), 0)
    out = np.argmax(data < bins, 1)

Merci :)

Édité par Ricocotam

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte