欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python 按比例獲取樣本數據或執(zhí)行任務的實現代碼

 更新時間:2020年12月03日 09:36:37   作者:授客  
這篇文章主要介紹了Python 按比例獲取樣本數據或執(zhí)行任務,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

按比例獲取樣本數據或執(zhí)行任務

By:授客 QQ:1033553122

開發(fā)環(huán)境

win 10

python 3.6.5

需求

已知每種分類的樣本占比數,及樣本總數,需要按比例獲取這些分類的樣本。比如,我有4種任務要執(zhí)行,分別為任務A,任務B,任務C,任務D, 要求執(zhí)行的總任務次數為100000,且不同分類任務執(zhí)行次數占比為 A:B:C:D = 3:5:7:9,且在宏觀上這些任務同時進行

代碼實現

#!/usr/bin/env python
# -*- coding:utf-8 -*-
 
 
__author__ = 'shouke'
 
import time
from copy import deepcopy
 
 
def main():
 
  class_propotion_map = {'A':3, 'B':5, 'C':7, 'D':7} # 分類及樣本數比例映射
  class_list = [] # 分類
  class_proption_list = [] # 存放分類樣本數比例
 
  for class_type, propotion in class_propotion_map.items(): # 同一個循環(huán),可以保證比例索引和對應分類索引一一對應
    class_list.append(class_type)
    class_proption_list.append(propotion)
 
  temp_class_propotion_list = deepcopy(class_proption_list)
  result = []
 
  t1 = time.time()
  total_sample_num = 100000 #任務執(zhí)行次數
  for i in range(1, total_sample_num+1):
    max_propotion = max(temp_class_propotion_list)
    if max_propotion > 0:
      index = temp_class_propotion_list.index(max_propotion)
      result.append(class_list[index])
      temp_class_propotion_list[index] -= 1
    elif max_propotion == 0 and min(temp_class_propotion_list) == 0:
      temp_class_propotion_list = deepcopy(class_proption_list)
      index = temp_class_propotion_list.index(max(temp_class_propotion_list))
      result.append(class_list[index])
      temp_class_propotion_list[index] -= 1

  t2 = time.time()
  from collections import Counter
  c = Counter(result)
  for item in c.items():
    print(item[0], item[1]/total_sample_num)
  print('耗時:%s'%(t2-t1))
 
main()

運行結果

說明

以上方式大致實現思路就是,獲取每種分類樣本數所占比例副本數據列表,然后每次從中獲取最大比例值,并查找該比例值對應的分類(獲取分類后就可以根據需要構造、獲取分類樣本數據),找到目標分類后,把比例數據副本中該比例值減1,直到最大比例和最小比例都等于0,接著重置比例副本數據為樣本數比例值,重復前面的過程,直到樣本數達到目標樣本總數,這種方式實現的前提是得提前知道樣本總數及不同分類樣本數所占比例,且比例值為整數

到此這篇關于Python 按比例獲取樣本數據或執(zhí)行任務的文章就介紹到這了,更多相關Python獲取樣本數據執(zhí)行任務內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Django 項目重命名的實現步驟解析

    Django 項目重命名的實現步驟解析

    這篇文章主要介紹了Django 項目重命名的實現步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-08-08
  • Python中使用 Selenium 實現網頁截圖實例

    Python中使用 Selenium 實現網頁截圖實例

    這篇文章主要介紹了Python中使用 Selenium 實現網頁截圖實例,Selenium支持Java、C#、Ruby 以及 Python等語言,本文以Python語言為例,需要的朋友可以參考下
    2014-07-07
  • 如何實現刪除numpy.array中的行或列

    如何實現刪除numpy.array中的行或列

    如何實現刪除numpy.array中的行或列?今天小編就為大家分享一篇對刪除numpy.array中行或列的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • matplotlib運行時配置(Runtime Configuration,rc)參數rcParams解析

    matplotlib運行時配置(Runtime Configuration,rc)參數rcParams解析

    這篇文章主要介紹了matplotlib運行時配置(Runtime Configuration,rc)參數rcParams解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • 利用Python實現普通視頻變成動漫視頻

    利用Python實現普通視頻變成動漫視頻

    這篇文章主要為大家詳細介紹了如何利用Python語言實現普通視頻變成動漫視頻效果,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2022-08-08
  • 解決Python 寫文件報錯TypeError的問題

    解決Python 寫文件報錯TypeError的問題

    這篇文章主要介紹了解決Python 寫文件報錯TypeError的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • python實現列表中由數值查到索引的方法

    python實現列表中由數值查到索引的方法

    今天小編就為大家分享一篇python實現列表中由數值查到索引的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Django實現whoosh搜索引擎使用jieba分詞

    Django實現whoosh搜索引擎使用jieba分詞

    這篇文章主要介紹了Django實現whoosh搜索引擎使用jieba分詞,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • python解釋器pycharm安裝及環(huán)境變量配置教程圖文詳解

    python解釋器pycharm安裝及環(huán)境變量配置教程圖文詳解

    這篇文章主要介紹了python解釋器pycharm安裝及環(huán)境變量配置教程圖文詳解,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • Python tornado隊列示例-一個并發(fā)web爬蟲代碼分享

    Python tornado隊列示例-一個并發(fā)web爬蟲代碼分享

    這篇文章主要介紹了Python tornado隊列示例-一個并發(fā)web爬蟲代碼分享,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01

最新評論