楼主: firstknife
8288 19

关于SAS分列,请高手支招儿 [推广有奖]

11
fzcoolbaby 发表于 2011-5-11 12:09:47
凑个热闹,估计我的是做简单的了,首先将数据以txt格式存在D盘下命名为1,程序如下:
data a;
      infile "D:\1.txt" missover dlm='+';
          input (a1-a4)($);
run;

12
zhaoping603 发表于 2011-5-11 13:19:39
9# zhaoping603
谢谢。其实我觉得自己勉强算个入门级别,真的很差。不时会来论坛学习大家的程序。有问题多亏大家的帮忙。

13
sas_user 发表于 2011-5-11 14:25:05
9# zhaoping603
学习了,多谢。

14
firstknife 发表于 2011-5-11 14:57:47
9# zhaoping603

非常感谢!这回从头到尾明白了,再次感谢!
同时也一并感谢楼上几位高手的指点,大家群策群力,终于搞定了,谢谢各位!

15
hopewell 发表于 2011-5-11 19:50:41
  1. data aa;
  2.     input a$20.;
  3. cards;
  4. a+b
  5. ab+c+d
  6. a+dec+bdfs+j
  7. k
  8. ;
  9. data temp;
  10.     set aa;
  11.     do col_id=1 to count(a,'+')+1;
  12.         row_id=_n_;
  13.         val=scan(a,col_id);
  14.         output;
  15.     end;
  16. run;
  17. proc transpose data=temp out=temp(drop=_name_) prefix=val_;
  18.     id col_id;
  19.     by row_id;
  20.     var val;
  21. run;
复制代码
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
temple89 + 1 + 1 + 1 热心帮助其他会员

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

观钓颇逾垂钓趣 种花何问看花谁

16
sas_user 发表于 2011-5-11 21:12:56
hopewell, 学习了,巧思。

17
wb8686 发表于 2011-5-16 14:09:37
data a;
length a $100;
input a ;
length=length(compress(a,'+','k'));
cards;
a+b
ab+c+d
a+dec+bdfs+j
k
;run;
proc sql;
select max(length) into:length
from a;
quit;
%put &length;
%macro a;
data b;
set a;
%do i=1 %to &length;
a&i=scan(a,&i,"+");
%end;
run;
%mend;
%a;

18
snk0_0 发表于 2012-9-19 16:43:37
请问下数据集之间的话~~应该怎么写啊?

19
旋律之歌 在职认证  发表于 2015-9-10 12:19:06
高手在民间呀。才开始学习sas,看程序都还有吃力。我的问题和群主类似,但又不完全一样,我的某变量里面包含了多个数据,如变量A包括1,2,3,4,四个数据,我想把变量A,拆分成变量A、B、C、D,使他们分别各自包括1,2,3,4.意思就是把调查对象做的多项选择题的答案,拆分成单项,求解是不是和楼主一样的程序呢?因为样本量很大,用excel带不动。

20
420948492 发表于 2015-9-10 12:35:22
{:3_42:}

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

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