楼主: mufuqu
6053 9

函数 INPUT 的参数无效 [推广有奖]

  • 0关注
  • 1粉丝

硕士生

88%

还不是VIP/贵宾

-

威望
0
论坛币
442 个
通用积分
0
学术水平
1 点
热心指数
2 点
信用等级
1 点
经验
1844 点
帖子
111
精华
0
在线时间
227 小时
注册时间
2011-9-30
最后登录
2017-6-2

楼主
mufuqu 发表于 2016-2-16 17:36:05 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
想求两个日期之间的月份数,opendate是20160101这种格式,运行后提示INPUT 的参数无效,请问各位大神是怎么回事啊?

data result;
set input;
opendate1=input(opendate,yymmdd8.);
year=intck("month",opendate1,today());
run;



二维码

扫码加我 拉你入群

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

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

关键词:Input put Result RESUL Today result

沙发
孤单的我们 发表于 2016-2-17 09:11:45
至少有1个opendate不能读成YYMMDD10.的格式,日志里会提示哪些观测的opendate不能input

藤椅
co_fund 发表于 2016-2-17 09:34:36
data result;
opendate1=input('20160215',yymmdd8.);
year=intck("month",opendate1,today());
run;
这么写没有出错,也就是说,你input中的opendate可能被存成数字了。

板凳
mufuqu 发表于 2016-2-17 09:48:32
顶,求大神支招~

报纸
co_fund 发表于 2016-2-17 09:53:29
我用下面的代码,运行正常,所以你input里的opendate可能是以数字形式存在。
  1. data result;
  2. opendate1=input('20160215',yymmdd8.);
  3. year=intck("month",opendate1,today());
  4. run;
复制代码

地板
tonic_zlj 发表于 2016-2-19 15:51:11
mufuqu 发表于 2016-2-17 09:48
顶,求大神支招~
先用put转成字符格式,然后再用Input

7
teqel 发表于 2016-2-19 21:01:24
tonic_zlj 发表于 2016-2-19 15:51
先用put转成字符格式,然后再用Input
opendate1=input(put(opendate, 8.), yymmdd8.);

8
mufuqu 发表于 2016-2-22 14:47:58
co_fund 发表于 2016-2-17 09:53
我用下面的代码,运行正常,所以你input里的opendate可能是以数字形式存在。
看了一下是这个原因,谢谢~

9
mufuqu 发表于 2016-2-22 14:48:40
tonic_zlj 发表于 2016-2-19 15:51
先用put转成字符格式,然后再用Input
试了下可以了,多谢多谢~~

10
mufuqu 发表于 2016-2-22 14:49:35
teqel 发表于 2016-2-19 21:01
opendate1=input(put(opendate, 8.), yymmdd8.);
问题解决了,谢谢~~

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

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