Rešeno: naključni vnosi numpy se ne ponavljajo

V današnjem svetu manipulacije in analize podatkov je ena pogosta težava, ki se pojavi, ustvarjanje neponavljajočih se naključnih vnosov z uporabo zelo priljubljene knjižnice Python NumPy. Namen tega članka je ponuditi celovito rešitev te težave, poglobiti se v notranje delovanje kode in raziskati ustrezne knjižnice in funkcije.

NumPy je zmogljiva knjižnica, ki nam omogoča izvajanje različnih matematičnih in statističnih operacij na velikih večdimenzionalnih nizih in matrikah. Eden od pomembnih vidikov analize podatkov in strojnega učenja je generiranje naključnih števil, kar je mogoče doseči z uporabo naključnega modula NumPy. V nekaterih primerih bomo morda potrebovali, da so ti naključni vnosi edinstveni in da se ne ponavljajo. Raziščimo, kako to doseči z NumPy korak za korakom.

Najprej uvozimo zahtevano knjižnico in se pogovorimo o rešitvi za generiranje neponavljajočih se naključnih vnosov z uporabo NumPy.

import numpy as np

Ustvarjanje edinstvenih naključnih števil

Rešitev za ustvarjanje neponavljajočih se naključnih vnosov je v razumevanju numpy.naključno modul in učinkovito uporabo njegovih metod. Še posebej, numpy.random.choice() funkcija se v tem scenariju izkaže za izjemno uporabno, saj lahko ustvari naključne vzorce iz dane 1-D matrike z možnostjo preprečevanja ponovitev.

Razčlenimo kodo in razumemo, kako ustvariti edinstvena naključna števila.

def unique_random_numbers(size, lower_limit, upper_limit):
    unique_numbers = np.random.choice(np.arange(lower_limit, upper_limit), size, replace=False)
    return unique_numbers

size = 10
lower_limit = 1
upper_limit = 101

unique_numbers = unique_random_numbers(size, lower_limit, upper_limit)
print(unique_numbers)
  • O edinstvena_naključna_števila() funkcija ima tri parametre: želeno velikost matrike, spodnjo mejo in zgornjo mejo za naključna števila. V tem primeru želimo ustvariti 10 edinstvenih naključnih števil med 1 in 100.
  • Znotraj funkcije uporabljamo numpy.random.choice() metoda za naključno izbiro elementov iz obsega, ki ga ustvari numpy.arange() funkcijo. Argument replace=False zagotavlja neponovljene vnose v matriki.
  • Ko definiramo funkcijo, jo pokličemo s podanimi vrednostmi in natisnemo nastalo matriko neponavljajočih se naključnih števil.

Razumevanje numpy.random in numpy.arange

O numpy.naključno modul je močno orodje za generiranje naključnih števil in vzorcev. Nekatere pogosto uporabljene funkcije znotraj tega modula vključujejo numpy.random.rand(), numpy.random.randn()in numpy.random.randint(). Vendar, kot smo že omenili, je funkcija, ki jo potrebujemo za to težavo numpy.random.choice().

numpy.arange() je funkcija v sami knjižnici NumPy in se uporablja za vrnitev enakomerno razporejenega zaporedja vrednosti znotraj navedenega obsega. Sprejema tri parametre: začetno vrednost, končno vrednost in velikost koraka. Privzeto je velikost koraka 1.

Uporaba generiranja edinstvenih naključnih vnosov

Ustvarjanje edinstvenih naključnih vnosov je praktično uporabno v več scenarijih resničnega sveta, kot so:

  • Mešanje podatkov: Premeščanje podatkov, ki se pogosto uporablja pri strojnem učenju, pomaga pri naključnem vrstnem redu podatkovnih točk, zmanjšanju pristranskosti in izboljšanju učinkovitosti modela.
  • Vzorčenje brez zamenjave: V statistiki se lahko uporabi neponovljeno naključno vzorčenje, da se zagotovi reprezentativen vzorec, vzet iz večje populacije.
  • Ustvarjanje naključnih dodelitev: Razdelitev nalog ali virov med skupino brez ponavljanja je mogoče doseči z uporabo edinstvenih naključnih števil.

Skratka, generiranje neponavljajočih se naključnih vnosov z uporabo NumPy je preprosto in učinkovito z uporabo metode numpy.random.choice(). Razumevanje funkcij numpy.random in numpy.arange ter njune uporabe nam omogoča, da se spoprimemo s številnimi praktičnimi primeri uporabe pri analizi podatkov, strojnem učenju in drugod.

Podobni objav:

Pustite komentar