SAS代码汇总(1)基础操作

逻辑库

libname语句——逻辑库

libname <name> '<path>';

多个位置

libname <name> ('<path>' '<path>');

路径

固定路径,方便重复调用

filename <myfile> 'path';

用法

filename myfile 'C:\SataSoftData\';
data bank;
	infile myfile(bank1.txt);
	input ...;
run;

排序

sort过程——排序

proc sort data=dataname out=asd;
    where family='asd';
    by var1 descending var2;
run;

输出数据

print过程——数据集数据部分

proc print data=<dataname> label noobs ;显示标签,不显示观测序号
	title 'title';
	footnote 'footnote';注意这是全局设置
	by var1;必须先sort过程之后再使用by语句
	sum var2;对变量进行求和
	id var1;用var1替代obs,当作第一列
	var var1 var2 var3;
	where var1=3;条件筛选
	format var1 date9.;
run;

输出内容

contents过程——数据集描述部分

proc contents data=<dataname>;
run;

创建数据集

data步——手动输入

data <libname>.<dataname>;
    infile cards;(可省略)
    input var1 var2$;
    informat var1 format1;
    label var1='label1' var2='label2';
    datalines;
    dasta asdd
    asdad sada
    ;
run;

data步——文件读入

  • dlm='09’x 制表符
data <dataname>;
    infile 'path' <选项>  dlm=','  dsd  firstobs=1  obs=10  pad(行尾补充空格);
    length var1 n;(length必须放在input之前)
    input var1 var2;
    format var1 format1;
run;

输入模式:按列输入,格式化输入,列举输入,混合输入

修饰符

三个修饰符

  • 冒号:跳过分隔符开始读直到遇到分隔符,或者达到格式中的长度或者数据行结束
  • 与号&允许数据值中字符之间包含一个空格,直到遇到两个空格或者数据长度到达或者输入行结束
  • 非号~保持数据中的单引号、双引号

行保持符号@@

标题脚注

title语句——标题

title 'title';
titlen 'titlen';第n级标题
title;取消标题
titlen;取消第n级其以上的标题

footnote语句——脚注

footnote 'footnote';
footnoten 'footnoten';第n级脚注
footnote;取消脚注
footnoten;取消第n级其以上的脚注

文件导入导出

import过程

proc import out=temp;
	datafile='path'  这里不可以用filename
	dbms = xls replace    dbms数据源类型——xls,xlsx,excel,access,csv;replace覆盖写
	range='Sheetname$A1:E5'   数据范围
	getnames=YES;是否读取第一行作为列名
	注意上面都是选项,分号得注意
run;

export过程

proc export;
	data=数据集
	outfile='path'
	dbms=<database_management_system>;注意分号
	delimiter = ',';分隔符
	putnames=NO;是否将变量名作为第一行,默认为yes
run;

自定义格式

format过程——自定义格式

proc format;
	value var1 1='male'
			   2='fmale';
	value var2 ...;
run;

频次统计

freq过程——制表,列联表contingency table

proc freq data=dataname;
	tables var1*(var2-4);
	var5;
	var6--var7;
	tables (var8-9)*(var10-11)/nocol norow nopercent out=data nocum nofreq ;
run;
  • 5
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值