0
我的数据具有以下形状:18x60x4 基本上,我有18个变量,每个变量由60个点向量描述。 我有4个示例数据点为每个向量。如何计算n维变量之间的协方差
当我打电话np.cov(数据集)我得到以下错误:
shapes (18,60,4) and (4,60,18) not aligned: 4 (dim 2) != 60 (dim 1)
我怎样才能解决这个问题?我找不到类似的帖子。
谢谢。
我的数据具有以下形状:18x60x4 基本上,我有18个变量,每个变量由60个点向量描述。 我有4个示例数据点为每个向量。如何计算n维变量之间的协方差
当我打电话np.cov(数据集)我得到以下错误:
shapes (18,60,4) and (4,60,18) not aligned: 4 (dim 2) != 60 (dim 1)
我怎样才能解决这个问题?我找不到类似的帖子。
谢谢。
我认为你应该把18个60维变量当作18*60=1080
变量。然后你可以计算协方差。如果m
是你(18,60,4)
阵列做到以下几点:
covar = np.cov(m.reshape(18*60, 4)) #or np.cov(m.reshape(18*60, -1))
然后你就可以重塑再次柯阀,以便它显示你的变量的维度:
covar = covar.reshape(18,60,18,60)
可以包括代码,可以重现这个错误? (最好是最低限度) –
如果你看看'help(mp.cov)'它确实需要一维或二维矩阵,试着看看numpy上的其他文档,看看你是否在寻找什么 –