永发信息网

sas 怎么对一个数据表中某一列数据0-1化?

答案:2  悬赏:10  手机版
解决时间 2021-02-22 22:51
  • 提问者网友:箛茗
  • 2021-02-22 03:37
0-1化就是
整列数据记做A
某个数据x都变成 (A-min(A))/(max(A)-min(A))

顺便问一句 没有办法像C++那样像有一个i这样从上往下不断扫描所有数吗?
最佳答案
  • 五星知识达人网友:雾月
  • 2021-02-22 04:21
直接按公式编辑就好:
data test;
set yourdata;
new_a=(A-min(A))/(max(A)-min(A));

run;
全部回答
  • 1楼网友:行雁书
  • 2021-02-22 05:05
data a ; input num date $ data $; cards; 1 a a1 2 a a2 1 b b1 2 b b2 ;run; proc sort data=a ;by date num;run; data b; set a; by date num; array arr{*} $ data_l1-data_l2; retain arr; if first.date then do i=1 to dim(arr); arr(i)=''; end; if num=1 then arr(1)=num; if num=2 then arr(2)=data; if last.date; run; proc transpose data=b out=c(drop=_name_); var data_l1 data_l2; id date; run; 先到这,你看一下吧。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