使用 SQL 提取数据,分析并写回 SQL table
Extract data using SQL, analyse and write back to SQL table
我是 SAS Base 的新手,我正在努力创建一个简单的程序,从我的数据库中的 table 中提取数据,例如运行PROC MEANS,并将数据写回 table.
我知道如何使用 PROC SQL(读取和更新 tables)和 PROC MEANS,但我不知道如何组合这些步骤。
PROC SQL;
SELECT make,model,type,invoice,horsepower
FROM
SASHELP.CARS
;
QUIT;
PROC Means;
RUN;
我想要完成的是在数据集中创建一个附加列,例如马力的平均值。最后我想将该计算列写入数据库中的 table。
编辑
我要找的是这个:
PROC SQL;
create table want as
select make,model,type,invoice,horsepower
, mean(horsepower) as mean_horsepower
from sashelp.cars
;
QUIT;
PROC MEANS DATA=want;
RUN;
SAS 使用 SQL 可以很容易地做到这一点,因为它会自动将汇总统计重新合并回详细记录。
create table want as
select make,model,type,invoice,horsepower
, mean(horsepower) as mean_horsepower
from sashelp.cars
;
或者使用普通的 SAS 代码。
proc means data=sashelp.cars nway noprint ;
var horsepower ;
output out=mean_horsepower mean=mean_horsepower ;
run;
data want ;
set sashelp.cars ;
if _n_=1 then set mean_horsepower (keep=mean_horsepower);
run;
我是 SAS Base 的新手,我正在努力创建一个简单的程序,从我的数据库中的 table 中提取数据,例如运行PROC MEANS,并将数据写回 table.
我知道如何使用 PROC SQL(读取和更新 tables)和 PROC MEANS,但我不知道如何组合这些步骤。
PROC SQL;
SELECT make,model,type,invoice,horsepower
FROM
SASHELP.CARS
;
QUIT;
PROC Means;
RUN;
我想要完成的是在数据集中创建一个附加列,例如马力的平均值。最后我想将该计算列写入数据库中的 table。
编辑 我要找的是这个:
PROC SQL;
create table want as
select make,model,type,invoice,horsepower
, mean(horsepower) as mean_horsepower
from sashelp.cars
;
QUIT;
PROC MEANS DATA=want;
RUN;
SAS 使用 SQL 可以很容易地做到这一点,因为它会自动将汇总统计重新合并回详细记录。
create table want as
select make,model,type,invoice,horsepower
, mean(horsepower) as mean_horsepower
from sashelp.cars
;
或者使用普通的 SAS 代码。
proc means data=sashelp.cars nway noprint ;
var horsepower ;
output out=mean_horsepower mean=mean_horsepower ;
run;
data want ;
set sashelp.cars ;
if _n_=1 then set mean_horsepower (keep=mean_horsepower);
run;