リストのリストとして動作するクラスを開発しようとしています。私はそれを個人のための型として、deapフレームワークで渡す必要があります。現在、私はnumpyのオブジェクト配列で作業しています。ここにコードがあります。辞書のリストのリストとしてのPythonオブジェクト
import numpy
class MyArray(numpy.ndarray):
def __init__(self, dim):
numpy.ndarray.__init__(dim, dtype=object)
しかし、私はのオブジェクトに値を渡すためにしようと、
a = MyArray((2, 2))
a[0][0] = {'procID': 5}
私はエラーを取得し、
Traceback (most recent call last):
File "D:/PythonProjects/NSGA/src/test.py", line 23, in <module>
'procID': 5
TypeError: float() argument must be a string or a number, not 'dict'
任意の提案を歓迎します。タイプの作成を容易にするnumpyを使用せずに、私に別の方法を示すこともできます。 ndarray
が初期化、ない__init__()
を行うために__new__()
を使用するように
同様の質問がthe documentationによるhere
dictをnumpyの配列に変換するには、 'pandas'を試してください。 – Dark
[here](https://stackoverflow.com/questions/4535374/initialize-a-numpy-array)に記載されている方法の1つを調べて、独自のロジックに従って初期化部分を変更することができます –