Python:通过Python函数拖动scipy.stats对象
我试图在函数中分配一个Python:通过Python函数拖动scipy.stats对象,python,function,statistics,scipy,Python,Function,Statistics,Scipy,我试图在函数中分配一个scipy.statsrv对象并返回它: def Prior(): priorObj = norm(loc=1, scale=1) return priorObj 如何保存rv对象,包括其方法,并通过 previor.pdf() 及 之前的cdf(0.5) 我是否必须复制对象才能通过python函数传递它?创建函数后,您必须调用它并将返回的rv对象分配给以下对象 def Prior(): priorObj = norm(loc=1, scale=1
scipy.stats
rv
对象并返回它:
def Prior():
priorObj = norm(loc=1, scale=1)
return priorObj
如何保存rv
对象,包括其方法,并通过
previor.pdf()
及
之前的cdf(0.5)
我是否必须复制对象才能通过python函数传递它?创建函数后,您必须调用它并将返回的
rv
对象分配给以下对象
def Prior():
priorObj = norm(loc=1, scale=1)
return priorObj
prior = Prior()
prior.pdf(0.5)
# etc
如果您不调用函数并将其分配给某个对象,而是尝试使用函数本身,那么您将尝试访问函数本身的
pdf
方法,这将引发AttributeError
谢谢。我的函数调用中缺少括号。我可以跳过prior=prior()步骤并立即调用prior().cdf(0.5)。可以,但如果随后调用prior().cdf(0.6)
,则必须重新运行函数prior
,而如果将其保存到prior
,则该函数可用。我想这取决于您的用例。