Python SciPy-x27;对象对于所需数组太深';子类化rv_continuous时

Python SciPy-x27;对象对于所需数组太深';子类化rv_continuous时,python,numpy,scipy,probability,Python,Numpy,Scipy,Probability,我试图通过子类化生成二维均匀分布 尝试返回我的结果时失败,出现以下错误: ValueError:对象对于所需数组太深 发生了什么事?我的结果有形状(3,3)和类numpy.ndarray-为什么我不能简单地返回一个numpy.ndarray 编辑:还有,我是不是走错了路?是否有一种更简单的方法使用scipy.stats制作二维均匀分布?rv_continuous仅适用于单变量分布。你可以看看我们是如何制作多元分布对象的。目前,没有通用的基类,只有一个预期的接口。好吧,出于我的目的,我通过简单地使

我试图通过子类化生成二维均匀分布

尝试返回我的结果时失败,出现以下错误:

ValueError:对象对于所需数组太深

发生了什么事?我的结果有形状(3,3)和类
numpy.ndarray
-为什么我不能简单地返回一个
numpy.ndarray


编辑:还有,我是不是走错了路?是否有一种更简单的方法使用scipy.stats制作二维均匀分布?

rv_continuous
仅适用于单变量分布。你可以看看我们是如何制作多元分布对象的。目前,没有通用的基类,只有一个预期的接口。

好吧,出于我的目的,我通过简单地使用多变量_范数分布来解决问题。我有点惊讶多元分布在SciPi中如此不发达!
from scipy import stats
class uniform_2d(stats.rv_continuous):   
    def _pdf(self, x, y):
        X, Y = np.meshgrid(x,y)
        result = 1/(max(x)*max(y)) * np.ones_like(X)
        return result

x = y = np.linspace(1,3,3)
uni = uniform_2d(name="uni")
pdf = uni.pdf(x,y)

fig = plt.figure(figsize=(9,5))
ax = fig.add_subplot(111)
ax.pcolor(X,Y,pdf)