独自のufuncを作成する


独自のufuncを作成する方法

独自のufuncを作成するには、Pythonの通常の関数で行うように関数を定義してから、メソッドを使用してNumPyufuncライブラリに追加する必要がありますfrompyfunc()

このfrompyfunc()メソッドは次の引数を取ります。

  1. function-関数の名前。
  2. inputs-入力引数(配列)の数。
  3. outputs-出力配列の数。

追加用に独自のufuncを作成します。

import numpy as np

def myadd(x, y):
  return x+y

myadd = np.frompyfunc(myadd, 2, 1)

print(myadd([1, 2, 3, 4], [5, 6, 7, 8]))

関数がufuncであるかどうかを確認します

関数のタイプをチェックして、それがufuncであるかどうかをチェックします。

ufuncはを返す必要があり<class 'numpy.ufunc'>ます。

関数がufuncであるかどうかを確認します。

import numpy as np

print(type(np.add))

ufuncでない場合は、2つ以上の配列を結合するためのこの組み込みのNumPy関数のように、別のタイプを返します。

別の関数の型を確認してください:concatenate():

import numpy as np

print(type(np.concatenate))

関数がまったく認識されない場合は、エラーが返されます。

存在しないものの種類を確認してください。これにより、エラーが発生します。

import numpy as np

print(type(np.blahblah))

関数がifステートメントでufuncであるかどうかをテストするには、numpy.ufunc値を使用します(またはnp.ufunc、npをnumpyのエイリアスとして使用する場合)。

ifステートメントを使用して、関数がufuncであるかどうかを確認します。

import numpy as np

if type(np.add) == np.ufunc:
  print('add is ufunc')
else:
  print('add is not ufunc')