最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python之random.sample()和numpy.random.choice()的優(yōu)缺點(diǎn)說明

 更新時間:2023年06月14日 16:54:08   作者:Javy Wang  
這篇文章主要介紹了Python之random.sample()和numpy.random.choice()的優(yōu)缺點(diǎn)說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

對比

python中random.sample()方法可以隨機(jī)地從指定列表中提取出N個不同的元素,列表的維數(shù)沒有限制。

有文章指出:在實踐中發(fā)現(xiàn),當(dāng)N的值比較大的時候,該方法執(zhí)行速度很慢。

可以用numpy random模塊中的choice方法來提升隨機(jī)提取的效率。

有問題,從該文章看不出來random.sample方法比choice方法慢多少,我自己仿真倒是發(fā)現(xiàn)random.sample方法比choice方法快的多,后面會舉例說明

numpy.random.choice() 對抽樣對象有要求,必須是整數(shù)或者一維數(shù)組(列表),不能對超過一維的數(shù)據(jù)進(jìn)行抽樣,這是其缺點(diǎn)。

random.sample() 和 numpy.random.choice() 的優(yōu)點(diǎn)都是可以指定抽樣的個數(shù),一次性從列表中不重復(fù)地抽樣出指定個數(shù)的元素,其中 random.sample()默認(rèn)就是不重復(fù)抽樣(不放回的抽樣),而numpy.random.choice()默認(rèn)是可以重復(fù)抽樣,要想不重復(fù)地抽樣,需要設(shè)置replace參數(shù)為False,用法如下:

補(bǔ)充

前面說random.sample方法比choice方法快的多,下面附圖為證。

更新

有博友留言說,numpy.random.choice()與 random.sample() 兩者適合的情況不同,建議增加抽樣數(shù)量再試試,下面是逐步增加抽樣數(shù)量后的結(jié)果。

列表元素為100000個,抽樣個數(shù)為9。

抽樣個數(shù)為1000。

抽樣個數(shù)為10000。

抽樣個數(shù)為50000。

從以上實驗來看,numpy.random.choice()抽樣方法的時間幾乎不會隨著抽樣數(shù)量的變化而變化,而random.sample() 會隨著抽樣數(shù)量的增加而增加。

所以當(dāng)數(shù)量較少的時候,random.sample() 用時非常少,而numpy.random.choice()則很長;當(dāng)抽樣數(shù)量很大的時候,numpy.random.choice()幾乎不變,而random.sample() 用時變長。

簡單繪制一下測試結(jié)果,如下所示

從圖上可以看到,numpy.random.choice()的用時確實保持不變,而random.sample() 用時會隨著抽樣比例的增加而線性增長。

總結(jié)

從對象類型上看,random.sample方法比numpy.random.choice方法適用范圍廣。

從速度上看,當(dāng)抽樣數(shù)量小的時候,random.sample方法比numpy.random.choice方法快很多;當(dāng)抽樣數(shù)量很大的時候,random.sample方法就不如numpy.random.choice方法了。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 最新tensorflow與pytorch環(huán)境搭建的實現(xiàn)步驟

    最新tensorflow與pytorch環(huán)境搭建的實現(xiàn)步驟

    深度學(xué)習(xí)相關(guān)的熱門框架主要為Tensorflow和Pytorch,本文主要介紹了搭建最新tensorflow與pytorch環(huán)境,具有一定的參考價值,感興趣的可以了解一下
    2024-04-04
  • 關(guān)于Pyinstaller打包eel和pygame需要注意的坑

    關(guān)于Pyinstaller打包eel和pygame需要注意的坑

    這篇文章主要介紹了關(guān)于Pyinstaller打包eel和pygame需要注意的坑,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Python利用Spire.PDF for Python庫抽取PDF文檔文本

    Python利用Spire.PDF for Python庫抽取PDF文檔文本

    在當(dāng)今數(shù)字化的世界中,PDF無疑是最普遍的文檔格式之一,無論是報告、合同、發(fā)票還是學(xué)術(shù)論文,PDF都承載著海量的信息,本文將深入探討如何利用Spire.PDF for Python庫,高效、準(zhǔn)確地從PDF文檔中提取文本,需要的朋友可以參考下
    2026-02-02
  • python使用MkDocs自動生成文檔的操作方法

    python使用MkDocs自動生成文檔的操作方法

    python代碼注釋風(fēng)格有很多,比較主流的有 reStructuredText風(fēng)格、numpy風(fēng)格、Google風(fēng)格,自動生成文檔的工具也有很多,常見的有:Pydocs,Sphinx和MkDocs,本文給大家介紹了python使用MkDocs自動生成文檔的操作方法,需要的朋友可以參考下
    2024-06-06
  • python中pip安裝、升級包使用及說明

    python中pip安裝、升級包使用及說明

    文章主要介紹了在Centos和Ubuntu系統(tǒng)中使用pip進(jìn)行包管理的操作,包括查看、安裝、升級、卸載包,指定版本號安裝,一次性安裝多個包等操作,并提供了相關(guān)命令和注意事項
    2026-05-05
  • 關(guān)于Python中 循環(huán)器 itertools的介紹

    關(guān)于Python中 循環(huán)器 itertools的介紹

    循環(huán)器是對象的容器,包含有多個對象。通過調(diào)用循環(huán)器的next()方法 (__next__()方法,在Python 3.x中),循環(huán)器將依次返回一個對象。直到所有的對象遍歷窮盡,循環(huán)器將舉出StopIteration錯誤。這篇文章將對此做一個詳細(xì)介紹,感興趣的小伙伴請參考下面文字內(nèi)容
    2021-09-09
  • python小程序基于Jupyter實現(xiàn)天氣查詢的方法

    python小程序基于Jupyter實現(xiàn)天氣查詢的方法

    這篇文章主要介紹了python小程序基于Jupyter實現(xiàn)天氣查詢的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • python tkinter界面居中顯示的方法

    python tkinter界面居中顯示的方法

    今天小編就為大家分享一篇python tkinter界面居中顯示的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • python 列表、字典和集合的添加和刪除操作

    python 列表、字典和集合的添加和刪除操作

    今天小編就為大家分享一篇python 列表、字典和集合的添加和刪除操作,有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Pandas實現(xiàn)Dataframe的合并

    Pandas實現(xiàn)Dataframe的合并

    我們知道,在使用pandas處理數(shù)據(jù)的時候,往往會需要合并兩個或者多個DataFrame的操作,那么本文就來介紹一下Pandas實現(xiàn)Dataframe的合并,感興趣的可以了解一下
    2021-06-06

最新評論

汝南县| 察哈| 阿鲁科尔沁旗| 台南市| 黄冈市| 孟津县| 威海市| 吉安县| 泽州县| 新郑市| 林口县| 锦屏县| 当阳市| 大港区| 迁西县| 灯塔市| 泰来县| 五指山市| 桦川县| 嵊泗县| 杭州市| 北安市| 北票市| 双江| 绩溪县| 鸡西市| 斗六市| 邳州市| 阿克陶县| 吉水县| 聂拉木县| 阳泉市| 新宁县| 丰城市| 屯昌县| 通州区| 黑龙江省| 金沙县| 商城县| 育儿| 江孜县|