SAS中文论坛
标题:
请教
[打印本页]
作者:
shiyiming
时间:
2009-8-28 17:20
标题:
请教
想通过ID和AIA做一个频数分析。但是AIA是字符型变量。想请问一下该怎么办。还有,如果说数据量特别大,假设AIA下面的指标表现有几百个。这种情况怎么办?本人刚刚学习SAS.希望各位多多帮忙。谢谢
ID A1A
130007 一般
030006 一般
000016 一般
000003 一般
200007 较好
100014 一般
130031 较差
040014 一般
000019 较好
260010 一般
040015 较好
270023 好
000006 一般
000019 一般
340025 较好
130021 较差
0601 一般
110023 好
0614 较差
340023 较好
130006 较差
270030 较好
200033 差
200005 好
030014 较好
050025 一般
120015 较差
120008 好
050004 较好
110021 一般
110001 较好
340009 差
110009 较好
000009 较好
130016 较差
130013 一般
190004 较好
340006 一般
0627 一般
050018 一般
110030 较好
040023 一般
110025 较好
270014 一般
100002 较好
270016 一般
000030 较差
0618 一般
350005 较好
130028 较差
050020 差
050019 差
340028 一般
340026 一般
350003 一般
好
130020 好
030007 一般
350014 较好
130027 一般
270011 较好
100003 较好
260020 一般
340019 较好
110027 一般
260018 较差
200022 一般
190025 一般
110005 一般
340007 较好
050001 较好
000031 较差
100011 一般
0602 好
190010 较好
120001 较好
000032 较好
350023 较好
200013 较好
190018 好
200010 较好
100007 较好
260012 较好
190009 较好
130029 较差
100017 较好
180001 一般
050002 一般
110014 较好
200020 较好
000014 较好
000001 一般
190017 好
0613 一般
232332 较差
110018 一般
340018 一般
350009 较好
260005 较好
350019 较好
130031 较好
110008 较好
130014 较好
000020 一般
120013 较好
190007 较好
100024 较好
190008 较好
030003 较好
030004 一般
180016 一般
050005 较好
350032 好
110013 一般
0620 较好
130026 一般
100006 较好
100012 好
120018 一般
120019 一般
130010 较好
190013 较好
190014 较好
110028 一般
0607 一般
200025 较好
180009 一般
200023 一般
100010 较好
260029 较好
260031 一般
100012 一般
190027 较好
130004 一般
350007 较好
110004 较差
200021 较好
340004 一般
050031 一般
270029 较好
040016 较好
130005 较好
030016 好
130010 一般
130016 一般
130006 一般
190026 较好
0606 好
200027 一般
130001 一般
120028 一般
110006 较好
030026 一般
190029 较好
180026 一般
0610 一般
340017 一般
120020 一般
200018 一般
000017 较好
000004 一般
050003 好
000015 一般
000002 一般
340022 一般
0611 较好
260022 较好
100028 较好
110026 一般
260027 一般
100027 较好
260030 较好
200009 较差
340010 一般
030018 一般
0617 一般
100018 一般
000021 较好
000008 一般
030008 一般
190028 一般
270017 较好
130012 较好
030023 较好
050008 一般
100023 一般
030029 一般
040005 好
120003 较好
350015 较好
030028 较好
100020 一般
300004 较好
050026 一般
000007 一般
190030 好
000004 较好
100008 较好
130027 一般
050029 一般
0626 较差
030027 一般
050022 一般
340013 一般
340014 一般
180008 一般
100029 一般
130026 一般
000018 一般
200016 一般
040028 较好
0621 一般
000001 较好
000016 较好
000011 一般
030022 较好
040021 好
270010 好
180024 较好
120002 较好
050023 一般
260006 一般
190002 较好
200011 较好
110017 较好
190006 较好
260014 较好
260021 一般
100026 较好
030010 一般
030015 较好
030011 较好
030025 一般
340024 一般
200001 较好
100007 较好
190021 一般
040004 较好
000013 好
040025 好
050007 较好
100022 一般
130021 较好
130019 较好
0624 较好
030019 较好
190022 较好
180028 较好
030021 一般
130009 较差
000029 较好
180014 好
350016 一般
130019 一般
130002 一般
050024 一般
180012 一般
000029 一般
000010 较好
120014 一般
03005 较好
000002 一般
030030 较差
260004 一般
030009 较好
050011 较好
130012 一般
000027 较好
200015 一般
270022 一般
0629 一般
040017 较好
350030 较差
030002 较差
270021 一般
260003 一般
120021 一般
120024 一般
000020 一般
000024 一般
000030 一般
120022 一般
120023 一般
260015 一般
100014 好
200026 一般
050009 较好
130013 一般
100015 较好
350025 一般
270019 较好
260023 较好
270026 好
000026 一般
130011 较好
000013 一般
050028 一般
100009 一般
340008 较好
350024 较好
260025 一般
200028 一般
350008 较好
180003 较好
180004 一般
130015 一般
260019 较好
120012 较好
130025 较差
270018 较好
130032 较差
350027 好
350026 好
100025 好
120016 好
130011 一般
100032 一般
100003 一般
100031 较好
110030 较好
260002 较好
190024 较差
050013 一般
040001 较差
270013 较好
270001 较好
180005 较好
270031 较好
120005 较差
100021 一般
0634 较差
200029 一般
200031 一般
000023 较差
340027 较差
270027 较差
270003 一般
260001 较好
0619 一般
180019 较好
190003 较好
100029 较好
040003 一般
100009 好
0608 较好
0609 较好
110007 较好
040020 较好
270005 较好
350013 一般
260028 较差
040017 一般
100020 一般
0603 一般
100027 一般
130018 一般
180010 一般
0623 一般
270012 一般
000006 一般
100002 一般
260032 一般
040019 较好
040007 一般
190032 较好
130022 较好
180018 较差
270032 好
350020 较好
100016 较好
190011 好
110014 一般
0616 较差
110002 较好
130015 好
270008 较好
110020 较好
190001 较好
050021 一般
100015 较好
040024 一般
260008 一般
100004 一般
200012 较好
100012 一般
100019 较好
130030 一般
350021 一般
350002 一般
100001 一般
0612 较好
050030 一般
100021 一般
260007 一般
350011 较好
340016 好
050006 一般
050016 较好
200002 一般
000007 好
100022 好
100013 较好
130032 较好
340029 一般
050017 一般
000021 一般
000024 一般
100008 一般
0633 一般
200006 较好
260024 较好
120011 一般
120007 一般
180020 一般
222333 较好
110016 较好
180007 一般
030024 较好
180011 较好
350006 较好
350010 较好
200008 一般
000005 好
100019 一般
0615 一般
110003 一般
180023 一般
0630 好
350018 较好
180021 较好
040029 好
040027 较好
100001 较好
200014 一般
100026 一般
270007 较好
270024 较好
100030 一般
260013 一般
0604 较好
0605 较好
270015 一般
000022 较差
340003 较好
030012 一般
030013 较好
000011 一般
110022 较好
190020 较好
040018 较好
260011 较差
130017 较好
120009 一般
000026 较好
030020 一般
270009 较好
0622 一般
130020 好
260009 好
000009 一般
000028 一般
000022 一般
050014 较好
350022 一般
100016 较好
100030 较好
130028 较好
120017 一般
180017 一般
130017 一般
000028 较好
001825 较好
001827 一般
120025 较好
350029 较好
260016 一般
040006 较好
340015 一般
180006 较好
100005 一般
120006 一般
340002 较好
130023 较好
100025 较好
180002 较差
110011 好
030001 较好
130008 一般
130029 较好
100018 较好
350001 一般
000015 较好
030017 较好
130009 一般
270004 较好
000017 较好
270020 较好
270006 好
200019 较好
100024 一般
200017 较好
350017 较好
120026 差
000012 较好
120004 一般
130023 较好
130004 较好
340001 较好
130018 一般
100006 一般
000008 较好
000008 较好
130003 一般
130003 较差
100013 较好
190016 一般
0628 较好
040008 一般
200004 较差
110024 一般
200003 较好
040010 一般
000005 一般
260017 较差
130014 差
000003 较好
040016 较好
100010 较好
100011 较好
100031 较好
100028 好
050015 较好
200024 一般
120027 较好
270028 较好
050027 一般
110010 较好
130005 较好
040002 较好
000018 一般
050010 一般
110012 好
130008 一般
040015 好
000025 较好
200032 较差
040011 一般
000010 较好
190031 较好
190005 较好
0625 较差
190015 较好
130025 较好
000014 一般
040009 一般
000012 差
270025 较好
260026 一般
000025 差
190023 较好
120010 较好
100031 较好
040026 较好
100023 一般
130022 较差
050012 较好
180013 较好
100005 较好
100017 较好
340005 一般
130007 较好
130002 较好
190012 较好
040013 差
130024 较好
340011 较好
200030 差
000023 较好
130001 一般
270002 较好
040022 一般
350012 一般
340020 较好
340021 较好
110018 较好
350031 一般
040012 一般
000027 一般
180022 较好
0631 较好
0632 较好
190019 较好
130024 较好
130030 较好
350028 一般
作者:
shiyiming
时间:
2009-8-28 22:47
标题:
Re: 请教
[code:3jplabrv]%macro chr_to_num(inds,outds,chr_var,keep_chr=yes);
options nosymbolgen mprint;
%if %upcase(&keep_chr)=NO %then %do;
%local varlist;
%let dsid=%sysfunc(open(&inds,i));
%syscall set(dsid);
%let nvar=%sysfunc(attrn(&dsid,nvar));
%do i=1 %to &nvar;
%let varlist=&varlist %sysfunc(varname(&dsid,&i));
%end;
%let rc=%sysfunc(close(&dsid));
%end;
proc sql;
create table &chr_var._list as
select distinct upcase(&chr_var) as name from &inds;
quit;
%if %index(&outds,'.')=0 %then %let outlib=work;
%else %let outlib=%scan(&outds,1,'.');
%do i=1 %to 2;
data &chr_var._fmt;
set &chr_var._list;
fmtname="&chr_var._fmt";
%if &i=1 %then %do;
type='c';
rename name=start;
label=_n_;
%end;
%else %do;
type='n';
start=_n_;
rename name=label;
%end;
run;
proc format library=&outlib cntlin=&chr_var._fmt;
run;
%end;
data &outds;
set &inds;
%upcase(&chr_var._num)=input(put(upcase(&chr_var),$&chr_var._fmt.),best8.);
%if %upcase(&keep_chr)=NO %then %do;
drop &chr_var;
rename &chr_var._num=%upcase(&chr_var);
%end;
format &chr_var._num &chr_var._fmt.;
run;
%if %upcase(&keep_chr)=NO %then %do;
data &outds;
retain &varlist;
set &outds;
run;
%end;
proc datasets library=work nolist nodetails;
delete &chr_var._list _temp_raw /memtype=data;
quit;
proc catalog cat=&outlib..formats;
delete &chr_var._fmt /et=formatc;
quit;
%mend chr_to_num;
data raw;
input ID $ A1A $20.;
datalines;
270023 好
000006 一般
000019 一般
340025 较好
130021 较差
0601 一般
110023 好
0614 较差
340023 aaaa
130006 AAaa
270030 较好
200033 差
200005 好
030014 bb
050025 ccccccCCCCcccccccccc
;
%chr_to_num(raw,work.temp,a1a)
/*%chr_to_num(raw,work.temp,a1a,keep_chr=no)*/[/code:3jplabrv]
欢迎光临 SAS中文论坛 (https://mysas.net/forum/)
Powered by Discuz! X3.2