Допустим, у нас есть матрица из 3 строк и 2 столбцов как mat
, и я хочу применить к каждой 3 строке одну из функций списка what_functions_to_apply_list
, для которых у меня есть определение.Таким образом, выходное значение np.apply_along_axis
должно быть в 3 строки больше выходного размера функций.
Как я могу сделать это без зацикливания векторным способом?
Например,
def f1(inp1,inp2):
return out1, out2
, где
functions_dic = {'f1': func1, 'f2':func2, 'f3':func3}
what_functions_to_apply_list = ['f1','f1','f2']
funcs_inputs = [[inp11,inp12], [inp21,inp32], [inp31,inp32]]
mat = np.ones((3, 2))
np.apply_along_axis(what_functions_to_apply_list , 1, mat)