楼主: Alwaysonline21
2184 18

SAS小白求助 [推广有奖]

  • 19关注
  • 2粉丝

硕士生

53%

还不是VIP/贵宾

-

威望
0
论坛币
608 个
通用积分
31.1560
学术水平
7 点
热心指数
8 点
信用等级
5 点
经验
1959 点
帖子
118
精华
0
在线时间
168 小时
注册时间
2013-10-15
最后登录
2019-9-2

楼主
Alwaysonline21 发表于 2014-12-29 21:14:55 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
1.png
在SAS上运行了上面的程序,发现是选A
但是不明白为什么选A
请各位SAS大牛给与指导
在此先谢谢了
二维码

扫码加我 拉你入群

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

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

关键词:不明白 程序

1.png (19.25 KB)

1.png

沙发
420948492 发表于 2014-12-29 22:22:35
第一步JObcategory="FA"限定了变量的长度为2,第三步出现了截断

藤椅
Alwaysonline21 发表于 2014-12-29 22:40:22
420948492 发表于 2014-12-29 22:22
第一步JObcategory="FA"限定了变量的长度为2,第三步出现了截断
谢谢你的解答  一开始是这样想的  但是我试了一下  当我把jobcategory=“FA   ”写成这样的时候 发现结果还是选A  可能根本就不是截断的问题  你可以试试的
Thanks vary much  for your answer!

板凳
mingfeng07 学生认证  发表于 2014-12-29 23:37:34
Alwaysonline21 发表于 2014-12-29 22:40
谢谢你的解答  一开始是这样想的  但是我试了一下  当我把jobcategory=“FA   ”写成这样的时候 发现结果 ...
jobcategory="FA"和jobcategory="FA      "长度是一样的,一般计算长度时会自动消除尾部空格。
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
heguima + 1 + 1 + 1 精彩帖子

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

报纸
420948492 发表于 2014-12-30 08:59:30
  1. data s;
  2. j1="FA";
  3. j2="1";
  4. j3=j1||j2;
  5. run;
复制代码
结果不是FA1吗?你是不是没有吧这一列拉开

地板
Alwaysonline21 发表于 2014-12-30 13:32:39
420948492 发表于 2014-12-30 08:59
结果不是FA1吗?你是不是没有吧这一列拉开
这样是FA1  但是你是用的j3=j1||j2  
原题是j1=j1||j2
所以是不一样的

7
Alwaysonline21 发表于 2014-12-30 13:33:28
mingfeng07 发表于 2014-12-29 23:37
jobcategory="FA"和jobcategory="FA      "长度是一样的,一般计算长度时会自动消除尾部空格。
但是还是没有解决我的疑问呢.......

8
mingfeng07 学生认证  发表于 2014-12-30 13:49:35
Alwaysonline21 发表于 2014-12-30 13:33
但是还是没有解决我的疑问呢.......
前面已经说得很明白了。。
a='FA';或者a='FA    ';
空格添加并不影响a的长度,a的长度都是2.
b='1';
a=a||b;
得到‘FA1’或者‘FA   1’,但是由于a的长度是2,所以截断还是‘FA'.

9
星落荒原 发表于 2014-12-31 10:00:59
mingfeng07 发表于 2014-12-30 13:49
前面已经说得很明白了。。
a='FA';或者a='FA    ';
空格添加并不影响a的长度,a的长度都是2.
我在sas中验证了:
a='FA';或者a='FA    ';
空格添加要影响a的长度,a的长度都是由2变成了6;你可以用proc contents data=;验证
b='1';
a=a||b;
加了空格以后output中还是显示‘FA1’,但是实际上是‘FA1       ’只是后面的空格你没用看出来
所以你不管加多少个空格在a后面,a=a||b;显示的都是a
a=a||b;永远只用a的长度,显示出来还是a的原始值
你可以试验把a=’FA         g‘     a=a||b会显示为’FA         g‘ 永远都是a的初始设定值
已有 1 人评分论坛币 收起 理由
admin_kefu + 60 根据规定进行奖励

总评分: 论坛币 + 60   查看全部评分

10
星落荒原 发表于 2014-12-31 10:03:06
mingfeng07 发表于 2014-12-29 23:37
jobcategory="FA"和jobcategory="FA      "长度是一样的,一般计算长度时会自动消除尾部空格。
不是的。jobcategory="FA"和jobcategory="FA      "长度是不一样的,尾部空格要占位,不会自动消除空格

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-18 12:59