在python中存储每次循环获得的矩阵

举个简单的例子,在matlab上我经常这么做:(只是个例子,具体数据太复杂就不列了)

err=[];
C=[M1;M2;M3;M4;M5;M6]  %每一个M都是一个4*12的矩阵
X=[X1;X2;X3;X4;X5;X6]  %每一个X都是一个4*12的矩阵
for i=1:6
  err=[err;abs(C-X)]
end

这样的话每一次循环得到的err矩阵都能叠加起来然后展示给我看。

现在我想在python上也想这样把每次循环的结果都存储起来(后面的计算要用),我应该怎么做。

提前谢过各位大佬了!

 

用numpy.matrix运算,这样写:

import numpy as np

C = [np.mat(np.random.rand(4,12)) for _ in range(6)]
X = [np.mat(np.random.rand(4,12)) for _ in range(6)]
err={}#定义一字典变量便于后续调用
for i in range(len(C)):
    err.update({f'CX{i}':abs(C[i]-X[i])})#将矩阵运算结果保存到字典中
print(err)
print(err['CX0'])#用字典键名来提取矩阵。

 

循环里的err打错了,应该是 err=[err;abs(C(i)-X(i))]

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632