在SciPy中的多变量正常采样函数的帮助资源中,它们给出了以下示例:
x,y = np.random.multivariate_normal(mean,cov,5000).T
Run Code Online (Sandbox Code Playgroud)
我的问题很基本:最后的.T究竟做了什么?
非常感谢,我知道这很简单,但很难在Google中查找".T".
Sve*_*ach 66
的.T
访问属性T
的对象,这恰好是一个NumPy的阵列组成.该T
属性是数组的转置,请参阅文档.
显然你正在飞机上创建随机坐标.输出multivariate_normal()
可能如下所示:
>>> np.random.multivariate_normal([0, 0], [[1, 0], [0, 1]], 5)
array([[ 0.59589335, 0.97741328],
[-0.58597307, 0.56733234],
[-0.69164572, 0.17840394],
[-0.24992978, -2.57494471],
[ 0.38896689, 0.82221377]])
Run Code Online (Sandbox Code Playgroud)
该矩阵的转置是:
array([[ 0.59589335, -0.58597307, -0.69164572, -0.24992978, 0.38896689],
[ 0.97741328, 0.56733234, 0.17840394, -2.57494471, 0.82221377]])
Run Code Online (Sandbox Code Playgroud)
可以通过顺序拆包方便地分开x
和分开y
.