在 SPSS 中规范化和绘制时间序列数据

Normalizing and plot time series data in SPSS

我有一个长格式的数据集,如下所示:

Year ID Mean_Income 
2008 1  15042
2009 1  15205
2010 1  15800
2011 1  16443
2008 1  17324
2009 1  17844
2010 2  18011
2011 2  18099
2008 3  16333
2009 3  16554
2010 3  16831
2011 3  16900
.
.
.
2008 150  14998
2009 150  15200
2010 150  15411
2011 150  15500

我想规范化数据,以便第一年(2008 年)每个 ID 的收入值为 100,并且此后每一年的值都按实际增长的相应份额增加收入。像这样:

Year ID Mean_Income Normalized_inc
2008 1  15042       100
2009 1  15205       101
2010 1  15800       104 
2011 1  16443       108

我希望我说得够清楚了。我已经尝试将值转换为 Z 分数,但它并没有完全解决我的问题 - 我想从一个共同的起始水平来看随时间推移的趋势。

您可以为每个 ID 添加一个包含 2008 年值的新变量,然后通过将每个后续值除以第一个值来使用它进行标准化:

if year=2008 Mean_Income_2008=Mean_Income.
aggregate /out=* mode=addvariables overwrite=yes 
     /break=ID /Mean_Income_2008=max(Mean_Income_2008).

*now you have the 2008 value in each line, 
 the following is one possibility of using it for normalization.

compute Normalized_inc=Mean_Income/Mean_Income_2008*100.