/*EXCEL FILE*/ /*IN EXCEL WE CAN'T DO THE IMPORT USING PROGRAMMING APPROACH*/ /*PROC STEP BLOCK*/ PROC IMPORT DATAFILE = 'C:\Documents and Settings\Administrator\Desktop\ SIMPLE.XLS' OUT =GNANI.EXCEL DBMS =EXCEL REPLACE ; RUN ; /*IF THE DATA SECOND SHEET IN EXCEL FILE */ PROC IMPORT DATAFILE = 'C:\Documents and Settings\Administrator\Desktop\ EXCEL.XLS' OUT =GNANI.SIMPLE DBMS =EXCEL; SHEET= 'SHEET2' ; GETNAMES=YES; RUN ; /*IF THE DATA IN MIDDLE OF THE SHEET*/ PROC IMPORT DATAFILE = 'C:\Documents and Settings\Administrator\Desktop\ RANGE.XLS' OUT =GNANI.RANGE1 DBMS =EXCEL; RANGE= 'SHEET1$F17:H18' ; GETNAMES=NO; RUN ; OPTIONS LS= 154 PS= 200 ; /*WORD DOCUMENT*/ FILENAME SIMPLE DDE 'WINWORD|"C:\Documents and Settings\Administrator\Desktop\ SIMPLE.DOC"!JAYALALITHA' ; DATA NG; INFILE SIMPLE FIRSTOBS = 2 ; INPUT ID NAME $ AGE ; RUN ; PROC PRINT ; RUN ; /* TO EXPORT USING NULL VARIABLE*/ /*EXPORTING*/
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
/*EXCEL FILE*//*IN EXCEL WE CAN'T DO THE IMPORT USING PROGRAMMINGAPPROACH*/ /*PROC STEP BLOCK*/
PROC IMPORT DATAFILE='C:\Documents and Settings\Administrator\Desktop\SIMPLE.XLS' OUT=GNANI.EXCEL
DBMS=EXCEL REPLACE;
RUN;
/*IF THE DATA SECOND SHEET IN EXCEL FILE */
PROC IMPORT DATAFILE='C:\Documents and Settings\Administrator\Desktop\EXCEL.XLS' OUT=GNANI.SIMPLE
DBMS=EXCEL; SHEET='SHEET2'; GETNAMES=YES;
RUN;
/*IF THE DATA IN MIDDLE OF THE SHEET*/
PROC IMPORT DATAFILE='C:\Documents and Settings\Administrator\Desktop\RANGE.XLS' OUT=GNANI.RANGE1
DBMS=EXCEL; RANGE='SHEET1$F17:H18'; GETNAMES=NO;
RUN;
OPTIONS LS=154 PS=200;
/*WORD DOCUMENT*/
FILENAME SIMPLE DDE 'WINWORD|"C:\Documents and Settings\Administrator\Desktop\SIMPLE.DOC"!JAYALALITHA';DATA NG;INFILE SIMPLE FIRSTOBS=2;INPUT ID NAME $ AGE ;RUN;PROC PRINT;RUN;
/* TO EXPORT USING NULL VARIABLE*/ /*EXPORTING*/
DATA _NULL_;FILE 'C:\ASH.TXT';PUT @25 'THIS IS SIMPLE DATA';PUT @10 'ID' @20 'NAME' @40 'AGE';RUN;DATA _NULL_;SET NG;FILE 'C:\ASH.TXT' MOD;PUT @10 ID @20 NAME @40 AGE;
RUN; /*TO EXPORT USING PROC BLOCK*/ /*TEXT DOCUMENT*/
DBMS=EXCEL;RUN;/*TO REPORT COMPANIES INFO WHO HAS BEEN ESTABLISHED IN BANG AND INVEST>30000000 AND YEAR 1997*/PROC SQL;SELECT * FROM SASHELP.PROFITWHERE AREA='BAN' AND INVEST>300000 AND YEAR='1997';QUIT;/*USED OR OPERATOR*/PROC SQL;SELECT * FROM SASHELP.PROFITWHERE AREA EQ 'BAN' OR INVEST GT 300000 OR YEAR EQ '1997';QUIT;/*USED BETWEEN OPERATOR**/PROC SQL;SELECT * FROM SASHELP.PROFITWHERE INVEST BETWEEN 30000000 AND 40000000;QUIT;/*IN OPERATOR*/PROC SQL;SELECT * FROM SASHELP.PROFITWHERE COMPANY IN('ACENTURE','TCS');QUIT;/*NOTE:ALL OPERATOR CAN USED IN PROC SQL PROCEDURE.*//*ORDER BY CLAUSE*(BEDEFAULT ASCENDING)*/PROC SQL;SELECT * FROM SASHELP.PROFIT ORDER BY COMPANY;QUIT;/*TO ORDER DESCENDING ORDER*/PROC SQL;SELECT * FROM SASHELP.PROFIT ORDER BY COMPANY DESC;QUIT;/*SORTING BASED ON THE POSITION AND TO STORE NEW TABLE*/PROC SQL;CREATE TABLE NEW_TABLE ASSELECT * FROM SASHELP.PROFIT ORDER BY COMPANY;QUIT;/*GROUP BY COMPANY*/PROC SQL;CREATE TABLE NEW_GROUP AS
SELECT * FROM SASHELP.PROFIT GROUP BY COMPANY;QUIT;/*HAVING CLAUSE*/PROC SQL;CREATE TABLE NEW_GROUP1 ASSELECT * FROM SASHELP.PROFIT GROUP BY COMPANY HAVING INVEST>40000000;QUIT;/*TO USE MULTIPLE CLAUSES IN ONE SELECT STATEMENT*/quit;PROC SQL;CREATE TABLE MULT_CLA ASSELECT * FROM SASHELP.PROFIT WHERE YEAR IN('1996') AND COMPANY EQ 'ACENTURE' ORDER BY AREA;QUIT;/*AGGREGATE FUNCTION*//* TO REPORT TOTAL NO OF PATIENS HAD TAKEN TRT IN DIFFERENT CINTERS*//* EG FOR COLUMN WISE*/proc sql;select sum(age) as total_sum from sashelp.class;quit;/*FOR ROW WISE*/proc sql;select *,sum(age,height) as total_sum from sashelp.class;quit;/*TO REPORT MAX NO OF PATIENTS HAD TAKEN TRT IN DIFFERENT TRTMTS IN CENTER*//*FOR COLUMN WISE*/proc sql;select *,max(age) as total_sum from sashelp.class;quit;/*FOR ROW WISE*/proc sql;select *,max(age,weight) as total_sum from sashelp.class;quit;/*TO REPORT MIN NO*//*FOR COLUMN WISE*/proc sql;select *,min(age) as total_sum from sashelp.class;quit;/*FOR ROW WISE*/proc sql;select *,min(age,WEIGHT) as total_sum from sashelp.class;quit;/*STD(STANDARD DEVIATION)*/proc sql;select *,STD(age) as total_sum from sashelp.class;quit;proc sql;select *,STD(HEIGHT) as total_sum from sashelp.class;quit;proc sql;select *,STD(WEIGHT) as total_sum from sashelp.class;quit;
proc sql;select *,STD(age,HEIGHT) as total_sum from sashelp.class;quit;proc sql;select *,STD(WEIGHT,HEIGHT) as total_sum from sashelp.class;quit;proc sql;select *,STDERR(AGE) as total_sum from sashelp.class;quit;proc sql;select *,STDERR(AGE,HEIGHT) as total_sum from sashelp.class;quit;proc sql;select *,MEDIAN(AGE) as total_sum from sashelp.class;quit;
proc sql;select *,MEDIAN(AGE,HEIGHT) as total_sum from sashelp.class;quit;
proc sql;select *,MEDIAN(WEIGHT,HEIGHT) as total_sum from sashelp.class;quit;
proc sql;select *,LENGTH(NAME) as total_sum from sashelp.class;quit;proc sql;select *,INDEX(NAME,'a') as total_sum from sashelp.class;quit;/*PASS THROUGH FACILITY*//*CREATE THE TABLE IN OTHER ENVIRONMENT USING SAS ENVIRONMENT*/PROC SQL;CONNECT TO EXCEL(PATH='C:\SALES.XLS');EXECUTE (CREATE TABLE SALES_PROD5 (ID INT, PROD CHAR , LOCATION CHAR, PROFIT CHAR)) BY EXCEL;EXECUTE(INSERT INTO SALES_PROD5 VALUES (1021,'DOMESTIC','INDIA',45000)) BY EXCEL;DISCONNECT FROM EXCEL;QUIT; /*EXCEL FILE*//*CONNECT INTO THE CREATED EXCEL FILE FROM SAS*/PROC SQL;CONNECT TO EXCEL(PATH='C:\GNANI\SALES.XLS');EXECUTE (CREATE TABLE SALES_PROD5 (ID INT, PROD CHAR , LOCATION CHAR, PROFIT CHAR)) BY EXCEL;EXECUTE(INSERT INTO SALES_PROD5 VALUES (1021,'DOMESTIC','INDIA',45000)) BY EXCEL;DISCONNECT FROM EXCEL;QUIT;
/*UPDATE THE DATAVALUE INTO THE EXISTED TABLE USING SAS ENVIRONMENT*/PROC SQL;CONNECT TO EXCEL (PATH='D:\ANNA.XLS');EXECUTE(UPDATE GD_ANNA SET AGE=AGE+1 ) BY EXCEL;DISCONNECT FROM EXCEL;QUIT;PROC SQL;CONNECT TO EXCEL(PATH='C:\MAA.XLS');EXECUTE(UPDATE EMP_TABLE SET AGE=AGE+2 WHERE NAME='JEEVAN')BY EXCEL;DISCONNECT FROM EXCEL;QUIT;PROC SQL;CONNECT TO EXCEL(PATH='C:\MAA.XLS');EXECUTE(UPDATE EMP_TABLE SET AGE=AGE+3 WHERE NAME IN ('KIRAN','JEGEN')BY EXCEL;DISCONNECT FROM EXCEL;QUIT;/*IMPORTING THE DATA AND STORING INTO NEW TALE*/PROC SQL;CONNECT TO EXCEL (PATH='C:\MAA.XLS');CREATE TABLE NEW_EMP ASSELECT * FROM CONNECTION TO EXCEL(SELECT * FROM EMP_TABLE);SELECT * FROM NEW_EMP;QUIT;/*TO INSERT FOR EXISTED TABLE */PROC SQL;CONNECT TO EXCEL(PATH='C:\MAA.XLS');EXECUTE(INSERT INTO EMP_TABLE VALUES(214,'A',40)) BY EXCEL;DISCONNECT FROM EXCEL;QUIT;/*ANALYSIS*/ /*BASE SAS PROCEDURE*/ /*FORMAT PROCEDURE*//*EG FOR CREATE USERDEFINED FORMAT FOR CONVERTING TO CHAR*/PROC FORMAT;VALUE GEN 1='MALE' 2='FEMALE'
3='OTHERS' ;
RUN;/*TO APPLY THE USERDEFINED FORMAT TO THE GENDER VARIABLES*/DATA SAMPLE;INPUT EID ENAME $ GENDER;FORMAT GENDER GEN.;DATALINES;111 A 1 222 B 2333 C 1444 D 2555 E 3666 F 2777 G 1888 H 1;
PROC PRINT;RUN;/*TO CREATE USERDEFINED INFORMAT FOR CONVERTING NUMERIC TO NUMERIC*/PROC FORMAT;INVALUE GEO 1=5234 2=4789
3=3984 ;
RUN;DATA SAMPLE;INPUT EID ENAME $ GENDER;INFORMAT GENDER GEO.;DATALINES;111 A 1 222 B 2333 C 1444 D 2555 E 3666 F 2777 G 1888 H 1;PROC PRINT;RUN;/*TO CONVERT CHARACTER TO CHARACTER TO DEFINE THE USERDEFINED INFORMAT*/PROC FORMAT;INVALUE $ ENM 'A'='JOHN' 'B'='KIRAN'
'C'='RAM' 'D'='UMA' 'E'='GIRI' ;
RUN;DATA STDT;INPUT EID ENAME : $ ENM. GENDER;DATALINES;111 A 1 222 B 2333 C 1444 D 2555 E 3666 F 2777 G 1888 H 1;PROC PRINT;RUN;/*FOR EXTERNAL FILE PURPOSE TO APPLY THE INFORMAT AND FORMAT USING FUNCTIONS*/PROC FORMAT;VALUE GED 1='MALE' 2='FEMALE'
;VALUE $ CR 'W'='WHITE' 'B'='BLACK';
RUN;DATA NW3;SET CLIN;FORMAT COLOR CR. GENDER GED.;RUN;PROC PRINT;RUN;/*FOR EXTERNAL FILE PURPOSE TO APPLY THE INFORMAT AND FORMAT USING FUNCTIONS*/PROC FORMAT;VALUE GED 1='MALE' 2='FEMALE'
;VALUE $ CR 'W'='WHITE' 'B'='BLACK';RUN;DATA NW4;SET CLIN;GEND=PUT(GENDER,GED.);COL=PUT(COLOR,CR.);RUN;PROC PRINT;RUN; /*TO CONVERTS THE ANY VARIABLE DATA VALUE INTO CHARACTER VARIABLE OR NUMERIC VARIANLE*/DATA CL3(DROP=GENDER);SET CLIN(RENAME=(GENDER=GENDER3));IF GENDER3=1 THEN GENDER='MALE';IF GENDER3=2 THEN GENDER='FEMALE';RUN;PROC PRINT;RUN;/*EG FOR INPUT FUNCTION*/PROC FORMAT LIBRARY=SASUSER;INVALUE $ RC 'A'=1 'B'=2
'C'=3 ;
RUN;OPTIONS FMTSEARCH=(SASUSER);DATA STDT;INPUT SID SNAME $ GRD $ TEST1 TEST2;GRD=INPUT(GRD,$GD.);DATALINES;111 A a 36 67 222 B b 45 56333 C c 43 45232 D d 45 56;PROC PRINT;RUN;/*EG FOR INPUT FUNCTION*/PROC FORMAT;INVALUE $ RC 'AS'=1 'AF'=2
'OT'=3
;RUN;DATA PAT;SET CLIN;NEW_RACE=INPUT(RACE,$RC.);RUN;PROC PRINT;RUN;/*BOTH FUNCTION ARE USED IN FORMAT PROCEDURE*/PROC FORMAT;VALUE GEO 1=MALE 2=FEMALE
;INVALUE CO 'W'=1 'B'=2
;RUN;DATA P;SET PATI;GEND=PUT(GENDER,GEO.);COLO=INPUT(COLOR,CO.);RUN;PROC PRINT;RUN; /*PICTURE STATEMENT*/ /*EG FOR SYNTAX*/PROC FORMAT;PICTURE RES LOW-35='FAIL' 35-60='SECOND'
60-70='THIRD' 70-HIGH='DIST' ;
RUN;DATA STDT;INPUT SRN SNAME $ AGE MARK;FORMAT MARK RES.;DATALINES;222 A 23 67 432 B 35 78746 C 23 90743 D 21 20 472 E 19 45;PROC PRINT;RUN;PROC FORMAT;VALUE PA 120-<80='NORMAL' 90-<70='LOW'
342 VIRU 90 GH235 KIRU 70 APPOLO374 NAREN 140 GH;PROC PRINT;RUN;/*PRINTTO PROCEDURE*//*EG FOR SENDING THE LOG WINDOW FOR CLIENT DESIRED LOCATION*/PROC PRINT DATA=CLA;RUN;PROC PRINTTO FILE='C:\MAA.TXT';RUN;PROC PRINT DATA=CLA;RUN;PROC PRINTTO FILE='C:\MA.XLS';RUN;DATA EMP;INPUT EID $ ENAME $ SALARY COMPANY $;DATALINES;WI234 MENAKA 40000 WIPROSY344 LAVANYA 35000 SYNTEL;PROC PRINT DATA=EMP;RUN;PROC PRINTTO LOG='C:\LAT.XLS';RUN;/*WE ARE EXPORTING IN THE FORM OF RTF (RICH TEXT FORMAT*/DATA DAT1;SET SASHELP.CLASS;RUN;PROC PRINT;RUN;PROC PRINTTO FILE='C:\GNANI.RTF';RUN;PROC PRINTTO LOG='C:\GNAN.RTF';RUN;/*PDF(PORTABLE DOCUMENT FORMAT*/PROC PRINTTO FILE='C:\VIJAY.PDF';RUN;PROC PRITTO LOG='C:\VIJA.PDF';RUN;/*HTML (HYPERTEXT MARKUP LANGUAGE)*/PROC PRINTTO FILE='C:\LAK';RUN;PROC PRINTTO LOG='C:\LAK';RUN; /*SAS-ANALYSIS*/
DATA STUD_PERF;INPUT SRN $ GENDER $ PHY CHEM MATHS LOCATION $ INST $ NOS;DATALINES;001 M 66 55 18 HYD A 67003 F 45 68 87 CHEN B 78005 F 56 87 40 BAN A 56
004 M 90 50 40 CUL A 76009 F 76 78 56 HYD B 87007 M 67 40 57 CHEN C 56006 F 48 29 57 BAN A 65002 M 65 34 90 CHEN C 65 569 F 87 57 47 BAN A 54758 M 67 56 45 CHEN B 67547 F 67 58 98 BAN C 87649 F 78 38 58 CHEN B 54587 M 78 45 57 BAN B 56533 F 78 56 45 HYD C 55785 M 45 89 67 CUL B 35875 F 34 32 30 HYD B 56587 M 45 49 70 CHEN B 44578 F 67 45 89 BAN C 67;RUN;PROC PRINT;RUN;
/*BY DEFAULT REPORT USING MEANS STATEMENT*/
PROC MEANS DATA=STUD_PERF;RUN;
/*TO REPORT ONE NUMERIC VAR ANALYSIS WITH CLASSIFICATION VAR*/
PROC MEANS DATA=STUD_PERF;VAR MATHS;CLASS GENDER;RUN;OPTIONS LS=120;/*TO REPORT TWO OR MORE VARIBLE ANALYSIS WITHCLASS VAR*/
PROC MEANS DATA=STUD_PERF;VAR MATHS PHY CHEM;CLASS GENDER;RUN;
/*MULTIPLE CLASS VAR WITH MULTIPLE NUMERIC VAR*/
PROC MEANS DATA=STUD_PERF;VAR MATHS PHY CHEM;CLASS GENDER INST;RUN;
/*TO APPLY THE MEANS STATEMENT OPTIONS*/
PROC MEANS DATA=STUD_PERF RANGE N CV SKEWNESS;RUN;
/*TO APPLY STMTS AND OPTIONS IN BOTH INONE PROGRAM*/
PROC MEANS DATA=STUD_PERF MEAN MIN MAX RANGE N CV SKEWNESS;VAR PHY;CLASS LOCATION;RUN;OPTIONS LS=150;/*TO REPORT THE STATISTICAL MEASUREMENTSBASED ON THE CLASSIFICATION*//*TO GENERATE THE SEPARATE ANALYSIS BASED ONTHE CONDITION*/
PROC SORT DATA=STUD_PERF;BY GENDER;RUN;PROC MEANS DATA=STUD_PERF STDDEV RANGE SKEWNESS KURTOSIS Q1 Q3 P10 P50;VAR PHY CHEM MATHS;CLASS GENDER;BY GENDER;RUN;
/*TO GENERATE THE REPORT BASED ON THE CONDITIONAND SEPARATED ANALYSIS*/
PROC SORT DATA=STUD_PERF;BY GENDER;RUN;PROC MEANS DATA=STUD_PER ;VAR PHY CHEM MATHS;CLASS GENDER;BY GENDER;WHERE PHY GE 60;RUN;
/*TO SAVE THE OUTPUT IN ONE DATASET*/
PROC MEANS DATA=STUD_PERF;OUTPUT OUT=STAT_MEASURE;RUN;
/*TO GENERATE STAT MESUREMENTS IN ONLY DATASETNOT IN OUTPUT*/
PROC MEANS DATA=STUD_PERF NOPRINT;OUTPUT OUT=STAT_MEASURE1;RUN;
/*TO GENERATE STAT MEASUREMENTS IN ONLY DATASET NOT IN OUTPUT*/
PROC MEANS DATA=STUD_PERF;OUTPUT OUT=STATS_MEASURE3 MEAN=MIN_PER
RANGE=RANGE_PER P10=PERC_PER;
RUN;
/*TO INCREASE THE ANALYSIS TYPES IN DATASET THEN WE APPLY VAR AND CLASS STMT IN PROC MEANS PROCEDURE*/
PROC MEANS DATA=STUD_PERF NOPRINT;VAR PHY CHEM MATHS;CLASS GENDER;OUTPUT OUT=STATS_MEA5 MEAN=MEAN_PER
RANGE=RANGE_PER P10=PERC_PER;
RUN;
/*TO INCREASE THE ANALYSIS TYPES IN DATASET THEN WE APPLY VAR AND CLASS STMT IN PROC MEANS PROCEDURE*/
PROC MEANS DATA=SASHELP.PROFIT;OUTPUT OUT=STAT_PROFIT;RUN;
/*TO GENERATE STAT MESUREMENTS IN ONLY DATASETNOT IN OUTPUT*/
PROC MEANS DATA=SASHELP.PROFIT NOPRINT;OUTPUT OUT=STAT_PROFIT1;RUN;
/*TO GENERATE STAT MEASUREMENTS IN ONLY DATASET NOT IN OUTPUT*/
PROC MEANS DATA=SASHELP.PROFIT ;OUTPUT OUT=STATS_PROFIT2 MEAN=MEAN_PRO
RANGE=RANGE_PRO P10=PERC_PRO;
RUN;
/*TO INCREASE THE ANALYSIS TYPES IN DATASET THEN WE APPLY VAR AND CLASS STMT IN PROC MEANS PROCEDURE*/
PROC MEANS DATA=SASHELP.PROFIT NOPRINT;VAR INVEST ACT_PROFIT EST_PROFIT;CLASS AREA;OUTPUT OUT=STATS_PR5 MEAN=MEAN_PR
RANGE=RANGE_PR P10=PERC_PR;
RUN;
/*TO INCREASE THE ANALYSIS TYPES IN DATASET THEN WE APPLY VAR AND CLASS STMT IN PROC MEANS PROCEDURE*/
PROC MEANS DATA=SASHELP.PROFIT NOPRINT;VAR INVEST ACT_PROFIT;CLASS COMPANY AREA;OUTPUT OUT=STATS_PR7 MIN=MIN_PR
MAX=MAX_PR MEAN=MEAN_PR;
RUN; /*NWAY OPTION*/
PROC MEANS DATA=SASHELP.PROFIT PRINT NWAY;VAR INVEST ACT_PROFIT;CLASS COMPANY AREA;OUTPUT OUT=STATS_PR8 MIN=MIN_PR
MAX=MAX_PR MEAN=MEAN_PR;
RUN;
/*FREQUENCY PROCEDURE*/
DATA SAMPLE;INPUT RESULT $ @@;DATALINES;Y Y Y N N Y N Y N Y N N YY N N Y N Y N N Y Y N Y NN Y N N Y N Y N N Y N Y N YN Y N Y Y N Y N N Y Y Y N Y N;PROC FREQ DATA=SAMPLE;RUN;
/*TO REPORT THE ONE VARIABLE ANALYSIS WITH FREQ PROCEDURE*/
PROC FREQ DATA=STUD_PER;TABLES PHY;RUN;
/*TO REPORT THE CHARACTOR VARIABLE ANALYSIS WITH FREQ PROCEDURE*/
PROC FREQ DATA=STUD_PERF;TABLES GENDER;RUN;
/*ANALYSIS OF TWO NUM AND MORE CHAR VARUSING TWO TABLE STMT PROC FREQ PROCEDURE*/
/*TO GENERATE TJE CHI-SQUARE STAT FOR RECQUIRED VARIBLEIN FREQ PROCEDURE*/ PROC FREQ DATA=STUD_PERF;TABLES PHY/CHISQ;RUN;
/*WEIGHT STMT IN FREQUENCY PROCEDURE*/
PROC FREQ DATA=STUD_PERF;TABLES SRN PHY;WEIGHT PHY;RUN; /*WE HAVE TO TAKE ONE DATASET FROM OUR LIBRARY*//*TO REPORT THE ONE VARIABLE ANALYSIS WITH FREQ PROCEDURE*/
PROC FREQ DATA=SASHELP.PROFIT;TABLES INVEST;RUN;
/*TO REPORT THE CHARACTOR VARIABLE ANALYSIS WITH FREQ PROCEDURE*/
PROC FREQ DATA=SASHELP.PROFIT;TABLES AREA;RUN;
/*ANALYSIS OF TWO NUM AND MORE CHAR VARUSING TWO TABLE STMT PROC FREQ PROCEDURE*/
PROC FREQ DATA=SASHELP.PROFIT;TABLES ACT_PROFIT EST_PROFIT;TABLES AREA COMPANY;RUN;
/*ALL WILLBE IN TABLE STATEMENT*/
PROC FREQ DATA=SASHELP.PROFIT;TABLES ACT_PROFIT EST_PROFIT AREA COMPANY;RUN;
/*TO SAVE THE FREQ OUTPUT IN ONE DATASET*/
PROC FREQ DATA=SASHELP.PROFIT;TABLES ACT_PROFIT EST_PROFIT AREA COMPANY/OUT=COM;RUN;
/*TO DO THE CROSS TABULATION ANALYSIS WITH SEPARATEDGROUPS*/PROC SORT DATA=SASHELP.PROFIT;BY COMPANY;RUN;PROC FREQ DATA=SASHELP.PROFIT;TABLES AREA*COMPANY;BY COMPANY;RUN;
/*CROSS TABULATION ANALYSIS WITH MULTIPLEVARIABLES*/
/*TO GENERATE THE DESCRIPTIVE STAT IN TABULAR FORMAT FORREQ VAR*/
PROC TABULATE DATA=STUD_PERF OUT=NEW_DESC;VAR NOS;TABLE NOS*(SUM MEAN MEDIAN NMISS N STDDEV);RUN;
/*TO GENERATE DESCRIPTIVE STAT WITH CLASSIFICATIONVAR FOR SUMMARY DATA*/
PROC TABULATE DATA=STUD_PERF OUT=NEW_DESC1;VAR NOS;CLASS GENDER;TABLE GENDER,NOS*(SUM MEAN MEDIAN NMISS N STDDEV);RUN;
/*KEYLABEL*/PROC TABULATE DATA=STUD_PERF;VAR NOS;CLASS LOCATION;TABLE(NOS,ALL),LOCATION;KEYLABEL ALL='TOTAL';RUN; /*WE HAVE TO TAKE FROM OUR LIB*//*TO REPORT THE TOTAL NO OF STUDENTS IN VARIOUSINSTS FROM THE ABOVE TABLE*/PROC TABULATE DATA=SASHELP.DATA_MIN;VAR QTY;TABLE QTY;RUN;
DATA CORRP;INPUT EXPS SALES LOCATION $ @@ ;DATALINES;4 10 CHEN 6 12 HYD 46 58 CHEN 35 45 BAN 86 98 BAN 64 78 CUL 64 70 DEL;PROC CORR DATA=CORRP OUTP=P_DS OUTS=S_DS OUTK=K_DS;VAR EXPS SALES;RUN;
/*TO GENERATE THE CORRELATION MEASURES FOR SEPARATE BY GROUPS*/PROC SORT DATA=CORRP;BY LOCATION;RUN;PROC CORR DATA=CORRP OUTP=P_DS;VAR EXPS SALES;BY LOCATION;RUN;
/*WITH VAR STMT*/PROC UNIVARIATE DATA=CORRP;VAR EXPS SALES;CLASS LOCATION;RUN; /*TO GENERATE THE HISTOGRAM USING UNIVARIATEPROCEDURE*/PROC UNIVARIATE DATA=CORRP;HISTOGRAM;RUN; /*BY STMT USED IN UNIVARIATE PROCEDURE*/
/*FOR TABULATE PROCEDURE*/ODS LISTING CLOSE;ODS PDF FILE='D:\LIST_TAB.PDF';PROC TABULATE DATA=SASHELP.PROFIT;CLASS AREA COMPANY;TABLE AREA,COMPANY/BOX='REP BETWEEN COMP AND LOC';RUN;ODS PDF CLOSE;ODS LISTING;
/*REPORT PROCEDURE*/
ODS LISTING CLOSE;ODS HTML FILE='D:\LIST_REP.HTML';PROC REPORT DATA=STUD_PERF NOWD HEADSKIP HEADLINE;COLUMNS SRN GENDER INST PHY CHEM TOTAL STATUS;DEFINE GENDER/GROUP;DEFINE TOTAL/COMPUTED;DEFINE STATUS/COMPUTED;BREAK AFTER GENDER/OL UL SUMMARIZE;COMPUTE AFTER GENDER;GENDER='TOTAL';ENDCOMP;RBREAK AFTER/DOL DUL SUMMARIZE;COMPUTE AFTER;GENDER='GTOTAL';ENDCOMP;COMPUTE TOTAL;TOTAL=_C4_+_C5_;ENDCOMP;COMPUTE STATUS/CHAR;IF _C4_ GT _C5_ THEN STATUS='GOOD';ELSE STATUS='AVERAGE';ENDCOMP;RUN;ODS HTML CLOSE;ODS LISTING;