楼主: pingguzh
8966 13

SAS字符型无法转换为数值型 [推广有奖]

  • 0关注
  • 4粉丝

菜鸟

副教授

48%

还不是VIP/贵宾

-

威望
0
论坛币
3 个
通用积分
20.1546
学术水平
1 点
热心指数
7 点
信用等级
3 点
经验
20017 点
帖子
870
精华
0
在线时间
433 小时
注册时间
2012-10-29
最后登录
2024-1-28

楼主
pingguzh 发表于 2016-11-2 14:24:50 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
求助SAS字符型无法转换为数值型
我试过input函数,不行,提示无效

原始变量x,是2位数的字符变量,从1到19,从mysql里面导出为excel的

我试过把sas 输出结果中的值,比如1、2、3.。。复制到程序中,或者在1后面加上空格,或者从数据集中复制1到input程序中,都无法成功

应该是字符格式问题

因为sql出来的字符,我看到1后面跟了一个回车键,感觉应该是这个影响,但是无法解决?有人遇到过这个情况吗


二维码

扫码加我 拉你入群

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

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

关键词:数值型 字符型 Input EXCEL MySQL excel mysql 程序 影响

统计爱好

沙发
learsaas 发表于 2016-11-2 14:37:43
把部分数据贴出来。才能解决问题

藤椅
MatthewZLA 发表于 2016-11-2 14:43:15
DATA TEMP1;
SET TEMP;
NEW_VAR=PUT(VAR,$2.);
FORMAT NEW_VAR $2.;
RUN;
/*VAR是数值型的变量名,NEW_VAR是转化完字符型的变量名。*/

板凳
pingguzh 发表于 2016-11-2 15:28:54
@MatthenewZLA   你似乎理解错了我的问题,我的问题是字符型转为数值型,不是数值型转为字符型

报纸
pingguzh 发表于 2016-11-2 15:47:20
learsaas 发表于 2016-11-2 14:37
把部分数据贴出来。才能解决问题
我想使用的程序是
data yes;
set med0;
where x="1";
run;


筛选出x=1的数据,但是不行

med0.rar
下载链接: https://bbs.pinggu.org/a-2129133.html

693 Bytes

本附件包括:

  • med0.sas7bdat

统计爱好

地板
进击的小瓶盖 发表于 2016-11-2 16:02:53
pingguzh 发表于 2016-11-2 15:47
我想使用的程序是
data yes;
set med0;
你想用的程序中x=“1”,给1加了引号,要求1 是字符型

7
l1i2n3i4n5g 在职认证  发表于 2016-11-2 16:29:05
原始x中有看不见的垃圾字符

data med1;
set med0;
x=compress(x,,'kd');
run;

data yes;
set med1;
where x='1';
run;
已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
pingguzh + 2 + 3 + 3 + 3 精彩帖子

总评分: 论坛币 + 2  学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

8
pingguzh 发表于 2016-11-2 16:49:38
哦哦,compress我也使用过,但是没有用kd,kd是什么意思呢?

9
pingguzh 发表于 2016-11-2 16:50:31
@进击的小瓶盖
我想用的程序中x=“1”,是需要给1加引号啊,因为是字符型

10
pingguzh 发表于 2016-11-2 16:52:43
还有为什么要在compress这里写两个逗号,是什么意思呢?请教一下

这个方法是可以运行成功的

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 21:37