我有这种表:
Cluster Age FR
8 70 153
...
我想要的是得到一张表:对于每个聚类和每个年龄,每个第10个分位数的FR的平均值。它应该看起来像:
Cluster Age Quantile FR
1 1 10% 12
1 1 20% 14
1 1 30% 16
1 1 40% 18
1 1 50% 20
1 1 60% 22
1 1 70% 24
1 1 80% 26
1 1 90% 28
1 1 100% 30
1 2 10% 13
1 2 20% 15
1 2 30% 17
我尝试用proc单变量做这个但没有成功......
proc univariate data=etude.Presta_cluster_panier noprint;
var FR;
output out=pctls pctlpre=P_ pctlpts=0 to 100 by 10;
run;
答案 0 :(得分:2)
这可以通过使用proc rank& amp; proc意味着。
proc rank data=etude.Presta_cluster_panier out=outranks groups=10;
var FR;
ranks Quantile;
by Cluster Age;
run;
proc means data=outranks;
var FR;
ways 3;
class Cluster Age Quantile;
output out=outmean;
run;
答案 1 :(得分:1)
您需要先按群集和年龄获取四分位数。然后重新合并主数据集,根据四分位数分配组,最后计算平均购买集群年龄和四分位数。
一步到位是不可能的。