我刚从numpy开始,试图创建一个函数,它接受数组(x),将其转换为np.array,并返回一个numpy数组,在每个元素后面添加0,0,0,0
应该是这样的:
输入数组:[4,5,6]
输出:[4,0,0,0,0,5,0,0,0,0,6,0,0,0,0]
我尝试了以下方法:
import numpy as np
x = np.asarray([4,5,6])
y = np.array([])
for index, value in enumerate(x):
y = np.insert(x, index+1, [0,0,0,0])
print(y)
返回:
[4 0 0 0 0 5 6]
[4 5 0 0 0 0 6]
[4 5 6 0 0 0 0]
所以基本上我需要将输出合并到一个numpy数组中,而不是三个列表中
有人知道怎么解决这个问题吗
非常感谢
使用numpy.zeros函数
事实上,您可以“强制”索引为0、5和10的所有值变为4、5和6
所以uuuuuu0[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
变成[4 0 0 0 0 5 0 0 0 0 0 6 0 0 0 0 0]
我没有使用numpy来解决此问题,但此代码似乎返回了您所需的输出:
我希望这有帮助
相关问题 更多 >
编程相关推荐