sas - 随机分配到 SAS 中特定百分比的观察值
问题描述
下面的问题是我想弄清楚的。我尝试使用 procsurveyselect,但我不确定是否有办法将随机数分配给超过 2 个组,因为在这里我需要随机分配 5 个组。
问题)将分配 5 名不同的检查员来调查事故。
1 号检查员和 2 号检查员应随机分配检查总事故的 20%。
3 号检查员和 4 号检查员应分别随机分配检查总事故的 15%。
应指派 5 号检查员检查 30% 的事故。
编写随机分配所需事故百分比的代码。请注意,分配给每个检查员的百分比不必是确切的百分比,但应该非常接近所需的百分比。请注意,“随机分配”意味着每起事故都将具有与其他事故相同的分配给检查员的百分比概率。
任何帮助,将不胜感激!
解决方案
使用函数的TABLE
方法RAND()
。
data want ;
inspector = rand('table',.2,.2,.15,.15,.30);
set sashelp.cars;
run;
要检查分布,请查看新变量的频率。
proc freq data=want;
tables inspector;
run;
推荐阅读
- c++ - C++ - 使用特定函数计算 x 和 y 的最终值
- package - `ERROR: EOFError: read end of file` 安装新 Julia 版本后使用包时
- python - Subprocess.Popen Stdout 等待程序完成
- gensim - FastTextKeyedVectorsvectors、vectors_vocab和vectors_ngrams实例变量的区别
- java - JAVA INSERT INTO SELECT,有可能吗?
- php - ActiveMQ - 根据客户端 ID 断开另一个客户端的任何方式?
- javascript - 从 Select 中的 onchange 事件调用 window.print() 时出错
- c++ - 给定一个 3 x 3 矩阵或任何 nxn 矩阵,为什么我的以下函数找不到对角线差异?
- c# - 检查 IEnumerable 中非空值的内容
- python - 逐行求和值并获得达到总数 x % 的列