Numpy: рдмрдЧ: np.vectorize () рдлрд╝рдВрдХреНрд╢рди рдкрд╣рд▓реЗ рддрддреНрд╡ рдкрд░ рджреЛ рдмрд╛рд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ (рдЬреИрд╕рд╛ рдХрд┐ рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдПрдХ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╡рд╕реНрддреБ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ)

рдХреЛ рдирд┐рд░реНрдорд┐рдд 8 рдорд╛рд░реНрдЪ 2017  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: numpy/numpy

рдореЗрд░реЗ рдкрд╛рд╕ рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИред рдореИрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП np.vectorize рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рд╕реВрдЪреА рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╢рдмреНрджрдХреЛрд╢ рдХреЗ рд▓рд┐рдП рд╢рдмреНрджрдХреЛрд╢ рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗрдХреНрдЯрд░рд╛рдЗрдЬрд╝ рдкрд╣рд▓реЗ рддрддреНрд╡ рдкрд░ рджреЛ рдмрд╛рд░ рдЕрднрд┐рдирдп рдХрд░ рд░рд╣рд╛ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИ рдЬрд┐рд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ? (рд╢рд╛рдпрдж рдЗрд╕ рддрдереНрдп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдХрд┐ рдкрд╣рд▓реЗ рддрддреНрд╡ рдкрд░ рдЪреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЛ рд╡реЗрдХреНрдЯрд░рд╛рдЗрдЬрд╝ рдХрд░реЗрдВ?) рдиреАрдЪреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдорд╛рдорд▓реЗ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рд╣реИрдВ:

рдХреЛрдИ рд╢рдмреНрджрдХреЛрд╢ рд╕рдВрд╢реЛрдзрди рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдорд╛рдорд▓рд╛:

def fcn1(x):
    return x['b']
a = [{'b': 1} for _ in range(3) ]
print(a)
print(np.vectorize(fcn1)(a))
print(a, '\n\n')

рдЙрддреНрдкрд╛рджрди:

[{'b': 1}, {'b': 1}, {'b': 1}]
[1 1 1]
[{'b': 1}, {'b': 1}, {'b': 1}]

рдЕрдм рд╢рдмреНрджрдХреЛрд╢ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдкрд╣рд▓реЗ рддрддреНрд╡ рд╕реЗ рджреЛ рдмрд╛рд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ:

def fcn2(x):
    x['b'] += 1
    return x['b']
a = [{'b': 1} for _ in range(3) ]
print(a)
print(np.vectorize(fcn2)(a))
print(a, '\n\n')

рдЙрддреНрдкрд╛рджрди:

[{'b': 1}, {'b': 1}, {'b': 1}]
[3 2 2]
[{'b': 3}, {'b': 2}, {'b': 2}]  

рдмрдЧ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╕рдВрд╢реЛрдзрди рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:

def fcn3(x):
    x['b'] *= 2
    return x['b']
a = [{'b': 1} for _ in range(3) ]
print(a)
print(np.vectorize(fcn3)(a))
print(a, '\n\n')

рдЙрддреНрдкрд╛рджрди:

[{'b': 1}, {'b': 1}, {'b': 1}]
[4 2 2]
[{'b': 4}, {'b': 2}, {'b': 2}]    

рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд░рд┐рдЯрд░реНрди рд╡реИрд▓реНрдпреВ рдкреНрд░рджрд╛рди рдХрд┐рдП рдмрд┐рдирд╛ рд╣реА рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рдХрд┐ рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ):

def fcn4(x):
    x['b'] += 1
a = [{'b': 1} for _ in range(3) ]
print(a)
np.vectorize(fcn4)(a)
print(a, '\n\n')

рдЙрддреНрдкрд╛рджрди:

[{'b': 1}, {'b': 1}, {'b': 1}]
[{'b': 3}, {'b': 2}, {'b': 2}]

