當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Matlab AMPL DataFrame.DataFrame用法及代碼示例

classmethod DataFrame.DataFrame()

用法

df = DataFrame([amplEntities])

df = DataFrame(int numberOfIndexColumns, header1, ..., headern)

說明

df = DataFrame([amplEntities]) 創建一個骨架結構,其中根據用作標題的 AMPL 實體自動推斷索引列

df = DataFrame(numberOfIndexColumns, header1, ..., headern)創建一個 scheleton 結構,其中任意對象可以用作列標題(在與 AMPL 解釋器通信時,它們將被轉換為它們的字符串表示形式)。

輸入參數

numberOfIndexColumns 在此對象表示的表中被視為索引的列數。在DataFrames 表示標量數據的情況下可以為零。

amplEntities AMPL 實體的向量(通過 AMPL.getEntity 處的函數之一獲得)。集合應該首先列出,因為它必須是表的第一列。

header1,...,headern 用作列標題的標題列表。這些名稱將指定在使用 AMPL.setData 時如何將數據綁定到 AMPL 實體。

輸出參數

df

可用於分配和操作數據的DataFrame 對象。

示例 1

創建一個具有從 AMPL 實體開始的兩個索引列的 DataFrame ,並逐行填充它們:

ampl.eval('set PROD; set COLOUR; param price{PROD, COLOUR};');
PROD = ampl.getSet('PROD');
COLOUR = ampl.getSet('COLOUR');
price = ampl.getParameter('price');

df = DataFrame(PROD, COLOUR, price);
df.addRow('shirts', 'red', 5);
df.addRow('shirts', 'blue',  4.5);
df.addRow('skirts', 'blue',  5.5);
df

給出:

df =
PROD    COLOUR  |  price
shirts  red     |  5.0
shirts  blue    |  4.5
skirts  blue    |  5.5

示例 2

創建一個包含一個索引列和兩個數據列的 DataFrame ,開始逐行添加數據,然後添加一整列數據

df = DataFrame(1, 'PROD', 'price');
df.addRow('shirts', 5);
df.addRow('skirts', 4.5);
df.addColumn('cost', [4.5 5])
df

給出:

df =
PROD    |  price  cost
shirts  |  5.0    4.5
skirts  |  4.5    5.0

相關用法


注:本文由純淨天空篩選整理自ampl.com大神的英文原創作品 DataFrame。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。