繁体   English   中英

如何在SAS中计算百分位数

[英]how to calculate percentile in SAS

我想计算分布的第95个百分位数。 我认为我不能使用proc means因为我需要值,而proc means的输出是一个表。 我必须使用百分位数过滤数据集并创建仅观察值大于百分位数的另一个数据集。 显然我不想使用数字值。因为我想在macro使用它。

不要将摘要统计信息放入宏变量中。 您可能会损失精度。 这是基于您对问题的神秘描述。

proc means...
   output out=pct95 pct95=
   run;
data subset;
   if _n_ eq 1 then set pct95;
   set data;
   if value < pct95;
   run;

您可以使用noprint选项禁止proc means将结果输出到新选项卡中。 尝试这个:

proc means data = your_data noprint;
    var variable_name;
    output out = your_data2 p95= / autoname;
run;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM