【发布时间】:2020-12-16 05:33:38
【问题描述】:
我正在尝试从集合 J_U 的矩阵中删除所有 0 列。但是我收到了这个错误:“索引 4 超出了轴 1 的范围,大小为 4”我认为问题是每次删除 0 列时每个矩阵的维度都会减小,并且不允许它转到2*p 列。我认为这是问题所在,但我不确定如何在没有 0 向量的情况下迭代 J_U 中的每个矩阵。我的实际代码稍大,我的 J_U 的列不是 0。这只是一个玩具代码,这就是为什么它只是一个 0 的矩阵。为了简单起见,我只是展示了最少的代码:)!我希望这已经足够了!任何意见表示赞赏。
n = 5
p = 4
T = 5
J_U = {}
for i in range(n):
J_U["J_U" + str(i)] = np.zeros((T,2*p))
for j in range(n):
for i in range(2*p):
if np.all((J_U['J_U' + str(j)][:,i])==0):
J_U['J_U' + str(j)] = np.delete(J_U['J_U' + str(j)],i,1)
【问题讨论】:
标签: python arrays numpy for-loop matrix