由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Statistics版 - 请问sas有把全部数据从char变为numeric的办法么?
相关主题
问一个SAS的问题,急急!!还有个问题,如何将一条记录变为空值。
My own solution 请教SAS Macro - Baozi to thank you!!!SAS BASE Questions
sas proc report的问题。请教个概率计算的问题
SAS how to change variables' nameSAS data merge求助
再来请教,在SAS中如何得到下面的结果?问个SAS enterprise的问题
SAS 转 Excelhelp how to convert char to numeric variable?
有什么办法能够数出sas dataset里的变量数。一道SAS BASE题,HELP!
SAS问题请教关于missing value的问题
相关话题的讨论汇总
话题: allchar话题: strip话题: input话题: array话题: char
进入Statistics版参与讨论
1 (共1页)
l******r
发帖数: 682
1
一个数据,variable比较多,大概300个。
是不是只有先把variable名取出来存成macro数组,然后再用loop一个一个改?
谢谢
k*******a
发帖数: 772
2
可以用 SAS 的dictionary来找出data有什么variable
data test;
input var1 $ var2 $;
datalines;
3.4 5
4.55 5.3
4 3.444
;
run;
proc sql noprint;
select strip(name)||"_n=input("||strip(name)||",best12.)" into :convert
separated by ";"
from sashelp.vcolumn
where libname="WORK" and upcase(memname)="TEST";
quit;
data test1;
set test;
&convert;
run;
p***e
发帖数: 118
3
天才,您真是天才

【在 k*******a 的大作中提到】
: 可以用 SAS 的dictionary来找出data有什么variable
: data test;
: input var1 $ var2 $;
: datalines;
: 3.4 5
: 4.55 5.3
: 4 3.444
: ;
: run;
: proc sql noprint;

L****n
发帖数: 3545
4
mark, super cow !

【在 k*******a 的大作中提到】
: 可以用 SAS 的dictionary来找出data有什么variable
: data test;
: input var1 $ var2 $;
: datalines;
: 3.4 5
: 4.55 5.3
: 4 3.444
: ;
: run;
: proc sql noprint;

S*x
发帖数: 705
5
aglee. niu code

【在 p***e 的大作中提到】
: 天才,您真是天才
a****g
发帖数: 8131
6
this is a nice code

【在 k*******a 的大作中提到】
: 可以用 SAS 的dictionary来找出data有什么variable
: data test;
: input var1 $ var2 $;
: datalines;
: 3.4 5
: 4.55 5.3
: 4 3.444
: ;
: run;
: proc sql noprint;

s*****9
发帖数: 285
7
&convert will resolve to
strip(name1)_n=input(strip(name1),best12.);
strip(name2)_n=input(strip(name2),best12.);
.....
strip(namen)_n=input(strip(namen),best12.);
?
what's in vcolumn?
name1;name2;....namen?
t**s
发帖数: 156
8
如果知道有多少variable需要转换,也可以用下面的方法.
假定有100个variable
Data test1;
Set test;
Array allchar(*) _char_;
Array newvar(*) newvar1 - newvar100;
Do i=1 to dim(allchar);
newvar(i)=Input(allchar(i), best.);
End;
Run;
如果不知道, 先找出来
proc sql noprint;
select count(*) into:cnt from sashelp.vcolumn
where libname="WORK" and upcase(memname)="TEST" and upcase(type=)"CHAR";
quit;
Data test1;
Set test;
Array allchar(*) _char_;
Array newvar(*) newvar1 - newvar&cnt;
Do i=1 to dim(allchar);
newvar(i)=Input(allchar(i), best.);
End;
Run;
d******9
发帖数: 404
9
ghh
k*z
发帖数: 4704
10
array加循环更简单吧
相关主题
SAS 转 Excel还有个问题,如何将一条记录变为空值。
有什么办法能够数出sas dataset里的变量数。SAS BASE Questions
SAS问题请教请教个概率计算的问题
进入Statistics版参与讨论
p********a
发帖数: 5352
11
现在同学们的SAS都很强啊。5年前的时候,难点的SAS问题常常就挂在那里。
s*******2
发帖数: 499
12
我常用的方法是,建一个array,包括所有char variable,然后一步就可以全改成
numeric了。

【在 l******r 的大作中提到】
: 一个数据,variable比较多,大概300个。
: 是不是只有先把variable名取出来存成macro数组,然后再用loop一个一个改?
: 谢谢

k*******a
发帖数: 772
13
如果变量很多,名字不规则,那么array出来的numeric变量名很难和原先的对应起来

【在 s*******2 的大作中提到】
: 我常用的方法是,建一个array,包括所有char variable,然后一步就可以全改成
: numeric了。

p***r
发帖数: 920
14
i like more brutal one
transpose wide -> long
all variable char -> numeric
transpose long -> wide
p**********o
发帖数: 21
15
我只知道用用proc contents,sashelp.vcolumn还不知道呢,学习了
另外,那几个"是什么意思啊?是转义吗?

【在 k*******a 的大作中提到】
: 可以用 SAS 的dictionary来找出data有什么variable
: data test;
: input var1 $ var2 $;
: datalines;
: 3.4 5
: 4.55 5.3
: 4 3.444
: ;
: run;
: proc sql noprint;

a********t
发帖数: 1810
16
只会在ENTERPRISE GUID, MINER里转,自动转,不需要写CODE
1 (共1页)
进入Statistics版参与讨论
相关主题
关于missing value的问题再来请教,在SAS中如何得到下面的结果?
Help needed! What sas function can read char. date HH:DD:SS:SSS to numeric?SAS 转 Excel
SAS问题求助有什么办法能够数出sas dataset里的变量数。
Sas enterprise guideSAS问题请教
问一个SAS的问题,急急!!还有个问题,如何将一条记录变为空值。
My own solution 请教SAS Macro - Baozi to thank you!!!SAS BASE Questions
sas proc report的问题。请教个概率计算的问题
SAS how to change variables' nameSAS data merge求助
相关话题的讨论汇总
话题: allchar话题: strip话题: input话题: array话题: char