2017-04-03 150 views
0

假设数据集的样子:如何将SAS中的所有列乘以另一列?

A B C 
1 2 0.2 
2 7 0.3 
3 10 0.7 

,我想用C乘列A和B以及更新的值?什么是最有效的方法来做到这一点?

+0

请显示你的t和你想要的输出。这是一个非常基本的问题,除非缺少某些东西。 – Reeza

回答

1

也许我是误解,但这是非常基本的。再次,基础是最重要的一点。

data begin; 
    input A B C; 
    cards; 
    1 2 0.2 
    2 7 0.3 
    3 10 0.7 
    ; 
run; 

data wanted; 
    set begin; 
    AC=A*C; 
    BC=B*C; 
run; 
0
/* Here is an easy example.*/ 
/*Your first data set*/ 
data fisrt; 
input A B C; 
datalines; 
1 2 0.2 
2 7 0.3 
3 10 0.7 
; 
run; 

/*The data you want to get*/ 

data product; 
set first; 
AC=A*C; 
BC=B*C; 
run; 
0

既然你只是寻找更新的和b的值试试这个:

data product; 
set first; 
A=A*C; 
B=B*C; 
run; 

或者,你可以尝试:

proc sql noprint; 
    create table product as 
    select a*c as a,b*c as b,c from first;quit; 

,然后比较运行次,看看哪一个跑得更快

相关问题