悬赏 400 个论坛币 已解决
如何利用语法命令采取先前移动平均进行预测
已知 2007年1月~2007年12月的销售量,要预测出2008年1月份的销售量。
要求1、采用语法命令,自动产生2008年1月份哪一个个案
2、采用先前移动平均
3、代码需简洁,至少比小弟简洁
注:本人现在已经想出三种方法,但觉得不是很好,希望能够有高手帮忙小弟
1、利用选择个案和数值替代,在原数据的基础上构造出另一个数据文件,然后利用 ADD FILES 加上去代码如下:
DATASET ACTIVATE 数据集1.
DATASET COPY
d.
DATASET ACTIVATE
d.
FILTER OFF.USE ALL.
SELECT IF (T=200601).
DATASET ACTIVATE
数据集1.
EXECUTE.
DATASET ACTIVATE d.
RECODE sales T (200601=200801) (ELSE=SYSMIS).
EXECUTE.
DATASET ACTIVATE 数据集1.
ADD FILES /FILE=*/FILE='d'. EXECUTE.
DATASET ACTIVATE 数据集1.
SORT CASES BY name(A) T(A).
然后在进行先前移动平均
2、另一种方法是做ARIMA 或者专家模型预测 或者 指数平滑等预测 ,产生出2008年1月的CASE 然后在先前移动平均
3、增加个案方法 python 方法
if you have python installed and SPSS 15 you could also do it this way:.
New File.
DATASET CLOSE all.
DATA LIST FREE /ID (F) Name(A10).
BEGIN DATA
1 Mueller
2 Huber
3 Kunz
END DATA.
BEGIN PROGRAM.
import spss
cur=spss.Cursor(accessType='a')
cur.SetValueNumeric('ID',4)
cur.SetValueChar('Name','Smith')
cur.CommitCase()
cur.SetValueNumeric('ID',5)
cur.SetValueChar('Name','Bissell')
cur.CommitCase()
cur.EndChanges()
cur.close()
END PROGRAM.