У меня есть следующая функция, которая корректно работает с одномерным массивом:
def transform(X, a=1):
X1= X.copy()
for i in range(0,len(X1)):
if (i+1) % 2 == 0:
X1[i] = pow(X1[i], 2)
else:
X1[i] = a
A= X1[::-1]
result=np.concatenate((X, A))
print(result)
Но она не работает с 2-мя размерными массивами и возвращает следующую ошибку:
Ввод: [[1,2,3,4,5], [1,2,3,4,5]]
TypeError: неподдерживаемые типы операндов для ** или pow (): 'list' и 'int'
Мне нужно, чтобы он вывел массив того же размера, что и X
Пример :
вход: [[1,2,3,4,5], [1,2,3,4,5]]
выход: ([[1, 2, 3, 4 , 5, 125, 1, 27, 1, 1], [1, 2, 3, 4, 5, 125, 1, 27, 1, 1]]).