• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python random.weibullvariate函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中random.weibullvariate函数的典型用法代码示例。如果您正苦于以下问题:Python weibullvariate函数的具体用法?Python weibullvariate怎么用?Python weibullvariate使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了weibullvariate函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: find_service_time

    def find_service_time(self, n, c):
        """
        Finds the service time function
        """

        if self.mu[c][n][0] == 'Uniform':
            return lambda : uniform(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == 'Deterministic':
            return lambda : self.mu[c][n][1]
        if self.mu[c][n][0] == 'Triangular':
            return lambda : triangular(self.mu[c][n][1], self.mu[c][n][2], self.mu[c][n][3])
        if self.mu[c][n][0] == 'Exponential':
            return lambda : expovariate(self.mu[c][n][1])
        if self.mu[c][n][0] == 'Gamma':
            return lambda : gammavariate(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == 'Normal':
            return lambda : gauss(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == 'Lognormal':
            return lambda : lognormvariate(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == 'Weibull':
            return lambda : weibullvariate(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == 'Custom':
            P, V = zip(*self.parameters[self.mu[c][n][1]])
            probs = list(P)
            cum_probs = [sum(probs[0:i+1]) for i in range(len(probs))]
            values = list(V)
            return lambda : self.custom_pdf(cum_probs, values)
        return False
开发者ID:drvinceknight,项目名称:Ciw,代码行数:28,代码来源:simulation.py


示例2: find_distributions

 def find_distributions(self, n, c, source):
     """
     Finds distribution functions
     """
     if source[c][n] == 'NoArrivals':
         return lambda : 'Inf'
     if source[c][n][0] == 'Uniform':
         return lambda : uniform(source[c][n][1], source[c][n][2])
     if source[c][n][0] == 'Deterministic':
         return lambda : source[c][n][1]
     if source[c][n][0] == 'Triangular':
         return lambda : triangular(source[c][n][1], source[c][n][2], source[c][n][3])
     if source[c][n][0] == 'Exponential':
         return lambda : expovariate(source[c][n][1])
     if source[c][n][0] == 'Gamma':
         return lambda : gammavariate(source[c][n][1], source[c][n][2])
     if source[c][n][0] == 'Lognormal':
         return lambda : lognormvariate(source[c][n][1], source[c][n][2])
     if source[c][n][0] == 'Weibull':
         return lambda : weibullvariate(source[c][n][1], source[c][n][2])
     if source[c][n][0] == 'Custom':
         P, V = zip(*self.parameters[source[c][n][1]])
         probs = list(P)
         cum_probs = [sum(probs[0:i+1]) for i in range(len(probs))]
         values = list(V)
         return lambda : self.custom_pdf(cum_probs, values)
     if source[c][n][0] == 'Empirical':
         if isinstance(source[c][n][1], str):
             empirical_dist = self.import_empirical_dist(source[c][n][1])
             return lambda : choice(empirical_dist)
         return lambda : choice(source[c][n][1])
     return False
开发者ID:gitter-badger,项目名称:Ciw,代码行数:32,代码来源:simulation.py


示例3: gen_lifetime

 def gen_lifetime(self, shape, scale):
     '''Generates a random lifetime for the part using Weibull random numbers.
     If 0 < shape < 1, the part exhibits infant mortality (more failures early in parts' life)
     If shape = 0, the part exhibits constant mortality
     If shape > 1, the part exhibits wear-out (more failures late in parts' life)
     '''
     self.lifetime = self.mttf * random.weibullvariate(alpha=scale, beta=shape)
开发者ID:ccoughlin,项目名称:break_detector,代码行数:7,代码来源:partfailure.py


示例4: valueAt

 def valueAt(self, evaluationTime):
     alpha = evaluateAt(self.alpha, evaluationTime)
     beta = evaluateAt(self.beta, evaluationTime)
     while 1:
         value = random.weibullvariate(alpha, beta)
         if value >= 0.0 and value <= 1.0:
             break
     return value
开发者ID:kunstmusik,项目名称:blue,代码行数:8,代码来源:rng.py


示例5: getIndex

def getIndex(listLength, numOfDigits):
    # index = random.normalvariate(listLength/2, 3)
    index = random.weibullvariate(listLength / 2, numOfDigits * 0.5)
    index = math.ceil(index)
    if index > listLength - 1:
        index = listLength - 1
    if index < 0:
        index = 0
    return int(index)
开发者ID:Lars-H,项目名称:LODSeminar,代码行数:9,代码来源:stddev.py


示例6: weibull

def weibull():
    WEIBULL_USAGE = '''Usage: /weibull?alpha=&lt;integer&gt;&beta=&lt;integer&gt;[k=&lt;integer&gt;&amp;test=true|false]'''

    func = lambda args: random.weibullvariate(alpha=float(args['alpha']), beta=float(args['beta'])) + float(request.args.get('k'))

    alpha = request.args.get('alpha')
    beta = request.args.get('beta')

    return get_response(request, WEIBULL_USAGE, func, None, alpha=alpha, beta=beta)
开发者ID:CloudScale-Project,项目名称:Response-Generator,代码行数:9,代码来源:server.py


示例7: exposure_period

def exposure_period():
    
    SCALE_PAR = 1.10
    SHAPE_PAR = 2.21
    OFFSET = 0.5
    
    t = int(round((random.weibullvariate(SCALE_PAR, SHAPE_PAR) + OFFSET)
                  * TIME_TO_TIMESTEP))
    
    return t
开发者ID:imclab,项目名称:Collocation,代码行数:10,代码来源:Simulate_outbreak.py


示例8: generate_fire_recurrence

    def generate_fire_recurrence(self):

        """ Finds the time to next fire (fire recurrence) based on the scale parameter (63.5% of
        fire Weibull distribution) and the shape parameter (describes the skew of the histogram, shape = 3.5
        represents a normal distribution).

        Rounds the time to next fire to 4 significant figures, for neatness.

        :returns: time_to_next_fire as a float"""

        self.time_to_next_fire = round(weibullvariate(self.scale_parameter, self.shape_parameter),2)
        return self.time_to_next_fire
开发者ID:Fooway,项目名称:landlab,代码行数:12,代码来源:generate_fire.py


示例9: random_guessing

def random_guessing(fileparse):
    prevs = []
    num = 0
    sort_key = lambda x:int(x[0]) if x[0].isdigit() else (float('inf'),x[0])
    corefs = sorted(fileparse.nps.items(), key = sort_key)
    
    for cid in [k for k,v in corefs if not v.get('ref')]:
        if len(prevs) > num and cid.isdigit():
            choice = min(len(prevs), int(round(random.weibullvariate(1.2,7))) + 1)
            fileparse.nps[cid]['ref'] = prevs[-choice]
        if cid.isdigit():
            prevs.append(cid)
开发者ID:charmainekeck,项目名称:PyCoref,代码行数:12,代码来源:rulealgs.py


示例10: WeibullDistribution

def WeibullDistribution():
	results = []
	k = 2
	lamada = 1

	sampleNum = 6000
	for i in range(sampleNum):
		results.append(random.weibullvariate(lamada,k))
	cdf = Cdf.MakeCdfFromList(results)
	myplot.Clf()
	myplot.Cdf(cdf,complement=True,xscale = 'log',yscale = 'log')
	# myplot.Cdf(cdf)
	myplot.show()
开发者ID:elephantzhai,项目名称:Learn,代码行数:13,代码来源:chapter04.py


示例11: randomXValue

def randomXValue(tag, params):
    if tag == "normal":
        mu = number(params.get("mu", 0.0))
        sigma = number(params.get("sigma", 1.0))
        return XValue(lambda: random.normalvariate(mu, sigma))
    if tag == "pnormal":
        mu = number(params.get("mu", 0.0))
        sigma = number(params.get("sigma", 1.0))
        return XValue(lambda: max(random.normalvariate(mu, sigma), 0.0))        
    elif tag == "uniform":
        mn = number(params.get("min", 0.0)) 
        mx = number(params.get("max", 1.0))
        return XValue(lambda: random.uniform(mn, mx))
    elif tag == "triangular":
        low = number(params.get("low", 0.0)) 
        high = number(params.get("high", 1.0))
        mode = number(params.get("mode", 1.0))
        return XValue(lambda: random.triangular(low, high, mode))
    elif tag == "beta":
        alpha = number(params.get("alpha", 0.0)) 
        beta = number(params.get("beta", 1.0))
        return XValue(lambda: random.betavariate(alpha, beta))
    elif tag == "gamma":
        alpha = number(params.get("alpha", 0.0)) 
        beta = number(params.get("beta", 1.0))
        return XValue(lambda: random.gammavariate(alpha, beta))
    elif tag == "lognormal":
        mu = number(params.get("mu", 0.0))
        sigma = number(params.get("sigma", 1.0))
        return XValue(lambda: random.lognormvariate(mu, sigma))
    elif tag == "vonmises":
        mu = number(params.get("mu", 0.0))
        kappa = number(params.get("kappa", 1.0))
        return XValue(lambda: random.vonmisesvariate(mu, kappa))
    elif tag == "pareto":
        alpha = number(params.get("alpha", 0.0))
        return XValue(lambda: random.paretovariate(alpha))
    elif tag == "weibull":
        alpha = number(params.get("alpha", 0.0)) 
        beta = number(params.get("beta", 1.0))
        return XValue(lambda: random.weibullvariate(alpha, beta))
    elif tag == "exponential":
        lamda = number(params.get("lambda", 1.0))
        return XValue(lambda: random.expovariate(lamda))
    else:
        raise InvalidXMLException("unsupported attribute value")
开发者ID:HA-10292678,项目名称:etos,代码行数:46,代码来源:SimDSL.py


示例12: visit_screener

 def visit_screener(self):
     """
         After cleaning
         
         Aggregated:
         
         Lognormal with:
             logarithmic mean: -2.125
             logarithmic std dev: 0.428
         
         Weibull with:
             shape = 2.29  (beta in python)
             scale = 0.142 (alpha in python)
         
         Separated:
         Medical Screening -> Gamma distribution with
                              shape: 4.876
                              rate: 32.55
         Ciprofloxacin Screening -> Gamma distribution with
                              shape: 6.258
                              rate: 47.165
         Doxycycline Screening -> Lognormal distribution with
                             logarithmic mean: -2.165
                             logarithmic std dev: 0.413
     """       
     name = 'screener'
     if self.debug:
         print self.name, "at ",name, simpy.now()
     arrive = simpy.now()
     yield simpy.request, self, self.resources[name]
     wait = simpy.now() - arrive
     self.monitors[name].observe(wait)
     #time = random.lognormvariate(mu=-2.125, sigma=0.428)
     time = random.weibullvariate(alpha=0.142, beta=2.29)
     tib = self.numberOfForms * time
     yield simpy.hold,self,tib
     yield simpy.release, self, self.resources[name]
     
     
     if 'MEDIC' in self.forms:
         for i in self.visit_medic():
             yield i
     else:
         for i in self.visit_dispenser():
             yield i
开发者ID:ivihernandez,项目名称:staff-allocation,代码行数:45,代码来源:Customer.py


示例13: find_distributions

 def find_distributions(self, n, c, kind):
     """
     Finds distribution functions
     """
     if self.source(c, n, kind) == 'NoArrivals':
         return lambda : float('Inf')
     if self.source(c, n, kind)[0] == 'Uniform':
         return lambda : uniform(self.source(c, n, kind)[1],
                                 self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Deterministic':
         return lambda : self.source(c, n, kind)[1]
     if self.source(c, n, kind)[0] == 'Triangular':
         return lambda : triangular(self.source(c, n, kind)[1],
                                    self.source(c, n, kind)[2],
                                    self.source(c, n, kind)[3])
     if self.source(c, n, kind)[0] == 'Exponential':
         return lambda : expovariate(self.source(c, n, kind)[1])
     if self.source(c, n, kind)[0] == 'Gamma':
         return lambda : gammavariate(self.source(c, n, kind)[1],
                                      self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Lognormal':
         return lambda : lognormvariate(self.source(c, n, kind)[1],
                                        self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Weibull':
         return lambda : weibullvariate(self.source(c, n, kind)[1],
                                        self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Normal':
         return lambda : truncated_normal(self.source(c, n, kind)[1],
                                          self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Custom':
         values = self.source(c, n, kind)[1]
         probs = self.source(c, n, kind)[2]
         return lambda : random_choice(values, probs)
     if self.source(c, n, kind)[0] == 'UserDefined':
         return lambda : self.check_userdef_dist(self.source(c, n, kind)[1])
     if self.source(c, n, kind)[0] == 'Empirical':
         if isinstance(self.source(c, n, kind)[1], str):
             empirical_dist = self.import_empirical(self.source(c, n, kind)[1])
             return lambda : random_choice(empirical_dist)
         return lambda : random_choice(self.source(c, n, kind)[1])
     if self.source(c, n, kind)[0] == 'TimeDependent':
         return lambda t : self.check_timedependent_dist(self.source(c, n, kind)[1], t)
     if self.source(c, n, kind)[0] == 'Sequential':
         return lambda : next(self.generators[kind][n][c])
开发者ID:alcarney,项目名称:Ciw,代码行数:44,代码来源:simulation.py


示例14: generate_order

def generate_order(env, res, order, patID, data):
    tfactor = 60  # Minutes to seconds
    while True:
        # Generate some really random processes
        if order == 'food':
            lamb = 5 + 20*(patID % 6)  # In minutes
            k = 3  # Hunger increases over time
            delay = random.weibullvariate(lamb*tfactor, k)
        else:
            a, b = 10, 20+20*(patID % 6)
            mu = random.randint(a, b)  # Random mean in minutes
            sd = 10  # Standard deviation in minutes
            delay = abs(random.normalvariate(mu*tfactor, sd*tfactor))
        yield env.timeout(delay)  # Interarival time
        # Delay is complete, order arrived
        # Start process and return queue time and process time
        (t_arrival, qtime, ptime) = yield env.process(process_order(env,res,order,patID))
        # Update data
        data.append((patID, order, clockTime(t_arrival), round(qtime,3), round(ptime,3)))
开发者ID:Abzollo,项目名称:Stochastic-Simulation-in-VREP,代码行数:19,代码来源:hospital.py


示例15: run

 def run(self, res, sto, pri):
     while True:
         ttf = weibullvariate(alpha, beta)   # time until failure
         yield hold, self, ttf
         failure = now()                     # failure time
         HardDrive.numFailed += 1
         HardDrive.downTime.observe(HardDrive.numFailed)
         if HardDrive.numFailed == critLevel:
             critical.signal()
             HardDrive.numFailed = 0
             HardDrive.downTime.observe(HardDrive.numFailed)
         else:
             yield waitevent, self, critical
         yield get, self, sto, 1
         yield request, self, res, pri
         self.size = self.got[0].capacity
         ttr = meanTtr + expovariate(1.0 / meanTtr)
         yield hold, self, ttr
         yield release, self, res
开发者ID:Whompithian,项目名称:css458-project,代码行数:19,代码来源:datacenter.py


示例16: gen_failure_list

    def gen_failure_list(self, scale, shape, startdate, enddate):
        '''generate a synthetic failure time list based on weibull distribution
         and start/end date time'''
        failure_moments = []
        ttf_list = []

        start = date_to_sec(startdate)
        end = date_to_sec(enddate)

        cur_failure = start

        while True:
            ttf = random.weibullvariate(scale,shape)
            cur_failure += ttf
            if cur_failure < end:
                ttf_list.append(ttf)
                failure_moments.append(sec_to_date(cur_failure))
            else:
                break
        return failure_moments, ttf_list
开发者ID:ido,项目名称:cobalt,代码行数:20,代码来源:qsim.py


示例17: generateRandomNumber

def generateRandomNumber( distribution, duration ):
    randomNumber = -1 

    if distribution == "Lognormal":
        mu = 4
        sigma = 1
        randomNumber = random.lognormvariate(mu, sigma)
    elif distribution == "Exponential":
        lam = 0.02
        randomNumber = random.expovariate(lam)
    elif distribution == "Poisson":
        lam = 10
        randomNumber = numpy.random.poisson(lam)
    elif distribution == "Weibull":
        scale = 4
        shape = 0.6
        randomNumber = random.weibullvariate(scale, shape)


    return int(randomNumber)
开发者ID:mcnevesinf,项目名称:SDN-timebased-rulemanagement,代码行数:20,代码来源:createFlows.py


示例18: find_service_time

    def find_service_time(self, n, c):
        """
        Finds the service time function
        """

        if self.mu[c][n][0] == "Uniform":
            return lambda: uniform(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == "Deterministic":
            return lambda: self.mu[c][n][1]
        if self.mu[c][n][0] == "Triangular":
            return lambda: triangular(self.mu[c][n][1], self.mu[c][n][2], self.mu[c][n][3])
        if self.mu[c][n][0] == "Exponential":
            return lambda: expovariate(self.mu[c][n][1])
        if self.mu[c][n][0] == "Gamma":
            return lambda: gammavariate(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == "Normal":
            return lambda: gauss(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == "Lognormal":
            return lambda: lognormvariate(self.mu[c][n][1], self.mu[c][n][2])
        if self.mu[c][n][0] == "Weibull":
            return lambda: weibullvariate(self.mu[c][n][1], self.mu[c][n][2])
        return False
开发者ID:gitter-badger,项目名称:QNetSim,代码行数:22,代码来源:simulation.py


示例19: visit_dispenser

 def visit_dispenser(self):
     """
         Best fit obtained after cleaning the data:
         Weibull Distribution with:
             shape: 1     (beta in python)
             scale: 0.311 (alpha in python)
     """       
     name = 'dispenser'
     if self.debug:
         print self.name, "at ",name, simpy.now()
     
     arrive = simpy.now()
     yield simpy.request, self, self.resources[name]
     wait = simpy.now() - arrive
     self.monitors[name].observe(wait)
     time = random.weibullvariate(alpha=0.311, beta=1)
     tib = self.numberOfForms * time
     yield simpy.hold,self,tib
     yield simpy.release, self, self.resources[name]
     
     for i in self.visit_exit():
         yield i
开发者ID:ivihernandez,项目名称:staff-allocation,代码行数:22,代码来源:Customer.py


示例20: find_distributions

 def find_distributions(self, n, c, kind):
     """
     Finds distribution functions
     """
     if self.source(c, n, kind) == 'NoArrivals':
         return lambda : float('Inf')
     if self.source(c, n, kind)[0] == 'Uniform':
         return lambda : uniform(self.source(c, n, kind)[1],
                                 self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Deterministic':
         return lambda : self.source(c, n, kind)[1]
     if self.source(c, n, kind)[0] == 'Triangular':
         return lambda : triangular(self.source(c, n, kind)[1],
                                    self.source(c, n, kind)[2],
                                    self.source(c, n, kind)[3])
     if self.source(c, n, kind)[0] == 'Exponential':
         return lambda : expovariate(self.source(c, n, kind)[1])
     if self.source(c, n, kind)[0] == 'Gamma':
         return lambda : gammavariate(self.source(c, n, kind)[1],
                                      self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Lognormal':
         return lambda : lognormvariate(self.source(c, n, kind)[1],
                                        self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Weibull':
         return lambda : weibullvariate(self.source(c, n, kind)[1],
                                        self.source(c, n, kind)[2])
     if self.source(c, n, kind)[0] == 'Custom':
         P, V = zip(*self.source(c, n, kind)[1])
         probs, values = list(P), list(V)
         return lambda : nprandom.choice(values, p=probs)
     if self.source(c, n, kind)[0] == 'UserDefined':
         return lambda : self.check_userdef_dist(self.source(c, n, kind)[1])
     if self.source(c, n, kind)[0] == 'Empirical':
         if isinstance(self.source(c, n, kind)[1], str):
             empirical_dist = self.import_empirical(self.source(c, n, kind)[1])
             return lambda : nprandom.choice(empirical_dist)
         return lambda : nprandom.choice(self.source(c, n, kind)[1])
开发者ID:geraintpalmer,项目名称:Ciw,代码行数:37,代码来源:simulation.py



注:本文中的random.weibullvariate函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python random.Random类代码示例发布时间:2022-05-26
下一篇:
Python random.vonmisesvariate函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap