我在 python 中创建连续分布时遇到了麻烦,它真的开始让我烦恼。我已经阅读并重新阅读了这个 python 指南(scipy 指南),它并没有帮助我的问题。
我的代码如下:
import sys
import scipy.stats
import numpy
def CDF_Random(N,NE,E,SE,S,SW,W,NW,Iterations):
WindDir = [0,45,90,135,180,225,270,315]
Freq = N,NE,E,SE,S,SW,W,NW
mydist = scipy.stats.rv_continuous(#My problem is what to write here)
cdf_rand=mydist.rvs(size=Iterations)
return (cdf_rand)
if __name__ == '__main__':
N = float(sys.argv[1])
NE = float(sys.argv[2])
E = float(sys.argv[3])
SE = float(sys.argv[4])
S = float(sys.argv[5])
SW = float(sys.argv[6])
W = float(sys.argv[7])
NW = float(sys.argv[8])
Iterations = float(sys.argv[9])
numpy.set_printoptions(threshold=Iterations)
sys.stdout.write(str(CDF_Random(N,NE,E,SE,S,SW,W,NW,Iterations)))
Run Code Online (Sandbox Code Playgroud)
正如您在阅读代码时所看到的,我的问题是知道在括号中放入什么来创建连续分布。scipy.stats.rv_continuous(#what to put here)。
我尝试了很多不同的方法,主要是本文档(scipy 指南)中建议的方法,例如将我的上限和下限值a=,b=设置为 …