sas table将缺失值计入百分比_两种SAS代码实现变量的缺失值频数及占比
sas对缺失值的统计,可得出缺失值的频数及占比。以下为详细程序代码:
data tmp;
infile datalines delimiter=",";
length var1 $8.;
length var2 8.;
length var3 $8.;
length var4 8.;
input var1 $ var2 var3 $ var4
@@;
datalines;
A,1,B,2.,3,C,.C,.,.,3
;
run;
如图得到下列数据集
然后统计数据集中缺失值和占比,先为字符型和数值型先分别设定一个format,然后直接对变量进行频数统计,再做一下简单处理,就可得到理想结果。
代码如下
proc format;
value num_f . = "0"
low-high = "1" ;
value $char_f " " = "0"
other = "1" ;
run;
ods output onewayfreqs=tables;
proc freq data= tmp ;
tables _all_ / missing;
format _numeric_ num_f. _character_
$char_f.;
run;
ods output close;
数据集如下:
data miss;
length variable $50;
set tables;
variable = scan(Table,2,"“");
value = max(of F_:);
if value = 0;
keep variable frequency percent;
label variable = "缺失变量名" frequency =
"缺失频数" percent = %nrstr("%缺失占比");
run;
以上为第一种方法;
下面用数组的方法进行实现。
data tmp11;
set tmp;
array arr1{*} _NUMERIC_ ;
array arr2{*} _CHARACTER_ ;
length variable $50;
do i = 1 to dim(arr1);
if missing(arr1(i)) then do;
variable =vname(arr1(i));
output;
end;
end;
do j = 1to dim(arr2);
if missing(arr2(j)) then do;
variable = vname(arr2(j));
output;
end;
end;
keep variable;
run;
proc sql noprint;
select count(*) into : N from tmp;
create table miss as
select variable label =
"缺失变量名",count(*) as frequency label = "缺失频数",
input(compress(put(calculated frequency
/ &N.,percent10.2),"%"),best32.) as percent label =
%nrstr("%缺失占比")数据分析师培训
from tmp11
group by variable;
quit;
sas table将缺失值计入百分比_两种SAS代码实现变量的缺失值频数及占比相关推荐
- sas table将缺失值计入百分比_医药SAS编程及应用之爱情草全部发芽啦
在DATA步的第一个语句,即读数据之前定义变量的属性,有这样几个优点: 定义变量的长度.格式,名称等属性,对新生成的变量而言,这是必须的.如果不定义新变量的长度,可能会造成变量取值截尾.这里只是说可能 ...
- R语言生存分析寿命表(life table)实战案例:比较两种药物治疗感染患者的生存时间
R语言生存分析寿命表(life table)实战案例:比较两种药物治疗感染患者的生存时间 目录
- 烽火HG680-KB_Hi3798MV310_当贝桌面_强刷及免拆_两种方法-卡刷固件包
烽火HG680-KB_Hi3798MV310_当贝桌面_强刷及免拆_两种方法-卡刷固件包-内有短接点及教程 特点: 1.适用于对应型号的电视盒子刷机: 2.开放原厂固件屏蔽的市场安装和u盘安装apk: ...
- ML之xgboost:绘制xgboost的二叉树graphviz的两种方法代码实现
ML之xgboost:绘制xgboost的二叉树graphviz的两种方法代码实现 目录 绘制xgboost的二叉树graphviz T1.采用to_graphviz法绘制树图 T2.采用plot_t ...
- ML:模型训练/模型评估中常用的两种方法代码实现(留一法一次性切分训练和K折交叉验证训练)
ML:模型训练/模型评估中常用的两种方法代码实现(留一法一次性切分训练和K折交叉验证训练) 目录 模型训练评估中常用的两种方法代码实现 T1.留一法一次性切分训练 T2.K折交叉验证训 模型训练评估中 ...
- sas table将缺失值计入百分比_SAS系列28:SAS宏语言(一)
导读 前面我们介绍了应用SAS实现数据集的创建.数据整理和清洗.数据的统计描述和简单的统计推断方法.在写这一期文章之前一直在纠结,是否要把SAS宏语言放在这一期开始介绍?考虑到宏语言可以实现代码的重复 ...
- 细胞增殖曲线_两种月龄近交系五指山小型猪脂肪间充质干细胞生物学特性的比较...
文题释义: 脂肪间充质干细胞:是成体间充质干细胞,主要从脂肪组织分离获得,具有侵入性小.分布广泛.容易获取.干细胞数量多等优点,可向脂肪.成骨.软骨及神经元等细胞分化,是再生医学的主要种子细胞来源之一 ...
- 怎么解决相位抵消_两种相位抵消法消侧音原理及其电路形式
摘要:为帮助正确理解及运用常见的消侧音电路,分别讨论了加法和减法电路实现的相位抵消法消侧音原理.几种典型电路均用到运算放大器.为直观认识每种电路的特点,估算了接收方获得信号和发送方输出信号的比值(电压 ...
- uboot 如何设置网关地址_两种网络地址段,如何设置内网和外网一起上?
一般企业都会有自己内部专用业务网络.及对外的互联业务两个网络,在具体使用过程中,根据业务类型的不同.部门职能的不同而分开使用两种网络. 但在使用过程中总会有特殊情况,就是一台电脑要同时使用两种业务网络 ...
最新文章
- 机器学习中的数学基础(4.1):支持向量机Support Vector Machine(SVM)
- 餐巾计划问题 线性规划与网络流24题之10 费用流
- SVN Switch
- 12.通过HTTP API对InfluxDB数据库作操作
- gulp 实现sass自动化 ,监听同步
- labuladong 的算法小抄_来自GitHub 68.8k star的硬核算法教程
- php7链接数据库报错The server requested authentication method unknown to the client
- Java中Date, Calendar, SimpleDateFormat的相互转换
- Java Base64与图片互转操作测试
- 方方格子access_有哪些好用能提高工作效率的 Excel 插件(或 Office 办公插件)值得推荐?...
- adprw指令通讯案例_S7200和威纶通触摸屏MODBUS RTU协议通讯
- python33个保留字基本含义_Python保留字总结
- 名帖191 米芾 行书《苕溪诗卷》
- 如你所愿!一款高效率的学习神器,打开就是永久会员SVIP权限!
- qlabel 详解
- 计算机电池的性能参数,【戴尔灵越3567笔记本电脑使用总结】体积|电池|性能_摘要频道_什么值得买...
- 【无标题】研究过程中的一些经验感悟
- java hgetall_redis的hGetAll函数的性能问题(记Redis那坑人的HGETALL)
- Java Swing中JFreeChart构建柱状图(非3D)时关于取消柱体的高亮问题的解决纪要?
- 攻防世界——如来十三掌 give_you_flag