我的问题与Compute sum of all cases非常相似,但是那个人只需要对一个变量求和,我想总结一些变量,然后制作一个描绘所有变量的条形图。不同的变量(即我不仅要求pageviews
而且要totalhits
求和,然后制作一个显示总和的双条形图。
我将如何在SPSS中实现这一目标?
答案 0 :(得分:2)
如果你需要做的只是制作总和的条形图,你根本不需要 来汇总数据,你可以直接在*Fake data.
SET SEED 10.
INPUT PROGRAM.
LOOP #i = 1 TO 10.
COMPUTE A = RV.NORMAL(0,1).
COMPUTE B = RV.NORMAL(2,1).
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
DATASET NAME Sim.
FORMATS A B (F2.0).
EXECUTE.
*Summing in GGRAPH directly.
GGRAPH
/GRAPHDATASET NAME="graphdataset" VARIABLES=SUM(A) SUM(B) TRANSFORM=VARSTOCASES(SUMMARY="sum" INDEX="var")
/GRAPHSPEC SOURCE=INLINE.
BEGIN GPL
SOURCE: s=userSource(id("graphdataset"))
DATA: sum=col(source(s), name("sum"))
DATA: var=col(source(s), name("var"), unit.category())
GUIDE: axis(dim(1), label("Variables"))
GUIDE: axis(dim(2), label("Sum"))
ELEMENT: interval(position(var*sum))
END GPL.
中完成。见下面的例子。
VARSTOCASES
这类似于使用GGRAPH
,但只是直接在{{1}},而无需更改您的数据。
答案 1 :(得分:1)
要计算几个变量的总和,您只需将它们添加到aggregate
命令即可。
使用来自here的@ AndyW&#示例:
data list free /browser (A2) pageviews (F6.0) month (A3) year (A4) totalhits (F6.0) percentage (F4.2).
begin data
ch 227025 Nov 2012 626760 36.22
ie 184232 Nov 2012 626760 29.39
s 81430 Nov 2012 626760 12.99
ff 72140 Nov 2012 626760 11.51
ie 39856 Nov 2012 626760 06.36
o 1010 Nov 2012 626760 00.16
rm 325 Nov 2012 626760 00.05
ot 20742 Nov 2012 626760 03.31
end data.
compute const = 1.
AGGREGATE
/OUTFILE=*
MODE=ADDVARIABLES
/BREAK=const
/pageviews_sum totalhits_sum = SUM(pageviews totalhits).
现在,这会将总和添加到活动数据集中。 对于您的图表,您可能只需要单独数据集中的总和:
DATASET DECLARE sums.
AGGREGATE
/OUTFILE='sums'
/BREAK=const
/pageviews_sum totalhits_sum = SUM(pageviews totalhits).
dataset activate sums.
一旦你有了总和,只需使用Graphs>图表构建器以创建首选图表。