2024-09-29 21:54:43 发布
网友
八度编码:
for j = 0:5 k(:, end+1) = (X1.^j)
numpy代码:
for j in range(0,5): k[?]=np.power(X1,j)
这里我想给k-array添加列,假设k=(10,1)dim,我想在循环中使它(10,5)dim,上面是倍频程的代码,切片非常直接,但是有没有办法在每次迭代中切片k并插入列。如果有人能更好地清理这个切片,请告诉我
这就是你要找的吗
np.tile(np.arange(5)**2,10).reshape(-1,5)
输出:
[[ 0 1 4 9 16] [ 0 1 4 9 16] [ 0 1 4 9 16] [ 0 1 4 9 16] [ 0 1 4 9 16] [ 0 1 4 9 16] [ 0 1 4 9 16] [ 0 1 4 9 16] [ 0 1 4 9 16] [ 0 1 4 9 16]]
但是,如果你坚持使用循环,这是一个坏主意:
k = np.zeros((10,1), dtype=int) print(k) for j in np.arange(5): k = np.hstack((k,[[j**2]]*k.shape[0])) [[ 0 0 1 4 9 16] [ 0 0 1 4 9 16] [ 0 0 1 4 9 16] [ 0 0 1 4 9 16] [ 0 0 1 4 9 16] [ 0 0 1 4 9 16] [ 0 0 1 4 9 16] [ 0 0 1 4 9 16] [ 0 0 1 4 9 16] [ 0 0 1 4 9 16]]
这就是你要找的吗
输出:
但是,如果你坚持使用循环,这是一个坏主意:
相关问题 更多 >
编程相关推荐