рдФрд░ рд╡реИрд╕реЗ, рд▓рдВрдмрд╛рдИ 3 рдХреА рд╕реВрдЪреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдЦрд╛рд╕ рдирд╣реАрдВ рд╣реИ, рдЖрдк рдЗрд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рддрддреНрд╡ рдХреЗ рджреЛрд╣рд░реЗ-рд╕рдВрд╢реЛрдзрд┐рдд рд╣реЛрдиреЗ рдХреЗ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ Numpy рд╕рдВрд╕реНрдХрд░рдг 1.11.3 рдФрд░ 1.12.0 рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рдкреБрд╖реНрдЯрд┐ рдХреА рд╣реИ

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
рдореБрдЭреЗ рдПрдХ рдРрд╕рд╛ рдХрд╛рдо рдорд┐рд▓рд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЗрд╕рдХреА рдкреБрд╖реНрдЯрд┐ "рдкрд╣рд▓реЗ рддрддреНрд╡ рдкрд░ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг" рднреА рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк otypes рддрд░реНрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрд╣рд▓рд╛ рддрддреНрд╡ рджреЛ рдмрд╛рд░ рд╣рд┐рдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ:

def fcn(x):
    x['b'] += 1
    return x['b']
a = [{'b': 1} for _ in range(3)]
print a
print np.vectorize(fcn, otypes=[dict])(a)
print a, '\n\n'

рдЙрддреНрдкрд╛рджрди:

[{'b': 1}, {'b': 1}, {'b': 1}]
[2 2 2]
[{'b': 2}, {'b': 2}, {'b': 2}]

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

"рдпрджрд┐ рдУрдЯреНрд╕ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдЙрдЯрдкреБрдЯ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдлрд╝рдВрдХреНрд╢рди рдкрд░ рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдХреЙрд▓ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреИрд╢ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рджреЛ рдмрд╛рд░ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдХреИрд╢, рдореВрд▓ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓рдкреЗрдЯрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдмрд╛рдж рдХреА рдХреЙрд▓ рдХреЛ рдзреАрдорд╛ рдХрд░ рджреЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓ рдРрд╕рд╛ рдХрд░реЗрдВ рдпрджрд┐ рдЖрдкрдХрд╛ рдлрд╝рдВрдХреНрд╢рди рдорд╣рдВрдЧрд╛ рд╣реИред "
https://docs.scipy.org/doc/numpy/reference/generated/numpy.vectorize.html

рддреЛ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, рд▓реЗрдХрд┐рди рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрд▓реНрдЯрд╛ рд╣реИред рддреЛ рд╢рд╛рдпрдж рдмрдЧ рдлрд┐рдХреНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрд╕рдХреА рдЕрдзрд┐рдХ рд╡реГрджреНрдзрд┐ред

рд╕рднреА 7 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореИрдВрдиреЗ рдЕрднреА рдЕрдкрдиреА рдкреЛрд╕реНрдЯ рдХреЛ рдПрдХ рдирдП рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдкреНрд░рдердо рдЖрдЗрдЯрдо рдкреНрд░рдХрд╛рд░ рдЖрдИрдПрд╕ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ

рд╕рд░рд▓ рдкрд░реАрдХреНрд╖рдг:

a = np.array([1, 2, 3])
def f(x):
    print('got', x)
    return x
fv = np.vectorize(f)
y = fv(a)

рджреЗрддрд╛ рд╣реИ:

got 1
got 1
got 2
got 3

"рдпрджрд┐ рдУрдЯреНрд╕ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдЙрдЯрдкреБрдЯ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдлрд╝рдВрдХреНрд╢рди рдкрд░ рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдХреЙрд▓ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреИрд╢ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рджреЛ рдмрд╛рд░ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдХреИрд╢, рдореВрд▓ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓рдкреЗрдЯрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдмрд╛рдж рдХреА рдХреЙрд▓ рдХреЛ рдзреАрдорд╛ рдХрд░ рджреЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓ рдРрд╕рд╛ рдХрд░реЗрдВ рдпрджрд┐ рдЖрдкрдХрд╛ рдлрд╝рдВрдХреНрд╢рди рдорд╣рдВрдЧрд╛ рд╣реИред "
https://docs.scipy.org/doc/numpy/reference/generated/numpy.vectorize.html

