2017-06-16 20 views
1

Pythonに抽象モデルがあり、データを変更して数回実行する必要があります。そのため、csvまたはxlsから簡単にデータをインポートしたいのです。私はDataPortalだけでなく、直接データファイルを書いてみましたが、成功しないし、あなたの助けに感謝します!Pythonのデータをcsvまたはxlsxからインポートする

DataPortal

私は、サイトhttps://github.com/Pyomo/pyomo/blob/master/examples/doc/pyomobook/attic/ref-dataportal/dataportal_tab.pyをよく知っていますし、ちょうどそれに応じてそれを実装しようとした - 成功せず:/

私はセットとして「タイムスパン」をインポートしてみてください。 、

data = DataPortal() 
data.load(filename='Operational_Data.xlsx', range='timespan', set=dispatch.timespan) 
data.load(filename='Operational_Data.xlsx', range=('D2:D49'), param='elload', index=dispatch.timespan) 
instance = dispatch.create_instance(data) 

両方の範囲オプションのどちらも(列のタイトルおよび範囲エクセル)の作品を:私はXLSXから23に0から行くCSV/XLSファイルの「タイムスパン」と呼ばれる列

インポートを持っていますtimespanは空のままです。 CSVから インポート:CSVファイルからインポート

data.load(filename='Operational_Data.csv', set='timespan') 

は、それが、しかし、唯一の寸法を有する「タイムスパン」に隣接する列を含むようにタプルをインポートします。

load Operational_Data.csv using=csv format=set : timespan=[timespan]; 

が、私は私の抽象pyomoモデルのデータをインポートするにはどうすればよい

OSError: Must specify at least one set or parameter name that will be loaded. 

を例外:DATA.DATファイルを経由して直接

ありがとうございます! マロ

答えて

0

pyomoにロードし、その後、ファイルを開くためにopenpyxlのような別のライブラリを使用してみてください、あなたの答えのための

1

おかげオブジェクト!私はデータフレームのようなオブジェクトをいくつか試しましたが、幸運ではありませんでした...私はまだopenpyxlを試していないことを認めなければなりませんが、CSVのデータをAMPL形式のファイル(.dat )。非常にエレガントではないが動作します:)

関連する問題