全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1787 5
2015-12-20
新手求教~ 请问为什么结果是无输出结果呢?
data set Work.One
Num       Char$
1            23
3            23
1            77

the sas program is submitted:
Proc print data=Work.One;
where Num='1';
Run;

what‘s output?

答案:No output is generated.
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-12-21 02:37:59
变量类型不匹配(无法自动转化)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-21 10:20:23
因为在你的dataset里面 num是numeric variable   而“1” 是一个character。
在where语句里面 系统化不会自动把数字1转变成文字“1”
因此输出没有结果
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-22 09:41:05
数据集Work.One中的“num”变量是数值型的,但“where Num='1';”语句中明确要求输出num等于字符型的“1”,所以变量类型不匹配,所以没有输出任何值。

这里还有一个注意事项:SAS中的变量名是不区分大小写的,所以变量名不存在问题。

希望能够帮到你!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-23 12:41:42
是不是简单地说就是 num='1'应该改成num=1才能输出结果?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-27 15:33:44
如果将work·one中变量Num定义为字符型,然后where语句改为 Where Num=1  结果是不是就变化了?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群