وارد کردن دادهها از اکسل داخل گمز
این پست زیرمجموعه دوره آموزش رایگان نرمافزار گمز میباشد، که به وارد کردن دادهها از اکسل داخل گمز میپردازد. در صورتی که تمایل دارید کل دوره را مشاهده کنید، از این لینک استفاده کنید.
در مسائل واقعی و کاربردی، پارامترهای مدل بزرگ هستند و تعداد دیتای زیادی را شامل میشوند، این دیتا معمولا داخل اکسل در اختیار ما گذاشته میشه. فرض کنید دیتا من در اکسل به شکل زیر باشه:
با کد زیر میتونم، دیتا را از اکسل بخونم و در گمز داخل یک پارامتر قرار بدم:
sets
r /r1 , r2/
c /c1 , c2 , c3/;
parameter p(r , c);
$CALL GDXXRW data.xlsx par=p rng=Sheet1!A1:D3 rdim=1 cdim=1
$gdxin data.gdx
$load p
$gdxin
display p;
خطوط اول تا سوم کد دو تا اندیس تعریف کردم، چون دادههای من داخل اکسل دوبعدی هست (دو سطر و سه ستون). خط پنجم پارامتر p را تعریف کردم که قراره دیتایی که از اکسل میخونم را داخلش بریزم. خط هفتم GDXXRW را صدا زدم (GDXXRW وظیفه ایمپورت و اکسپورت دیتا در گمز را بعهده داره، برای کسب اطلاعات بیشتر در رابطه با این امکان میتونید از مستندات مربوط به GDXXRW در وبسایت گمز استفاده کنید)، پارامتر اول GDXXRW نام فایل اکسلی هست که دیتا داخلشه (فایل اکسل را کنار فایل گمز قرار بدید وگه نه اینجا مجبور میشد که آدرس کامل فایل اکسل را بنویسید)، در پارامتر دوم برای GDXXRW مشخص کردم که دیتایی که از اکسل میخونه را داخل پارامتر p بریزه، پارامتر سوم شامل نام Sheet و رنج دیتای ما در اکسل هست (در فایل اکسل من، دیتا در شیت 1 هست و از سلول A1 شروع شده تا سلول D3)، پارامترهای چهارم و پنجم به ترتیب بعد (Dimension) ردیف و ستون دیتا هستند. خطوط نهم تا یازدهم، نکته خاصی نداره، صرفا حواستون باشه که به جای data در خط نهم، نام فایل اکسل خودتون را بدون پسوند قرار بدید و در خط دهم هم به جای p، نام پارامتر خودتون را قرار بدید. خط سیزدهم هم که توضیح خاصی نمیخواد و خودش واضحه.