SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 751|回复: 2
打印 上一主题 下一主题

两个小问题

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2005-6-7 01:45:26 | 只看该作者

两个小问题

1. A raw data file is listed below.

son    Frank   01/31/89
daughter June    12-25-87
brother Samuel  01/17/51

The following program is submitted using this file as input.

data work.family;
infile file-specification;
<insert INPUT statement here>
run;

Which INPUT statement correctly reads the values for the variable BIRTHDATE as SAS date values?
A. input relation $ first_name $ birthdate date9.;
B. input relation $ first_name $ birthdate mmddyy8.;
C. input relation $ first_name $ birthdate : date9.;
D. input relation $ first_name $ birthdate : mmddyy8.;

我在机器上试验, 以上四个选择都不行

2. The following SAS program is submitted:

data work.areacodes;
phonenumber = 3125551212;
code = '('!!substr(phonenumber,1,3)!!')';
run;

Which one of the following is the value of the variable CODE in the output data set?

A. (   3)
B. (312)
C. 3
D. 312

机器试验的结果是A, 为什么?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2005-6-7 09:20:15 | 只看该作者

答案

第一个题的答案应该是D, 你可以加一句format来看output的效果.
data ahuige;
input relation $ first_name $ birthdate : mmddyy8.;
format birthdate mmddyy8.;
cards;
son Frank 01/31/89
daughter June 12-25-87
brother Samuel 01/17/51
;
run;

proc print;run;
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2005-6-7 09:38:42 | 只看该作者

麻烦

第二题应该是只有试验后才能知道结果.
从我试验的结果来看,substr在处理数字型自动转换为字符型时是在前面加两个前导空格,所以,前三位就是空格空格3了.
这个特点我也不太清楚.
所以我比较讨厌SAS的字符串的处理,好多特点太离奇了.
我在这里举几个我认为太出众的特点.
1.字符串变量如果未有声明在第一次赋值时固定长度.
2.尾部不管多个空格,计算长度时不计.但在后面连接字符时又存在.
不说多了,以后慢慢讲.
要是学过其他语言,习惯了其他语言的特点,在这两个问题上就足够死一万回了.
看看下面的试验吧
[code:8ae99]data ahuige ;
a='abc';
a='123456';
b='abc  ';
c=b||'ahuige';
len_b=length(b);
len_c=length(c);
put _all_;
run;[/code:8ae99]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2025-6-9 03:19 , Processed in 0.120998 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表