由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Statistics版 - 请问这个程序的OUTPUT为啥跟我想的不一样。。。。
相关主题
请教SAS问题请教 2 道SAS Adv 真题
请教一sas code急!SAS adv的一道题,谢谢!
SAS code 问题请教SAS ADV一道题!
求教一个简单的data step 牛肉包SAS question
How to combine overlapped data[合集] 说一个proc sort的很简单却总有人错的问题
sas question ( you bao zi )请教一sas programmm
[问题]sql into产生宏变量长度的限制overall mean in sas for several variables
which route in SAS is faster?如何比较两个proc contents的结果?
相关话题的讨论汇总
话题: ca话题: de话题: pa话题: agg话题: note
进入Statistics版参与讨论
1 (共1页)
p*****o
发帖数: 543
1
data a;
input State $ Note $;
cards;
CA A
CA B
CA C
CA D
DE A
DE R
DE I
DE W
PA W
PA E
PA W
;
run;
proc sort data=a;
by state note;
run;
data b;
length agg $ 50;
set a;
by state note;
retain agg;
if first.state then agg=note;
else agg=agg||note;
run;
我以为出来的结果会类似:
CA A A
CA B AB
CA C ABC
CA D ABCD
DE A ...
DE R
DE I
DE W
PA W
PA E
PA W
可是出来的却是:
CA A A
CA B A
CA C A
CA D A
DE A ...
DE R
DE I
DE W
PA W
PA E
PA W
请问,这个问题出在哪里呢???
b******e
发帖数: 539
2
因为你定义了agg的长度是50,agg||note的长度就是50+note的长度。当你把它assign
给agg的时候,因为agg的长度是50,超过50的部分就都被chopped,所以note就都被
chopped。可以改成trim(agg)||note.
p*****o
发帖数: 543
3
i see!!
thank you so much!!

assign

【在 b******e 的大作中提到】
: 因为你定义了agg的长度是50,agg||note的长度就是50+note的长度。当你把它assign
: 给agg的时候,因为agg的长度是50,超过50的部分就都被chopped,所以note就都被
: chopped。可以改成trim(agg)||note.

1 (共1页)
进入Statistics版参与讨论
相关主题
如何比较两个proc contents的结果?How to combine overlapped data
how to trasform data.sas question ( you bao zi )
SAS菜鸟求助,请好心达人帮个忙解决一个SAS问题[问题]sql into产生宏变量长度的限制
sas proc means/freq问题which route in SAS is faster?
请教SAS问题请教 2 道SAS Adv 真题
请教一sas code急!SAS adv的一道题,谢谢!
SAS code 问题请教SAS ADV一道题!
求教一个简单的data step 牛肉包SAS question
相关话题的讨论汇总
话题: ca话题: de话题: pa话题: agg话题: note