# numpy.frompyfunc() in Python

• Last Updated : 29 Jun, 2021

numpy.frompyfunc(func, nin, nout) function allows to create an arbitrary Python function as Numpy ufunc (universal function).

Parameters:
func: [A python function object ] An arbitrary python function
nin: [int] Number of input arguments to that function.
nout: [int] Number of objects returned by that function.
Return: A Numpy universal function object.

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

For example, abs_value = numpy.frompyfunc(abs, 1, 1) will create a ufunc that will return the absolute values of array elements.

Code #1:

## Python3

 `# Python code to demonstrate the``# use of numpy.frompyfunc``import` `numpy as np` `# create an array of numbers``a ``=` `np.array([``34``, ``67``, ``89``, ``15``, ``33``, ``27``])` `# python str function as ufunc``string_generator ``=` `np.frompyfunc(``str``, ``1``, ``1``)` `print``(``"Original array-"``, a)``print``(``"After conversion to string-"``, string_generator(a))`
Output:
```Original array- [34 67 89 15 33 27]
After conversion to string- ['34' '67' '89' '15' '33' '27']```

Code #2:

## Python3

 `# Python code to demonstrate``# user-defined function as ufunc``import` `numpy as np` `# create an array of numbers``a ``=` `np.array([``345``, ``122``, ``454``, ``232``, ``334``, ``56``, ``66``])` `# user-defined function to check``# whether a no. is palindrome or not``def` `fun(x):``    ``s ``=` `str``(x)``    ``return` `s[::``-``1``]``=``=` `s``    ` `# 'check_palindrome' as universal function``check_palindrome ``=` `np.frompyfunc(fun, ``1``, ``1``)``print``(``"Original array-"``, a)``print``(``"Checking of number as palindrome-"``,``                      ``check_palindrome(a))`
Output:
```Original array- [345 122 454 232 334  56  66]
Checking of number as palindrome- [False False True True False False True]```

Note: This custom ufunc created using frompyfunc always accept a ndarray as an input argument and also return a ndarray object as output.

My Personal Notes arrow_drop_up