np.rec.fromrecordsへの1回の呼び出しを使用して、タプルのリストをnumpy再配列に変換する際に、None値を適切に処理する方法はありますか?欠落している値(整数の場合は-1など)がわかっていると仮定して、以下の不自然な例をキャッチして処理するにはどうすればよいですか。
import numpy as np
a = [('Bob', 40, 3.14), ('Sue', 38, 6.28), ('Jim', None, 9.42)]
dtype = [('NAME', 'S10'), ('AGE', np.int32), ('SCORE', np.float64)]
try:
b = np.rec.fromrecords(a, dtype=dtype)
except TypeError:
# Convert None to 0 for AGE field here instead of raising the error
raise TypeError('Caught a TypeError')
リアレイの他の場所で真のTypeErrorが欠落しないようにするには、フィールドごとにこれを実行する必要があると思います。この変換を適用したい再配列のどこ(つまり、どのフィールド)を分離する方法はありますか?私の実際のユースケースは、pyodbcレコードをnumpy再配列に変換することです。