全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
7013 14
2014-11-22
1.jpg
1.jpg

如果按照+0, 或者*1,则得到的结果仍然是字符型,并没有真正转化为数值型啊。
proc import out=c datafile="C:\Users\Administrator\Desktop\c.xls" dbms=excel replace;getnames=yes;run;

data c1;set c;
stkcd=stkcd*1;
run;

附件列表

C.xls

大小:7.6 MB

 马上下载

二维码

扫码加我 拉你入群

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

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

全部回复
2014-11-22 13:26:32
哈哈,我都是stkcd=stkcd*1;不用drop,不过老师说过这种方法可能会出错,他说一般建议用a=input(stkcd,8.)来转换,不过我目前用那么多次没有碰到直接+0或*1会有出错的,还有,如果你想直接保留前面的几个0的话,可以先在excel里转
二维码

扫码加我 拉你入群

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

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

2014-11-22 17:11:46
heguima 发表于 2014-11-22 13:26
哈哈,我都是stkcd=stkcd*1;不用drop,不过老师说过这种方法可能会出错,他说一般建议用a=input(stkcd,8.) ...
谢谢!我按照*1的方法试了试,虽然看起来像是转成了数值型,但是双击该列,显示出来的仍然是字符型(+1也是这样)。另外,数值后面还有一个空格,给以后的处理造成了不小的麻烦。另外,input好像也只能到另外一个变量中,a=input(stkcd,8.),stkcd变成了a,为了保持格式,还是要删去stkcd,把a重命名为stkcd
二维码

扫码加我 拉你入群

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

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

2014-11-23 12:39:26
试了一下,A是字符,B和C是数字
data c1;
input a $;
b=a*1;
c=a+0;
cards;
0001
0002
;
二维码

扫码加我 拉你入群

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

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

2014-11-23 12:43:28
lizhewenbei 发表于 2014-11-22 17:11
谢谢!我按照*1的方法试了试,虽然看起来像是转成了数值型,但是双击该列,显示出来的仍然是字符型(+1也 ...
这个问题的原因是stkcd依旧是字符型变量,所以你原来用stkcd1=stkcd,然后drop stkcd,再rename stkcd1=stkcd的方法是正确的
二维码

扫码加我 拉你入群

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

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

2014-11-23 19:59:51
teqel 发表于 2014-11-23 12:43
这个问题的原因是stkcd依旧是字符型变量,所以你原来用stkcd1=stkcd,然后drop stkcd,再rename stkcd1=s ...
试了一下,A是字符,B和C是数字
data c1;
input a $;
b=a*1;
c=a+0;
cards;
0001
0002
;为何你的这个举例就能较好地避免我所遇到的困惑呢?该例中stkcd也是字符型变量啊。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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