楼主: blliufan
2262 6

关于informat,还求解释 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

84%

还不是VIP/贵宾

-

威望
0
论坛币
887 个
通用积分
0.0003
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2530 点
帖子
138
精华
0
在线时间
200 小时
注册时间
2009-9-28
最后登录
2021-10-9

楼主
blliufan 发表于 2015-8-17 13:01:08 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
data test2;
informat x 8.2;
x=1234.1234;
put x=;
run;

data test21;
informat x 8.1;
x=1234.1234;
put x=;
run;

data test22;
informat x 8.;
x=1234.1234;
put x=;
run;

为什么这几个例子的结果是一样的?

比如生成test2的时候,x不应该被控制只有两位小数么?为何依然是四位?

求解释
二维码

扫码加我 拉你入群

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

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

关键词:informat informa inform format FORMA

jennings!

沙发
priss111 发表于 2015-8-17 13:53:59
data test2;
format x 8.2;
x=1234.1234;
put x=;
proc print;
run;

data test21;
format x 8.1;
x=1234.1234;
put x=;
proc print;
run;

data test22;
format x 8.;
x=1234.1234;
put x=;
proc print;
run;


informat是定义输入时的格式;
format是定义输出时的格式.

藤椅
blliufan 发表于 2015-8-17 15:04:26
priss111 发表于 2015-8-17 13:53
data test2;
format x 8.2;
x=1234.1234;
那在我的例子里,输入格式的定义是错误的,为何还能读出来。。比如,对于第一段,x=1234.1234,而我让informat为8.2,但是输入的数据里,小数点后有四位

板凳
priss111 发表于 2015-8-17 16:23:27
informat 与 input一起使用.

format与put一起使用.

生成数据集中的变量的属性(column attributes)中格式是8.2,
看到的数据集已经是format的了(如果没有format的话,SAS就按照某变量的第一个值格式定义该变量的格式).

报纸
blliufan 发表于 2015-8-17 16:43:43
priss111 发表于 2015-8-17 16:23
informat 与 input一起使用.

format与put一起使用.
Thanks

地板
wh7064rg 发表于 2015-8-18 00:12:32
priss111 发表于 2015-8-17 16:23
informat 与 input一起使用.

format与put一起使用.
谢谢分享

7
yangdelong1988 发表于 2015-8-18 13:14:42
这么说吧,informat规定的是读入数据的格式,它只是以这种格式读入数据,format是最终数据呈现的格式,所以你想改变字段的展现格式要用format,而input后面跟的格式就是字段的输出格式,跟format一样

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

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