SAS

OLE对象的类没有在注册数据库中注册

64位系统:

  1. 保证系统时间正确,处于当时的北京时间。
    2.在C:\windows\SysWOW64\文件夹搜索mscomctl.ocx,不存在就下载一个,然后放到C:\windows\SysWOW64\。
    3.在C:\windows\搜索cmd.exe,右键以管理员身份打开cmd.exe。
  2. 输入一下命令:regsvr32.exe C:\windows\SysWOW64\mscomctl.ocx。显示注册成功信息即可。
  3. 不要关闭上面的cmd窗口,在SAS安装文件夹搜索EditorControl.ocx,不存在就下载一个,然后记录该文件的路径,如:D:\SAS92\SharedFiles\EnhancedEditor\EditorControl.ocx。
  4. 在cmd.exe输入一下命令:regsvr32.exe D:\SAS92\SharedFiles\EnhancedEditor\EditorControl.ocx。显示注册成功信息即可。
  5. 问题已经解决,打开SAS试一下吧。欢迎大家共同讨论!

0 SAS程序

*数据步;
data 数据集名;
input 变量名;
cards;
数据
;
run;

*过程步;
proc 过程名 data=数据集名 [选项】;
过程步语句;                                         /*过程步语句用于辅助SAS的实现,
                                                                VAR 指定需要分析的变量
                                                                WHERE 指定一定的分析条件
                                                                BY 指定变量的分组情况
                                                                MODEL 指定分析的模型
run;

1 .1 数据步

*data step;
input 变量名 [$]  [选项(数据格式)]   [@(默认 一行一个观测)/@@];
infile 文件路径 [选项];
示例
data stud;         /*data work.stud  data abc.stud 此注释任意位置 *xxx;单独一行/
input id$ name$ gender$ age hometown$ ;
cards;
201501001 周国兴 男 19 长沙
201501002 李铭    女  18 广州
;
*proc step;
proc print data=stud;
run;
DATA bands;
INFILE 'd:\data0520\bands.csv' DLM =',' DSD MISSOVER FIRSTOBS = 2;
INPUT BandName :$30. GigDate :MMDDYY10. EightPM NinePM TenPM ElevenPM;
RUN;
PROC print DATA = bands;
TITLE ’Customers at Each Gig’;
RUN;
title ‘成绩统计’;                       /*此程序用于成绩的简单统计*/
data test;                                  /*建立一个临时数据集test*/
input nunmber math chinese english physics chemistry;  /*列出输入的数据名*/
avg = (math+ chinese+english+physics+chemistry)/5;  
cards;          
    101 74  89  86  92  67
    102 81  76  68  84  79
    103 70  98  70  88  76
    ;
run; 
proc print;                             /*打印输入的成绩数据集*/
run; 
proc sort data=test;  by descending  avg;   /*按均值对成绩进行降序排列*/
run; 
proc print;                             /*打印出排序后的成绩*/
run; 

1.2 数据步常用语句

*put;
data;
x=3;
put x;
put x= ;
run;
*length,label;
data test2_15;
length city$ 10;                    /*指定变量长度,默认为8*/
label city='城市' zip='邮政编码'; /*为变量加上标签*/
input city$10  zip;         /*数据输入*/
cards;
Birmingham 35201
Montgomery 36101
Huntsville 35801
Tuscaloosa 35401
Mobile     36601
;
run;


*keep drop;

/*where
where x >100;
where x betwee 100 ad 200;
where x i (10,20,30);
where x>100 &y>100;
*/

2.1 过程步

*output;
proc means data=sashelp.shoes; /*SAS的均值计算过程*/
var Sales;                     /*对变量sales进行均值分析*/
*输出结果数据到数据集resultmean,并指定均值分析的几个统计量的结果名 ;
output out=resultmean n=n_result min=min_result max=max_result mean=mean_result;
run;

*var;
*class;

data test2_22;           /*创建数据集*/
input number grade;
cards;
1001 95
1002 89
1003 75
1004 90
1005 97
;
run;
proc means data=sashelp.class;
class sex;                      /*按照性别分类计算均值*/
var height;
run;

3.1 常用函数
https://wenku.baidu.com/view/41849311cd7931b765ce0508763231126edb77ac.html

你可能感兴趣的:(SAS)