格式化 numpy 数组直到达到需要的长度 Python
Formatting numpy array until it gets to needed length Python
如何编写代码,通过附加 append_val
直到到达数组的 length
来完成数组 a
。因此 a
的长度为 6,预期长度为 10,因此它将追加 append_val
直到达到本例中所需的长度 10
。我怎样才能做一个 numpy 函数来获得预期的输出。
import numpy as np
length = 10
append_val = 0
a = np.array([12,34,1,3,12,34])
预期输出:
[12,34,1,3,12,34,0,0,0,0]
import numpy as np
a = np.array([12,34,1,3,12,34])
a.resize(10)
print(a)
我认为 append_val
可以改变,如果这是正确的,例如 append_val
可以是 one
或 two
或...,你可以试试这个:
import numpy as np
length = 10
append_val = 1
a = np.array([12,34,1,3,12,34])
out = []
for i in range(length):
try:
out.append(a[i])
except IndexError:
out.append(append_val)
print(out)
输出:
[12, 34, 1, 3, 12, 34, 1, 1, 1, 1]
如果 append_val
不变,您可以使用
a = np.pad(a, (0, length-len(a)), "constant", constant_values=append_val)
如何编写代码,通过附加 append_val
直到到达数组的 length
来完成数组 a
。因此 a
的长度为 6,预期长度为 10,因此它将追加 append_val
直到达到本例中所需的长度 10
。我怎样才能做一个 numpy 函数来获得预期的输出。
import numpy as np
length = 10
append_val = 0
a = np.array([12,34,1,3,12,34])
预期输出:
[12,34,1,3,12,34,0,0,0,0]
import numpy as np
a = np.array([12,34,1,3,12,34])
a.resize(10)
print(a)
我认为 append_val
可以改变,如果这是正确的,例如 append_val
可以是 one
或 two
或...,你可以试试这个:
import numpy as np
length = 10
append_val = 1
a = np.array([12,34,1,3,12,34])
out = []
for i in range(length):
try:
out.append(a[i])
except IndexError:
out.append(append_val)
print(out)
输出:
[12, 34, 1, 3, 12, 34, 1, 1, 1, 1]
如果 append_val
不变,您可以使用
a = np.pad(a, (0, length-len(a)), "constant", constant_values=append_val)