当前位置: 首页 > news >正文

MOOC武大SAS——第一章作业

学习SAS语言一章,用数据步建立数据集,注意不同类型变量的表示、复制数据集、合并、拆分数据集等操作;用过程步,按指定的要求和格式输出数据。
本次作业需完成并提交3个SAS程序:
1)grade01.sas
2)classBMI02.sas
3)stu_merge03.sas

1.( 30分 )

10名幼儿园小朋友的名字、性别、生日信息,见附件表1。新建一个名为Child数据集,数据集中有四个变量,分别是name,gender,birthday,age,其中变量age是用赋值语句计算出来的每个小朋友的年龄,程序命名为grade01.sas。

关键是计算年龄:

i. 使用函数:intck()——计算,date()——当前日期

ii. 变量age是运算得到,可以不用input进行定义,直接使用

iii. yyddmm10. 与 yyddmms10. 的区别:前者间隔符为短横线,后者为斜线

data c1;
input name$ gender$ birthday yymmdd10.;
cards;
刘明铭 男 2012/11/11
李敏洁 女 2014/3/15
代子清 男 2014/9/20
夏天 男 2013/4/1
郭悦 女 2013/7/25
胡月玲 女 2013/7/20
程彬 女 2014/10/9
杨帆帆 男 2016/10/9
刘进 男 2016/5/10
张思凡 女 2015/8/19
;
run;

DATA Child;
set C1;
b=date();
age=intck('year',birthday,b);
drop b;
run;

proc print;
FORMAT birthday yymmdds10.;
title 'Child';
RUN;

2

( 30分 )

‏针对SASHELP.CLASS数据集,按如下要求编写程序:

1)复制SASHELP.CLASS数据集,建立新变量BMI,其值为weight/(height*height)*1000,新数据集命名为BMIclass;

‏2)用proc print过程输出数据集BMIclass中NAME,SEX, AGE,BMI四个变量的观测值,其中,BMI值用FORMAT过程定义输出格式,使得变量BMI输出形式为:

BMI值<18.5 ,输出显示“偏瘦”;

18.5=<BMI值<23.9,输出显示“正常”

BMI值>=23.9,输出显示“偏胖”

‏3)将数据集BMIclass按性别拆分为二个名为boy、girl的新数据集,新数据集中不需有性别变量,且BMI值的输出格式为6.2,即输出显示到小数点后2位。

程序命名为classBMI02.sas

PROC FORMAT这里报错了,等老师回复我了,再进行修改,别的没有问题。

data BMIclass;
set sashelp.class;
BMI=weight/(height*height)*1000;
keep name sex age bmi;
run;

proc format;
value b low-<18.5='偏瘦'
		18.5-<23.9='正常'
		23.9-<high='偏胖';
run;

proc print data=bmiclass;
format bmi b;
title 'BMIclass';
run;

data boy girl;
set BMIclass;
if sex='女' then output girl;
else output boy;
drop sex;
format bmi 6.2;
run;

proc print
data=boy;
title 'boy';
run;

proc print
data=girl;
title 'girl';
run;



相关文章:

  • 进行ISO27001认证需要准备的几个阶段
  • 3322动态域名怎么解析?
  • 线上展厅怎样设计完美
  • Android修行手册 - GridView实践回忆
  • Spring DI和AOP简介
  • 以太坊改造完成,矿工要失业了?
  • dubbo拓展点机制(和对JDK SPI机制的优化)
  • HTML常用标签积累
  • 【一起学SQLite】--SQLite中一些与众不同的特性?(2-1)
  • A+文档丨Azure MySQL 数据库高可用性解析
  • 【Python基础】Numpy:切片和索引操作
  • 【PAT甲级】1004 Counting Leaves
  • 【Vue】vue基础学习笔记
  • 边缘检测算子之间的优劣
  • 在软件测试摸爬滚打了8年,失业半年了。offer你在哪儿呀!
  • Angular 响应式表单 基础例子
  • CentOS 7 修改主机名
  • express + mock 让前后台并行开发
  • Fundebug计费标准解释:事件数是如何定义的?
  • JavaScript 基础知识 - 入门篇(一)
  • SQLServer之创建显式事务
  • 百度小程序遇到的问题
  • 包装类对象
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 第三十一到第三十三天:我是精明的小卖家(一)
  • 将 Measurements 和 Units 应用到物理学
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 理解在java “”i=i++;”所发生的事情
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 什么是Javascript函数节流?
  • 我的zsh配置, 2019最新方案
  • 用quicker-worker.js轻松跑一个大数据遍历
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​马来语翻译中文去哪比较好?
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (1)安装hadoop之虚拟机准备(配置IP与主机名)
  • (LeetCode) T14. Longest Common Prefix
  • (十一)手动添加用户和文件的特殊权限
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (转)jQuery 基础
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .NET Core 网络数据采集 -- 使用AngleSharp做html解析
  • .Net 中的反射(动态创建类型实例) - Part.4(转自http://www.tracefact.net/CLR-and-Framework/Reflection-Part4.aspx)...
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .NET和.COM和.CN域名区别
  • .net和jar包windows服务部署
  • .net用HTML开发怎么调试,如何使用ASP.NET MVC在调试中查看控制器生成的html?
  • .NET运行机制
  • [1127]图形打印 sdutOJ
  • [2016.7 Day.4] T1 游戏 [正解:二分图 偏解:奇葩贪心+模拟?(不知如何称呼不过居然比std还快)]
  • [bzoj1912]异象石(set)
  • [BZOJ4566][HAOI2016]找相同字符(SAM)
  • [C#][opencvsharp]opencvsharp sift和surf特征点匹配