60 of 151 menu

Moduulin random sample-metodi

Moduulin random metodi sample palauttaa satunnaisen otoksen elementeistä sekvenssistä. Menetelmän ensimmäisessä parametrissa määritämme sekvenssin, toisessa parametrissa - elementtien määrän, jotka haluamme valita satunnaisesti.

Kolmannessa valinnaisessa nimetyssä parametrissa k voimme asettaa listan toistettavista elementeistä. Tämä mahdollistaa määritettyjen elementtien otostodennäköisyyden lisäämisen. Huomaa, että menetelmän kolmas parametri on lisätty vasta Pythonin versiosta 3.9 alkaen.

Syntaksi

import random random.sample(sekvenssi, elementtien määrä, [k=toisto])

Esimerkki

Otetaan satunnaiset kolme elementtiä listasta:

lst = [1, 2, 3, 4, 5] print(random.sample(lst, 3))

Koodin suorituksen tulos:

[2, 1, 5]

Esimerkki

Kokeillaan myös ottaa otos satunnaisista elementeistä monikosta:

tpl = (1, 2, 3, 4, 5) print(random.sample(tpl, 2))

Koodin suorituksen tulos:

[3, 2]

Esimerkki

Elementtejä voi myös valita sekvenssistä, jonka funktio range generoi:

print(random.sample(range(0, 10), 3))

Koodin suorituksen tulos:

[0, 8, 9]

Esimerkki

Otetaan nyt lista ja parametrilla counts määritetään toistot jokaiselle listan elementille. Meidän tapauksessamme, ensimmäinen elementti toistetaan kaksi kertaa, toinen - kolme, ja kolmas - neljä kertaa. Myös parametrin nimi k on määritettävä elementtien määrän tulostamiseksi:

lst = [1, 2, 3] print(random.sample(lst, counts=[2, 3, 4], k=3))

Tämä koodi vastaa seuraavaa:

lst = [1, 1, 2, 2, 2, 3, 3, 3, 3] # käytännössä tällainen lista print(random.sample(lst, 3))

Esimerkki

Yritetään nyt ottaa elementtejä joukosta:

st = {1, 2, 3, 4, 5} print(random.sample(st, 2))

Saamme seuraavan virheen:

[5, 2] DeprecationWarning: Sampling from a set deprecated since Python 3.9 and will be removed in a subsequent version. print(random.sample(st, 2))

Tämä johtuu siitä, että Pythonin version 3.9 alkaen otoksen ottaminen joukosta ei ole enää mahdollista.

Katso myös

  • moduulin random metodi choice,
    joka palauttaa satunnaisen elementin sekvenssistä
  • moduulin random metodi random,
    joka palauttaa satunnaisen luvun
Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää