多组单个定性指标的分析,输出频数、构成比(率)指标。
- groupby
- by
- uid
- pattern
- missing
- missing_output
- missing_note
- missing_position
- outdata
- stat_format
- label
- indent
- suffix
用法同 indata。
用法同 var。
Syntax :
- variable
- variable("category-1"<, "category-2", ...>)
指定分组变量,category
表示需要统计的分组水平名称。
Warning
- 参数
group
不允许指定不存在于参数 indata 指定的数据集中的变量; - 参数
group
不允许指定数值型变量;
Usage :
group = arm
group = arm("试验组", "对照组")
Syntax :
- variable<(asc<ending> | desc<ending>)>
- format<(asc<ending> | desc<ending>)>
指定各分组在输出数据集中的排列顺序依据。
Default : #auto
默认情况下,各个分组的输出结果根据分组水平名称在当前语言环境下的默认排列顺序排序(例如:gbk 环境下,按照水平名称的汉语拼音顺序)
Important
-
若参数
groupby
指定了基于某个输出格式进行排序,则该格式必须是catalog-based
,即在dictionary.formats
表中,变量source
的值应当是C
。 -
当指定一个输出格式作为排序依据时,该输出格式应当使用
value
语句生成,例如:proc format; value armn 1 = "试验组" 2 = "对照组"; run;
宏程序将根据格式化之前的数值对各分类进行排序。
Usage :
groupby = armn(desc)
groupby = armn.
用法同 by。
用法同 uid。
用法同 pattern。
用法同 missing。
用法同 missing_output。
用法同 missing_note。
用法同 missing_position。
Syntax : <libname.>dataset(dataset-options)
指定统计结果输出的数据集,可包含数据集选项,用法同参数 indata。
输出数据集含有以下变量:
变量名 | 含义 |
---|---|
idt |
缩进标识(indent identifier) |
seq |
行号 |
item_origin |
分类名称(原始名称) |
item |
分类名称(展示名称) |
value_ i |
group 的第 i 个水平的统计量在 pattern 指定的模式下的格式化值 |
freq_ i |
group 的第 i 个水平的频数 |
freq_ i _fmt |
group 的第 i 个水平的频数格式化值 |
times_ i |
group 的第 i 个水平的频次 |
times_ i _fmt |
group 的第 i 个水平的频次格式化值 |
rate_ i |
group 的第 i 个水平的频率 |
rate_ i _fmt |
group 的第 i 个水平的频率格式化值 |
value_sum |
group 的所有水平合计的统计量在 pattern 指定的模式下的格式化值 |
freq_sum |
group 的所有水平合计的频数 |
freq_sum_fmt |
group 的所有水平合计的频数格式化值 |
times_sum |
group 的所有水平合计的频次 |
times_sum_fmt |
group 的所有水平合计的频次格式化值 |
rate_sum |
group 的所有水平合计的频率 |
rate_sum_fmt |
group 的所有水平合计的频率格式化值 |
其中,变量 item
、value_
i
、value_sum
默认输出到 outdata
指定的数据集中,其余变量默认隐藏。
Note
- 当
group
的水平数量为 0 时,输出数据集仅包含变量idt
、seq
、item
,此时 dataset-options 无效。 - 当
group
的水平数量为 1 时,变量value_sum
默认隐藏。
Default : res_
var
默认情况下,输出数据集的名称为 res_
var
,其中 var
为参数 var 指定的变量名。
Tip
- 如需显示隐藏的变量,可使用数据集选项实现,例如:
outdata = t1(keep = seq item value_1 value_2 value_sum times_1 times_2 times_sum)
Usage :
outdata = t1
outdata = t1(keep = seq item value_1 value_2 value_sum times_1 times_2 times_sum)
用法同 stat_format。
用法同 label。
用法同 indent。
用法同 suffix。
Syntax : true
| false
指定是否删除宏程序运行过程生成的中间数据集。
Default : false
默认情况下,宏程序会自动删除运行过程生成的中间数据集。
Note
- 此参数用于开发者调试,一般无需关注。
- 本宏程序内部调用的依赖宏程序
%qualify
运行过程中生成的中间数据集无法通过此参数控制,在退出%qualify
时,这些中间数据集默认被删除,如需单独调试宏程序%qualify
,请单独调用%qualify
并指定debug = true
。
%qualify_multi();
%qualify_multi(help);
%qualify_multi(indata = adam.adsl(where = (FASFL = "Y")), var = ecgcsig, by = clsig., group = arm);
%qualify_multi(indata = adam.adsl(where = (FASFL = "Y")), var = ecgcsig, by = clsig., group = arm("试验组"));
%qualify_multi(indata = adam.adsl(where = (FASFL = "Y")), var = ecgcsig, by = clsig., group = arm, groupby = armn);