# Functional programming

`apply_along_axis`(func1d, axis, arr, *args, ...) | Apply a function to 1-D slices along the given axis.
`apply_over_axes`(func, a, axes) | Apply a function repeatedly over multiple axes.
`vectorize`([pyfunc, otypes, doc, excluded, ...]) | Returns an object that acts like pyfunc, but takes arrays as input.
`frompyfunc`(func, /, nin, nout, *[, identity]) | Takes an arbitrary Python function and returns a NumPy ufunc.
`piecewise`(x, condlist, funclist, *args, **kw) | Evaluate a piecewise-defined function.