- 1、本文档共75页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[最新]6-2.数据修改及程序结构
数据修改及程序结构;1. 赋值语句 ;Data a;
x=15;
grp=“A”;
Run;
;结果变量类型 ;表达式值转换;表达式值转换;结果变量长度 ;解决办法:
1. 先用LENGTH语句定义长度
2. 在第一次赋值时添加足够空格;2. 累加语句 ;应用准则
累加变量在第一次执行前的初始值为0;
表达式的计算结果为缺失值时,取0代替;
表达式可以使用比较算符;
语句A+(-B)中的(+)是必须的,不能写成A-B。 ;data a;
input id sex $;
m=m+1; /* 赋值语句不能累加*/
if sex=“F” then K+1; /* 条件累加*/
cards;
1 F
2 M
3 F
4 F
5 M
;
run;
proc print;
run;;赋值语句+RETAIN语句可实现累加;data a;
input id sex $;
Retain m 0; /* 申明m值保留不清空,初值为0*/
m=m+1; /* 实现累加*/
cards;
1 F
2 M
3 F
4 F
5 M
;
run;
proc print;
run;;例如,对X平方后再累加;3. DELETE语句;例如,与if语句联用,删除部份观察;例如,清空一个数据集 ;4. DROP语句 和 KEEP语句;例如,指定不输出到数据集中的变量;例如,指定需要输出到数据集中的变量;5. STOP语句;数据步循环执行到第4次,即x=4, y=9时,n=6,满足n4的条件,执行STOP语句,则立即停止数据步的执行,正被处理的那条观测不会被添加到数据集A中。A中只有3条观察。;6. ABORT语句 ;数据步循环执行到第4次,即x=4, y=9时,n=6,满足n4的条件,执行ABORT语句,则立即停止数据步的执行,正被处理的那条观测不会被添加到数据集A中。如果数据集A先前已经存在,则不会被替换;如果数据集A先前不存在,则建立数据集A,只有3条观察。;data a;
input x y;
if x=4 then n+2;
IF n4 THEN ABORT;
cards;
2 5
4 2
4 8
4 9
7 2
;
run;
proc print;
run;;例如,ABORT语句使程序出现错误时终止执行;7. LOSTCARD语句 ;例,每个记录应包含两行数据,第一行为SID和性别,第二行为SID和两门功课的成绩,读取信息完整的记录;LOSTCARD语句的执行步骤 ;data a;
input id1 x $ #2 id2 y $ #3 id3 z $;
if id1 ne id2 or id2 ne id3 then lostcard;
cards;
101 A
102 B
102 B
103 C
103 C
103 C
104 D
105 E
105 E
105 E
;
proc print;
run;;例中,DATA步读3个数据行作为1个观测。第1个观测有2个丢失记录,第2个观测有1个丢失记录,第4个观测丢失2个记录。只有第3和第5个观测是完整的观测。
LOG窗口显示的信息:
NOTE: LOST CARD.
RULE: ----+----1----+----2----+----3----+----4----+----5----+----6----
5 101 A
6 102 B
7 102 B
NOTE: LOST CARD.
8 103 C
NOTE: LOST CARD.
9 103 C
NOTE: LOST CARD.
11 104 D
12 105 E
13 105 E
NOTE: 数据集 WORK.A 有 2 个观测和 6 个变量。 ;语句格式 WHERE 逻辑表达式;根据表达式选择满足条件的观察 ;WHERE语句的特点 ;例,where语句选择观测;例,where语句选择观测;Where age between 18 and 65;
Where taxes between salary*0.30 and salary*0.50;
Where taxes not between salary*0.30 and salary*0.50;
Where idnum is missing; /*idnum为缺失值时 */
Where name is null; /*name为空时*/
Where score in (“A”,”B”); /*score为“A”或“B”时*/
Where
您可能关注的文档
- 3第四 、五 周教案中央大街[定稿].doc
- 3.2.主要的生态环境问题[定稿].ppt
- [整理]4 Unit 5 Theme parks.ppt
- [最新]3正弦交流电路3(14-17).ppt
- [名校联盟]4 桥梁工程图识读.ppt
- [中学联盟]4.2.6.1医疗质量管理培训.ppt
- 4-1 电工用具的正确使用[整理].ppt
- 4.1政府的权力:依法行使[最终版].ppt
- 4.2权力的行使:需要监督[修改版].doc
- [名校联盟]3管理信息系统的战略作用.ppt
- 10《那一年,面包飘香》教案.docx
- 13 花钟 教学设计-2023-2024学年三年级下册语文统编版.docx
- 2024-2025学年中职学校心理健康教育与霸凌预防的设计.docx
- 2024-2025学年中职生反思与行动的反霸凌教学设计.docx
- 2023-2024学年人教版小学数学一年级上册5.docx
- 4.1.1 线段、射线、直线 教学设计 2024-2025学年北师大版七年级数学上册.docx
- 川教版(2024)三年级上册 2.2在线导航选路线 教案.docx
- Unit 8 Dolls (教学设计)-2024-2025学年译林版(三起)英语四年级上册.docx
- 高一上学期体育与健康人教版 “贪吃蛇”耐久跑 教案.docx
- 第1课时 亿以内数的认识(教学设计)-2024-2025学年四年级上册数学人教版.docx
文档评论(0)