Код: Выделить всё
import numpy as np
A = np.array([[23, 43, 23, 110, 5],
[83, 32, 12, 123, 4],
[58, 41, 59, 189, 1],
[93, 77, 22, 170, 3]])
Код: Выделить всё
np.array([[23, 43, 23, 110, 5],
[23, 43, 23, 110, 4],
[23, 43, 23, 110, 3],
[23, 43, 23, 110, 2],
[23, 43, 23, 110, 1],
[23, 43, 23, 110, 0],
[83, 32, 12, 123, 4],
[83, 32, 12, 123, 3],
[83, 32, 12, 123, 2],
[83, 32, 12, 123, 1],
[83, 32, 12, 123, 0],
[58, 41, 59, 189, 1],
[58, 41, 59, 189, 0],
[93, 77, 22, 170, 3],
[93, 77, 22, 170, 2],
[93, 77, 22, 170, 1],
[93, 77, 22, 170, 0]])
Код: Выделить всё
new_rows = []
for i, row in enumerate(A):
new = A[i, 4] - 1
while new >= 0:
new_row = row.copy()
new_row[4] = new
new_rows.append(new_row)
new -= 1
new_A = np.vstack([A, np.array(new_rows)])
print(new_A)
Код: Выделить всё
[[ 23 43 23 110 5]
[ 83 32 12 123 4]
[ 58 41 59 189 1]
[ 93 77 22 170 3]
[ 23 43 23 110 4]
[ 23 43 23 110 3]
[ 23 43 23 110 2]
[ 23 43 23 110 1]
[ 23 43 23 110 0]
[ 83 32 12 123 3]
[ 83 32 12 123 2]
[ 83 32 12 123 1]
[ 83 32 12 123 0]
[ 58 41 59 189 0]
[ 93 77 22 170 2]
[ 93 77 22 170 1]
[ 93 77 22 170 0]]
Подробнее здесь: https://stackoverflow.com/questions/700 ... ight-after