classmethod AMPL.setData(dataframe, assignSets)
用法
setData(dataframe)
setData(dataframe, setName)
说明
setData(dataframe)
` 将 DataFrame 中的数据分配给具有相应名称的 AMPL 实体
setData(dataframe, setName)
将 DataFrame 中的数据分配给具有相应名称的 AMPL 实体(以及指定集合的索引列)
输入参数
dataframe
A
,其名称对应于底层 AMPL 解释器中当前定义的实体。DataFrame
setName
要将DataFrame 的索引值分配到的集合的名称。请注意,最多可以与参数同时分配一组(对于具有多个索引列的
)DataFrame
示例 1
使用一个索引列和任意列名创建DataFrame,填充它并将值设置为参数
d = DataFrame(1, {'PROD', 'price', 'cost'});
d.addRow('shirts', 10, 5);
d.addRow('skirts', 8, 6);
ampl.eval('set PROD; param price{PROD}; param cost{PROD};')
ampl.setData(d, 'PROD');
% now the AMPL parameters price and cost, as well as the set PROD are assigned the listed values
示例 2
创建一个DataFrame 对象,从 AMPL 实体推断表结构。必须首先列出集合。不要将设置值分配给 AMPL(一次不支持多个设置)。
ampl.eval('set PROD; set COLOUR; param price{PROD, COLOUR};');
ampl.eval('data; set PROD := shirts skirts; set COLOUR := red blue; model;');
PROD = ampl.getSet('PROD');
COLOUR = ampl.getSet('COLOUR');
price = ampl.getParameter('price');
d = DataFrame([PROD, COLOUR, price]);
d.addRow({'shirts', 'red', 5});
d.addRow({'shirts', 'blue', 4.5});
d.addRow({'skirts', 'blue', 5.5});
ampl.setData(d);
% now the AMPL parameter cost will have the assigned value
price.display
会给:
ans =
price :=
shirts blue 4.5
shirts red 5
skirts blue 5.5
相关用法
- Matlab AMPL AMPL.setOption用法及代码示例
- Matlab AMPL AMPL.solve用法及代码示例
- Matlab AMPL AMPL.show用法及代码示例
- Matlab AMPL AMPL.getSets用法及代码示例
- Matlab AMPL AMPL.eval用法及代码示例
- Matlab AMPL AMPL.close用法及代码示例
- Matlab AMPL AMPL.getObjectives用法及代码示例
- Matlab AMPL AMPL.initializeEvents用法及代码示例
- Matlab AMPL AMPL.expand用法及代码示例
- Matlab AMPL AMPL.reset用法及代码示例
- Matlab AMPL AMPL.display用法及代码示例
- Matlab AMPL AMPL.isRunning用法及代码示例
- Matlab AMPL AMPL.getValue用法及代码示例
- Matlab AMPL AMPL.getVariables用法及代码示例
- Matlab AMPL AMPL.getConstraints用法及代码示例
- Matlab AMPL AMPL.getParameters用法及代码示例
- Matlab AMPL AMPL.getData用法及代码示例
- Matlab AMPL AMPL.read用法及代码示例
- Matlab AMPL AMPL.readData用法及代码示例
- Matlab AMPL AMPL.getOption用法及代码示例
注:本文由纯净天空筛选整理自ampl.com大神的英文原创作品 setData。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。