T=sum(T,y);
T1=sum(T1,-y);
T2=sum(T2,-y);
T3=sum(T3,-y);
T4=sum(T4,-y);
T5=sum(T5,-y);
if(T1<=0) then do; T1=0; N1=0;end;
if(T2<=0) then do T2=0; N2=0;end;
if(T3<=0) then do T3=0; N3=0;end;
if(T4<=0) then do T4=0; N4=0;end;
if(T5<=0) then do T5=0; N5=0;end;
output;
end;
run;作者: shiyiming 时间: 2011-3-13 15:03 标题: Re: sas的朋友们求助大家一个sas程序设计(关于银行队列的仿真模型中队列人数的减少问题) 出队列这块,感觉比较简单,就是不知道用sas怎么实现,路过的游客也顺便帮忙支点招么,谢谢啦!作者: shiyiming 时间: 2011-3-13 16:33 标题: Re: sas的朋友们求助大家一个sas程序设计(关于银行队列的仿真模型中队列人数的减少问题) 你可以把问题的描述清楚, 然后用简单的数据来举个例子。
你的代码有bug,还有又这么长,怎么有耐心看下去啊 ?
ps: 这个问题蛮有意思。作者: shiyiming 时间: 2011-3-13 17:03 标题: Re: sas的朋友们求助大家一个sas程序设计(关于银行队列的仿真模型中队列人数的减少问题) 生成的数据集中,每一个窗口的排队人数(N1-N5)都只在有客户进入队列的时候,加了1,而每个窗口有客户办完业务的时候,窗口排队人数(N1-N5)没有减1,只有在每个队列需等候时间小于等于0的时候,排队人数N就算不等于0,此刻也得把它置为0.
假如说,把其中的一段程序(下边)中的N1-N5=0这项去掉,你就会发现排队人数只增不减:
if(T1<=0) then do; T1=0; N1=0;end;
if(T2<=0) then do T2=0; N2=0;end;
if(T3<=0) then do T3=0; N3=0;end;
if(T4<=0) then do T4=0; N4=0;end;
if(T5<=0) then do T5=0; N5=0;end;
把上边的程序段改为下边的后(排队人数N1-N5都是只增不减):
if(T1<=0) then T1=0;
if(T2<=0) then T2=0;
if(T3<=0) then T3=0;
if(T4<=0) then T4=0;
if(T5<=0) then T5=0;
非常感谢,还有其他什么问题没表达清楚的,我会补充!真的谢谢你们的关注!作者: shiyiming 时间: 2011-3-13 17:14 标题: Re: sas的朋友们求助大家一个sas程序设计(关于银行队列的仿真模型中队列人数的减少问题) 传上来的程序,格式全部被打乱了,看着很不舒服。也不清楚可不可以把程序的压缩包传上来,呜呜!有知道帮帮,说说怎么传.....作者: shiyiming 时间: 2011-3-14 12:27 标题: Re: sas的朋友们求助大家一个sas程序设计(关于银行队列的仿真模型中队列人数的减少问题) [quote:2vxce3xw]又分几种情况,如:一直等待的;最多等待t1或t2分钟的…[/quote:2vxce3xw]