Python 函数定义是否正确?

Python 函数定义是否正确?,python,function,probability-distribution,Python,Function,Probability Distribution,我有一个定义为p(r,t)的pdf。我正在尝试用python定义pdf,但我对该程序是新手,不确定我是否正确定义了它。这是我试图定义的pdf 我正在尝试绘制pdf,但我一直得到一个错误,所以我想确认我上面的内容是正确的,然后再继续。任何帮助都将不胜感激!另外,我用G表示gamma函数,用gamma表示gamma变量 错误的来源:我创建了一个100x1000样本,为了简单起见,我让gamma=2和d=1 def pdf(gamma, d, r, t, D): return (1 / np.pow

我有一个定义为p(r,t)的pdf。我正在尝试用python定义pdf,但我对该程序是新手,不确定我是否正确定义了它。这是我试图定义的pdf

我正在尝试绘制pdf,但我一直得到一个错误,所以我想确认我上面的内容是正确的,然后再继续。任何帮助都将不胜感激!另外,我用G表示gamma函数,用gamma表示gamma变量

错误的来源:我创建了一个100x1000样本,为了简单起见,我让gamma=2和d=1

def pdf(gamma, d, r, t, D): 
return (1 / np.power(dispersion(gamma, d, t, D), (d / 2))) * np.exp((-A(gamma, d) * np.power((r / np.sqrt(g(gamma, d))), gamma)) + B(gamma, d))

r = range(100)
t = range(1000)
gamma = 2
d = 1
D = 2
p = pdf(gamma, d, r, t, D)
plt.plot(r, p)
plt.show()

TypeError: unsupported operand type(s) for *: 'int' and 'range'

内置的
range
函数不支持乘法运算。相反,您希望使用
numpy
数组
,在本例中,您可以使用
arange()
函数创建该数组

import numpy as np
import matplotlib.pyplot as plt

def pdf(gamma, d, r, t, D): 
    return (1 / np.power(dispersion(gamma, d, t, D), (d / 2))) * np.exp((-A(gamma, d) * np.power((r / np.sqrt(g(gamma, d))), gamma)) + B(gamma, d))

r = np.arange(100)
t = np.arange(1000)
gamma = 2
d = 1
D = 2
p = pdf(gamma, d, r, t, D)
plt.plot(r, p)
plt.show()

请发布完整的错误。我的错误是因为我在尝试绘制pdf时没有定义变量,但是我不确定pdf的支持程度。如果你没有显示错误和导致错误的代码,那么没有人能够帮助你。我最初的问题是我定义的函数是否正确,然而,如果他们是,那么我不知道如何绘制我的pdf。我使用了类似的绘图代码,所以我没有意识到这是我的错误。非常感谢。
import numpy as np
import matplotlib.pyplot as plt

def pdf(gamma, d, r, t, D): 
    return (1 / np.power(dispersion(gamma, d, t, D), (d / 2))) * np.exp((-A(gamma, d) * np.power((r / np.sqrt(g(gamma, d))), gamma)) + B(gamma, d))

r = np.arange(100)
t = np.arange(1000)
gamma = 2
d = 1
D = 2
p = pdf(gamma, d, r, t, D)
plt.plot(r, p)
plt.show()