4.CREATING NEW DATASETS

       CREATING NEW DATASETS

1.DATA AND SET METHOD:: ACCESSING THE EXISTING LIB AND DATASET

2.DATA INPUT AND DATALINES/CARDS METHOD:: FOR CREATING THE OWN DATASET

3.DATA INFILE AND INPUT METHOD:: EXTERNAL FILES INTON SAS DATASET


1.DATA AND SET METHOD:: ACCESSING THE EXISTING LIB AND DATASET

DATA RAMU;

  SET SASHELP.CLASS;

RUN;


DATA RAMU01;

SET WORK.RAMU;

RUN;



/*IF YOU ARE USING ONLY DATA STEP::: STORE IN THE WORK LIB*/

/*IF YOU ARE USING DATA STEP AND PROC PRINT STEP:: STORE IN LIBRARY AND GIVE OUTPUT IN OUTPUT WINDOW*/

/*TO CREATE THE OUTPUT OR PRINTING THE ALL OBSERVATIONS  AND VARIABLES FROM THE DATASET*/

/*----USE "PROC PRINT" */

/**/

/*SYNTAX::*/

/**/

/*PROC PRINT DATA=XXXX(LIB).YYYY(DSN);*/

/*RUN;*/


DATA RAMU01;

SET WORK.RAMU;

RUN;

PROC PRINT DATA=WORK.RAMU01;

RUN;

/**/




/*--TO CONTROL THE VARIABLES IN PROC PRINT*/

/*    **USE "VAR(VARIABLE)" STATEMENT */


/*TO SUPRESS/REMOVE THE OBS NUMBER::: USE "NOOBS" OPTION*/


PROC PRINT DATA=WORK.RAMU01 NOOBS;

VAR NAME AGE;

RUN;


PROC PRINT DATA=ADB.ADSL;

VAR SEX AGE RACE;

RUN;


2.DATA INPUT AND DATALINES/CARDS METHOD:: FOR CREATING THE OWN DATASET


/*      ----INPUT:: GIVE "VARIABLE" INFORMATION*/

/*  ----FOR THE CHARACTER VARIABLE::: USE "DOLLAR($)" SYMBOL:: FOR                                      CHARACTER IF THERE IS NO DATA THEN IT SHOW BLANK SPACE( )*/

/* ----FOR THE NUMERICAL VARIABLE:: NO NEED OF DOLLAR($) SIGN::  IF THERE IS                   NO DATA IT SHOWS DOT(.) SYMBOL */

/*   ---- DATALINES/CARDS::: GIVE THE "OBSERVATION" INFORMATION*/


DATA RAMU02;

INPUT ID NAME$ AGE GENDER$ HEIGHT;

DATALINES;

101 RAGHU 24 M 5

102 PADMA 23 F 5

103 VISHWA 24 M 6

104 RAMYA 24 F 5

;

RUN;

PROC PRINT DATA=WORK.RAMU02;

RUN;



/*WHAT IF NOT USING THE DOLLAR SYMBOL FOR THE CHARACTER VARIABLES?????*/


DATA SAS1;

INPUT ID NAME AGE$ GENDER$ HEIGHT;

DATALINES;

101 RAGHU 24 M 5

102 PADMA 23 F 5

103 VISHWA 24 M 6

104 RAMYA 24 F 5

;

RUN;

PROC PRINT DATA=WORK.SAS1;

RUN;



/*IF THE OBSERVATIONS VALUE HAS MORE LENGTH::: USE "LENGTH" STATEMENT*/


DATA SAS2;

LENGTH NAME$ 35;

INPUT NAME$ AGE GENDER$;

CARDS;

PADMAVATHIIDDCR 24 F

RANGARAOBHUPATHIHYDERBAD 23 M

;

RUN;

PROC PRINT;

RUN;



3.DATA INFILE AND INPUT METHOD:: EXTERNAL FILES---DATASET( 4 SCENARIO'S)


1.DEFAULT BLANK/SPACES:: INFILE AND INPUT

2.COMMA/ANY SPECIAL CHARACTERS:::: DLM=','

3.DATA MISSNG IN B/W THE RECORD:::: DSD

4.DATA MISSING IN B/W AND IN LAST RECORD:::: DSD MISSOVER*/


/*----INFILE::: WILL GIVE THE FILE PATH OF THE TEXT FILE*/


/*----INPUT:: GIVE "VARIABLE" INFORMATION*/*/

/* --FOR THE CHARACTER VARIABLE::: USE "DOLLAR($)" SYMBOL:: BLANK SPACE( )*/

/*--FOR THE NUMERICAL VARIABLE:: NO NEED OF DOLLAR($)::     DOT(.) */;


1.BY DEFAULT THE DATA IS SEPARATED WITH "SPACE/BLANK"


DATA RAGHU;

INFILE "C:\Users\sumed\OneDrive\Desktop\SS.txt";

INPUT NAME$ AGE GENDER$ HEIGHT;

RUN;

PROC PRINT;

RUN;


2.WHAT IF THE DATA IS SEPARATED WITH COMMA OR ANY OTHER SPECIAL CHARACTER(@#$%&*)


**** USE THE DLM(DELIMETER @#$^%&*) " DLM=',' OPTION IN INFILE STATEMENT;


DATA RAGHU01;

INFILE "C:\Users\sumed\OneDrive\Desktop\SS1.txt" DLM=',';

INPUT NAME$ AGE GENDER$ HEIGHT;

RUN;

PROC PRINT;

RUN;


3. WHAT IF THE DATA IS MISSING IN B/W THE RECORD/FILE???

/******USE "DSD" OPTION (DELIMITED SENSITIVE DATA) IN INFILE STATEMENT */

DATA RAGHU02;

INFILE "C:\Users\sumed\OneDrive\Desktop\SS2.txt" DSD;

INPUT NAME$ AGE GENDER$ HEIGHT;

RUN;

PROC PRINT;

RUN;


4. WHAT IF THE DATA IS MISSING IN THE LAST RECORD/LAST OBSERVATIONS??

/**** USE DSD AND MISSOVER*/

/*/*MISSOVER:WORKS ONLY FOR MISSING END VALUES*/*/;


DATA RAGHU3;

INFILE "C:\Users\sumed\OneDrive\Desktop\SS3.txt" DSD MISSOVER;

INPUT NAME$ AGE GENDER$ HEIGHT;

RUN;

PROC PRINT;

RUN;


DATA SAS; 

SET SASHELP.CLASS;

RUN;

PROC PRINT;

RUN;


Comments