zoukankan      html  css  js  c++  java
  • SAS--proc print data=

     

    libname clinic 'D:SAS'; 
    data clinic.admitfee;
      set sasueser.admit;
    run;

    proc sort data
    =clinic.admitfee out=admit; /*proc 排序 排谁 输出到哪lib.name*/ by age; run;
    proc print data
    =admit label; /*打印 打谁 label?*/ var age height weight fee; /*变量 1 2 3 4 */ label fee='admission fee'; /* 更换变量名*/ run;
    proc print data
    =admit noobs; /*no obs 取消显示observations*/ var age height; where age>30; /*where 给变量指定一个条件*/ run; /*character必须要加引号,区分大小写*/
    proc print data=admit; id id; /*id 用后面的变量(可以不是一个)取代obs*/ run; /*当id后面的变量 和 var 后面的重复,那么这个变量会出现2次*/
    ? data work.admit2; *创建数据集名称,位置;      set sasuser.All; *引用该数据集;     run;
    ods listing; proc print data
    =work.admit2; where location contains 'all'; *变量location中contains all 子字符串的观察单位; run;
    *contains 可以用 ? 代替; proc print data=admit; where age>30 and age<50; *逻辑关系 AND or & , OR or |; run;
    proc print data
    =admit; where age<30 or( age>50 and sex='M'); *逻辑关系 AND or & , OR or |; run;
    PROC PRINT DATA
    =ADMIT; WHERE ACTLEVEL IN ('LOW','MOD'); * in 使得表达简洁; run;
    proc sort data
    =clinic.admit out=wdadmit; by weight age; *根据先weight后age排序,默认升序; run;
    proc print data
    =wdadmit; run;
    proc sort data
    =clinic.admit out=dwdadmit; by descending weight descending age; *降序 run; proc print data=dwdadmit; run;
    proc print data
    =admit; var name age height weight fee; where actlevel='LOW'; sum fee; * 给变量求和,并创建新的一行; run;

    proc sort data=clinic.admit out=admit;
      by actlevel;
    run;
    proc print data=admit;
      sum fee;
    by actlevel; *按照分类变量求和,必须现根据该分类变量排序;
    run;

    proc sort data=clinic.admit out=admit;
    by actlevel; 
    run;


    proc print data=admit;
    sum fee;
    by actlevel; *按照分类变量求和,必须现根据该分类变量排序;
    run;


    proc print data=admit;
    sum fee;
    by actlevel; *使用by 和 id联合使用,自定义layout,考虑id的作用;
    id actlevel;
    run;


    proc print data=admit;
    sum fee;
    by actlevel; 
    id actlevel;
    pageby actlevel; *pageby后面的变量,必须在by中被指定;
    run;
    proc print data=admit double; *两倍行距;
    sum fee;
    run;


    title1 'Heart Rates for Patients with'; *数字可以说是1-10;
    title11 'Increased Stress Tolerance Levels';
    proc print data=admit;
    run;


    footnote1 'Data from Treadmill Tests';
    footnote3 '1st Quarter Admissions';
    proc print data=admit;
    run;


    title; *取消title和footnote;
    footnote; *默认的title是SAS程序;
    proc print data=admit;
    run;


    proc print data=admit label ; *临时的给变量名加label;
    label fee='total fee'; * 'total fee'n ='fee' 有空格的情况;
    run;
    proc print data=admit label;
    label fee='total fee' sex='gender'; 
    run;  

    proc print data=clinic.admit;
    var actlevel fee;
    where actlevel='HIGH';
    format fee dollar4.; *format 临时的改变数据的显示格式;
    run;
    proc print data=clinic.admit;
    var actlevel fee;
    where actlevel='HIGH';
    format fee 5.2;
    run;

     永久的修改这些变量

    data clinic.admit;
    set sasuser.admit;
    label fee='tatal fee';
    run;


    proc print dara=clinic.admit label;  *!!!print 时仍需要label;
    run;

    proc print data=admit split='*';
    label fee='f*e*e';                *将变量名按照特殊的格式分开;
    run;

    label double oobs 需要在print里

    proc sort  out

    by

    Valar morghulis
  • 相关阅读:
    java.lang.NoSuchMethodError:antlr.collections.AST.getLine() I
    T7 java Web day01 标签HTML
    T6 s1 day19
    T5 s5 Day18
    T5 s4 Day 17
    T5 s3 day16
    T5 s2 Day 15
    T5 s1 day14
    T4 S03 day 12
    T4 S01 day1
  • 原文地址:https://www.cnblogs.com/super-yb/p/11609357.html
Copyright © 2011-2022 走看看