やっていること
ある実験に関して、データ読み込みから、処理選択、前処理、計算、グラフ表示をさせています。
python
1class experiment(self): 2 3 def __init__(): 4 # ファイルからデータ読み込みなど(全インスタンス共通)...(A) 5 self.db = pd.read_csv('filename')) 6 # 変数など(各インスタンスごとに別々) 7 self.val = val 8 9 def control(): 10 # (1) インターフェイスなど 11 12 def preprocess(): 13 # (2) 前処理など 14 15 def calc(): 16 # (3) 計算処理など 17 18 def graph(): 19 # (4) 結果の表示など
困っていること
- インスタンス生成ごとに(A)の処理をするので時間がかかるが、この処理は全インスタンスで共通なので、1回にしたい。
- (2),(3),(4)を構成するメソッド群が増えてきたので、ファイル分割したいと考えているが、別のクラスから
__init__()
で読み込んだデータにどうやってアクセスしたらよいか、判然としない。読み込むだけのクラスを作ったほうがいいのか、それを前処理クラスに渡すには、前処理クラスの引数として渡せばいいのか、などなど、大まかな設計がわからずに手が止まっている。
教えてほしいこと
- インスタンスを2個以上作る場合、
__init__()
内のファイルの読み込み部だけを1回だけにするには、どのような方法をとったらよいか。 - 上のようなケースでファイルを分割するなら、どのような構成(クラス、ファイル、ディレクトリ)をとって連携したらよいか。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/16 03:23