рддреЛ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, рд▓реЗрдХрд┐рди рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрд▓реНрдЯрд╛ рд╣реИред рддреЛ рд╢рд╛рдпрдж рдмрдЧ рдлрд┐рдХреНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрд╕рдХреА рдЕрдзрд┐рдХ рд╡реГрджреНрдзрд┐ред

рдЖрд╣, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдореИрдВрдиреЗ рд╕рднреА рдбреЙрдХреНрд╕ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдирд╣реАрдВ рдкрдврд╝рд╛ред рдпрд╣ рджреЛрд╣рд░реА рдХреЙрд▓ рдХреЗ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдзреАрдореА рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдХреАрдордд рдкрд░ред рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП рдЗрд╕ рджреЛрд╣рд░реЗ рдХреЙрд▓рд┐рдВрдЧ рдХреЛ рд░реЛрдХрдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ?

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, numpy/lib/function_base.py vectorize _get_ufunc_and_otypes() , рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

inputs = [arg.flat[0] for arg in args]
outputs = func(*inputs)

рд╕реЗрд╡рд╛:

#earlier
import copy

...

inputs = copy.deepcopy([arg.flat[0] for arg in args])
outputs = func(*inputs)

рдФрд░ рдлрд┐рд░ рдЖрдкрдХреЛ рдХреИрд╢рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдпрд╛ рдУрдЯреАрдкреА рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рддрддреНрд╡реЛрдВ рдХреЛ рджреЛ рдмрд╛рд░ рдорд╛рд░рдиреЗ рд╕реЗ рдмрдЪрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рдЕрдирднрд┐рдЬреНрдЮ рд╣реВрдВ рдХрд┐ рдХреИрд╢рд┐рдВрдЧ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд┐рддрдирд╛ рдкреНрд░рджрд░реНрд╢рди рд╣рд┐рдЯ рд╣реЛрдЧрд╛ред

рдореИрдВ рд╕рд┐рд░реНрдл рдпрд╣ рд╕рдордЭ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреИрд╢рд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдорд╣рдВрдЧреА рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рди рдХрд┐ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдХрд░ рдПрдХ рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рд╡рд╕реНрддреБ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреИрд╢рд┐рдВрдЧ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рд╣рд┐рдЯ рдХреЗ рдмрд┐рдирд╛ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╡рд╕реНрддреБ рд╕рдВрд╢реЛрдзрди рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬреЛ рдПрдХ рд▓рдВрдмреЗ рд╕рдордп рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рд╕рдордп рдерд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рдмрдбрд╝реА рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕рд░рдгрд┐рдпреЛрдВ рдкрд░ рд╡реЗрдХреНрдЯрд░рдХреГрдд рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдзрд┐рдХ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рд░реВрдк рд╕реЗ рдЧрд╣рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рддрддреНрд╡ рдХреА рдПрдХ рдЧрд╣рд░реА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рддреЛ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╣реЛрдирд╛ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ otype рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдХрд╣реЗрдВ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рддрдм рддрдХ рд╣рд┐рдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рддрдХ otype рдмрдбрд╝реЗ рдХреЗ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджрд┐рд╖реНрдЯ рди рд╣реЛред рд╡рд╕реНрддреБрдУрдВред @ рдПрд░рд┐рдХ-рд╡реЗрд╕рд░ рдЖрдкрдХреЛ рдХреНрдпрд╛ рд▓рдЧрддрд╛ рд╣реИ?

copy.deepcopy() рдХрдИ рдЗрдирдкреБрдЯ рдкрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ рдПрдХ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред

рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ vectorize рдХреЗ рдХреЛрд░ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ numpy.frompyfunc рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реБрдиреНрди ufunc рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдЖрдВрддрд░рд┐рдХ рд▓реВрдк рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо np.apply_along_axis рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд╕реА рдореЗрдВ рд▓реВрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА (рдЬреИрд╕реЗ frompyfunc рдирд┐рд░реНрдорд╛рдг ufunc рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ)ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

perezpaya picture perezpaya  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Foadsf picture Foadsf  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MorBilly picture MorBilly  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

keithbriggs picture keithbriggs  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dcsaba89 picture dcsaba89  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