SAS Language Elements


Descriptions of the new and enhanced language elements for national language support can be found in 'What's New for SAS 9 and 9.1 National Language Support' in SAS National Language Support (NLS): User 's Guide .

Data Set Options

  • The following data set options are new:

    • OBSBUF=

      • determines the size of the view buffer for processing a DATA step view.

    • SPILL=

      • specifies whether to create a spill file for non-sequential processing of a DATA step view.

  • The following data set options are enhanced:

    • BUFNO=

      • supports the same syntax as the BUFNO= system option in order to specify the number of buffers to be allocated for processing a SAS data set.

    • BUFSIZE=

      • supports the same syntax as the BUFSIZE= system option in order to specify the permanent buffer page size for an output SAS data set.

    • FIRSTOBS=

      • supports the same syntax as the FIRSTOBS= system option in order to specify which observation SAS processes first.

    • OBS=

      • supports the same syntax as the OBS= system option in order to specify when to stop processing observations.

Formats

  • The maximum length for character format names is increased to 31. The maximum length for numeric format names is increased to 32.

  • The following formats are new:

    • MMYY

      • writes date values in the form mmM<yy>yy, where M is the separator and the year is written in either 2 or 4 digits.

    • YYMM

      • writes date values in the form <yy>yyMmm, where the year is written in either 2 or 4 digits and M is the separator.

    • YYQ

      • writes date values in the form <yy>yyQq, where the year is written in either 2 or 4 digits, Q is the separator, and q is the quarter of the year.

    • YYQR

      • writes date values in the form <yy>yyQqr, where the year is written in either 2 or 4 digits, Q is the separator, and qr is the quarter of the year expressed in Roman numerals.

  • The PVALUE format now returns missing values that are specified by the MISSING= system option.

Functions and CALL Routines

New functions and CALL routines include character, mathematical, descriptive statistical, and special functions, and character-string matching functions that can use PERL expressions.

  • The following character functions are new:

    • ANYALNUM

      • searches a character string for an alphanumeric character and returns the first position at which it is found.

    • ANYALPHA

      • searches a character string for an alphabetic character and returns the first position at which it is found.

    • ANYCNTRL

      • searches a character string for a control character and returns the first position at which it is found.

    • ANYDIGIT

      • searches a character string for a digit and returns the first position at which it is found.

    • ANYFIRST

      • searches a character string for a character that is valid as the first character in a SAS variable name under VALIDVARNAME=V7, and returns the first position at which that character is found.

    • ANYGRAPH

      • searches a character string for a graphical character and returns the first position at which it is found.

    • ANYLOWER

      • searches a character string for a lowercase letter and returns the first position at which it is found.

    • ANYNAME

      • searches a character string for a character that is valid in a SAS variable name under VALIDVARNAME=V7, and returns the first position at which that character is found.

    • ANYPRINT

      • searches a character string for a printable character and returns the first position at which it is found.

    • ANYPUNCT

      • searches a character string for a punctuation character and returns the first position at which it is found.

    • ANYSPACE

      • searches a character string for a white-space character (blank, horizontal tab, vertical tab, carriage return, line feed, or form feed), and returns the first position at which it is found.

    • ANYUPPER

      • searches a character string for an uppercase letter and returns the first position at which it is found.

    • ANYXDIGIT

      • searches a character string for a hexadecimal character that represents a digit and returns the first position at which that character is found.

    • CAT

      • concatenates character strings without removing leading or trailing blanks.

    • CATS

      • concatenates character strings and removes leading and trailing blanks.

    • CATT

      • concatenates character strings and removes trailing blanks only.

    • CATX

      • concatenates character strings, removes leading and trailing blanks, and inserts separators.

    • CHOOSEC

      • returns a character value that represents the results of choosing from a list of arguments.

    • CHOOSEN

      • returns a numeric value that represents the results of choosing from a list of arguments.

    • COMPARE

      • returns the position of the leftmost character by which two strings differ , or returns 0 if there is no difference.

    • COMPGED

      • compares two strings by computing the generalized edit distance.

    • COMPLEV

      • compares two strings by computing the Levenshtein edit distance.

    • COUNT

      • counts the number of times that a specific substring of characters appears within a character string that you specify.

    • COUNTC

      • counts the number of specific characters that either appear or do not appear within a character string that you specify.

    • FIND

      • searches for a specific substring of characters within a character string that you specify.

    • FINDC

      • searches for specific characters that either appear or do not appear within a character string that you specify.

    • IFC

      • returns a character value that matches an expression.

    • IFN

      • returns a numeric value that matches an expression.

    • LENGTHC

      • returns the length of a character string, including trailing blanks.

    • LENGTHM

      • returns the amount of memory (in bytes) that is allocated for a character string.

    • LENGTHN

      • returns the length of a non-blank character string, excluding trailing blanks, and returns 0 for a blank character string.

    • NLITERAL

      • converts a character string that you specify to a SAS name literal (n-literal).

    • NOTALNUM

      • searches a character string for a non-alphanumeric character and returns the first position at which it is found.

    • NOTALPHA

      • searches a character string for a non-alphabetic character and returns the first position at which it is found.

    • NOTCNTRL

      • searches a character string for a character that is not a control character and returns the first position at which it is found.

    • NOTDIGIT

      • searches a character string for any character that is not a digit and returns the first position at which that character is found.

    • NOTFIRST

      • searches a character string for an invalid first character in a SAS variable name under VALIDVARNAME=V7, and returns the first position at which that character is found.

    • NOTGRAPH

      • searches a character string for a non-graphical character and returns the first position at which it is found.

    • NOTLOWER

      • searches a character string for a character that is not a lowercase letter and returns the first position at which that character is found.

    • NOTNAME

      • searches a character string for an invalid character in a SAS variable name under VALIDVARNAME=V7, and returns the first position at which that character is found.

    • NOTPRINT

      • searches a character string for a non-printable character and returns the first position at which it is found.

    • NOTPUNCT

      • searches a character string for a character that is not a punctuation character and returns the first position at which it is found.

    • NOTSPACE

      • searches a character string for a character that is not a white-space character (blank, horizontal tab, vertical tab, carriage return, line feed, or form feed), and returns the first position at which it is found.

    • NOTUPPER

      • searches a character string for a character that is not an uppercase letter and returns the first position at which that character is found.

    • NOTXDIGIT

      • searches a character string for a character that is not a hexadecimal digit and returns the first position at which that character is found.

    • NVALID

      • checks a character string for validity for use as a SAS variable name in a SAS statement.

    • PROPCASE

      • converts all words in an argument to proper case.

    • PRXCHANGE

      • performs a pattern-matching replacement.

    • PRXPOSN

      • returns the value for a submatch.

    • SCANQ

      • returns the n th word from a character expression and ignores delimiters that are inside quotation marks.

    • STRIP

      • returns a character string with all leading and trailing blanks removed.

    • SUBPAD

      • returns a substring that has a length you specify, using blank padding if necessary.

    • SUBSTRN

      • returns a substring that allows a result with a length of 0.

  • The following descriptive statistics functions are new:

    • GEOMEAN

      • returns the geometric mean.

    • GEOMEANZ

      • returns the geometric mean without fuzzing the values of the arguments that are approximately 0.

    • HARMEAN

      • returns the harmonic mean.

    • HARMEANZ

      • returns the harmonic mean without fuzzing the values of the arguments that are approximately 0.

    • IQR

      • returns the interquartile range.

    • LARGEST

      • returns the k th largest non-missing value.

    • MAD

      • returns the median absolute deviation from the median.

    • MEDIAN

      • computes median values.

    • MODZ

      • returns the remainder from the division of the first argument by the second argument, using 0 fuzzing.

    • PCTL

      • computes percentiles.

    • RMS

      • returns the root mean square.

    • SMALLEST

      • returns the k th smallest non-missing value.

  • The following macro functions are new:

    • SYMEXIST

      • indicates the existence of a macro variable.

    • SYMGLOBL

      • indicates whether a macro variable is in a global scope in the DATA step during DATA step execution.

    • SYMLOCAL

      • indicates whether a macro variable is in a local scope in the DATA step during

    • DATA step execution.

  • The following mathematical functions are new:

    • BETA

      • returns the value of the beta function.

    • COALESCE

      • returns the first non-missing value from a list of numeric arguments.

    • COALESCEC

      • returns the first non-missing value from a list of character arguments.

    • LOGBETA

      • returns the logarithm of the beta function.

  • The following probability function is new:

  • LOGCDF

    • returns the logarithm of a left cumulative distribution function.

  • The following quantile function is new:

  • QUANTILE

    • returns the quantile from the specified distribution.

  • The following special function is new:

  • UUIDGEN

    • returns the short or binary form of a Universal Unique Identifier (UUID).

  • The following state and ZIP code function is new:

    • ZIPCITY

      • returns a city name and the two-character postal code that corresponds to a ZIP code.

  • The following trigonometric function is new:

  • ATAN2

    • returns the arc tangent of two numeric variables .

  • The following truncation functions are new:

  • CEILZ

    • returns the smallest integer that is greater than or equal to the argument, using 0 fuzzing.

  • FLOORZ

    • returns the largest integer that is less than or equal to the argument, using 0 fuzzing.

  • INTZ

    • returns the integer portion of the argument, using 0 fuzzing.

  • ROUND

    • rounds the first argument to the nearest multiple of the second argument, or to the nearest integer when the second argument is omitted.

  • ROUNDE

    • rounds the first argument to the nearest multiple of the second argument, and returns an even multiple when the first argument is halfway between the two nearest multiples .

  • ROUNDZ

    • rounds the first argument to the nearest multiple of the second argument, with 0 fuzzing.

  • The following variable information functions are new:

  • VVALUE.

    • returns the formatted value that is associated with the variable that you specify.

  • VVALUEX

    • returns the formatted value that is associated with the argument that you specify.

  • Using Perl regular expression (PRX) functions and CALL routines is new.

    • See 'Pattern Matching Using SAS Regular Expressions (RX) and Perl Regular Expressions (PRX)' on page 260 for more information.

    • PRXMATCH

      • searches for a pattern match and returns the position at which the pattern is found.

    • PRXPAREN

      • returns the last bracket match for which there is a match in a pattern.

    • PRXPARSE

      • compiles a Perl regular expression that can be used for pattern-matching of a character value.

    • CALL PRXCHANGE

      • performs a pattern-matching substitution.

    • CALL PRXDEBUG

      • enables Perl regular expressions in a DATA step to send debug output to the SAS log.

    • CALL PRXFREE

      • frees unneeded memory that was allocated for a Perl regular expression.

    • CALL PRXNEXT

      • returns the position and length of a substring that matches a pattern and iterates over multiple matches within one string.

    • CALL PRXPOSN

      • returns the start position and length for a capture buffer.

    • CALL PRXSUBSTR

      • returns the position and length of a substring that matches a pattern.

  • The following CALL routines are new:

    • CALL ALLPERM

      • generates all permutations of the values of several variables.

    • CALL CATS

      • concatenates character strings and removes leading and trailing blanks.

    • CALL CATT

      • concatenates character strings and removes trailing blanks only.

    • CALL CATX

      • concatenates character strings, removes leading and trailing blanks, and inserts separators.

    • CALL COMPCOST

      • sets the costs of operations for later use by the COMPGED function.

    • CALL LOGISTIC

      • returns the logistic value of each argument.

    • CALL MISSING

      • assigns a missing value to the specified character or numeric variables.

    • CALL RANPERK

      • randomly permutes the values of the arguments and returns a permutation of k out of n values.

    • CALL RANPERM

      • randomly permutes the values of the arguments.

    • CALL SCAN

      • returns the position and length of a given word from a character expression.

    • CALL SCANQ

      • returns the position and length of a given word from a character expression, and ignores delimiters that are inside quotation marks.

    • CALL SOFTMAX

      • returns the softmax value for each argument.

    • CALL STDIZE

      • standardizes the values of one or more variables.

    • CALL STREAMINIT

      • specifies a seed value to use for subsequent random number generation by the RAND function.

    • CALL SYMPUTX

      • assigns a value to a macro variable and removes both leading and trailing blanks.

    • CALL TANH

      • returns the hyperbolic tangent of each argument.

    • CALL VNEXT

      • returns the name, type, and length of a variable that is used in a DATA step.

  • The following functions are enhanced:

  • COMPRESS

    • accepts a third optional argument that can modify the characters in the second argument.

  • EXIST

    • accepts all SAS data library type members . A third optional argument enables you to specify a generation data set number.

  • INDEXW

    • accepts a third optional argument that enables you to use delimiters for inter-word boundaries.

    • accepts an argument that enables you to use a Perl regular expression.

  • SUBSTR (left of=)

    • assigns a length of 8 to an undeclared variable when the function is compiled.

Informats

  • The maximum length for character informat names is increased to 30. The maximum length for numeric informat names is increased to 31.

  • The following informats are new:

    • ANYDTDTE

      • extracts date values from DATE, DATETIME, DDMMYY, JULIAN, MMDDYY, MONYY, TIME, or YYQ informat values.

    • ANYDTDTM

      • extracts datetime values from DATE, DATETIME, DDMMYY, JULIAN, MMDDYY, MONYY, TIME, or YYQ informat values.

    • ANYDTTME

      • extracts time values from DATE, DATETIME, DDMMYY, JULIAN, MMDDYY, MONYY, TIME, or YYQ informat values.

    • STIMER w .

      • reads time values and determines whether the values are hours, minutes, or seconds; reads the output of the STIMER system option.

ARM Macros

The new ARM macro, %ARMCONV, converts an ARM log that is created in SAS 9 or later, which uses a simple format, into the ARM log format that is used in Release 8.2, which is more detailed.

SAS Utility Macro

The new SAS utility macro, %DS2CSV, converts SAS data sets to comma-separated value (CSV) files.

Statements

  • The following statements are new:

    • FILENAME, CLIPBAORD Access Method

      • enables you to read text data from and write text data to the clipboard on the host machine.

    • DECLARE

      • declares a DATA step component object; creates an instance of and initializes data for a DATA step component object.

    • _NEW_

      • creates an instance of a DATA step component object.

    • PUTLOG

      • writes a message to the SAS log.

  • The following statements are enhanced:

    • FILENAME, FTP Access Method

      • supports directory services and multiple FTP service commands.

    • FILENAME, URL Access Method

      • supports Secure Sockets Layering (SSL).

    • LIBNAME statement

      • has new options:

        • COMPRESS= controls the compression of observations in output SAS data sets in a SAS data library.

        • CVPBYTES= specifies the number of bytes to expand character variable lengths when processing a SAS data set that requires transcoding.

        • CVPENGINE= specifies the engine to use in order to process character variable lengths for a SAS data set that requires transcoding.

        • CVPMULTIPLIER= specifies a multiplier value in order to expand character variable lengths when processing a SAS data set that requires transcoding.

        • INENCODING= overrides the encoding for input processing.

        • OUTENCODING= overrides the encoding for output processing.

System Options

  • The following system options are new:

    • ARMAGENT=

      • specifies an ARM agent, which is an executable module that contains a vendor's implementation of the ARM API.

    • ARMLOC=

      • specifies the location of the ARM log.

    • ARMSUBSYS=

      • enables and disables the ARM subsystems that determine the internal SAS processing transactions to be logged.

    • AUTHPROVIDERDOMAIN=

      • associates a domain suffix with an authentication provider.

    • AUTOSAVELOC=

      • specifies the location of the Program Editor autosave file.

    • BYSORTED

      • specifies whether observations in one or more data sets are sorted in alphabetic or numeric order or are grouped in another logical order.

    • CMPLIB=

      • specifies one or more SAS catalogs that contain compiler subroutines to be included during program compilation.

    • CMPOPT=

      • specifies the type of code generation optimizations to use in the SAS language compiler.

    • CPUCOUNT=

      • specifies the number of processors that the thread-enabled applications should assume are available for concurrent processing.

    • DMSLOGSIZE=

      • specifies the maximum number of rows that the SAS windowing environment Log window can display.

    • DMSOUTSIZE=

      • specifies the maximum number of rows that the SAS windowing environment Output window can display.

    • DMSSYNCHK

      • enables syntax checking for multiple steps in the SAS windowing environment.

    • DTRESET

      • updates date and time in the SAS log and in the listing file.

    • EMAILAUTHPROTOCOL=

      • specifies the authentication protocol for SMTP e-mail.

    • EMAILID=

      • specifies the identity of the individual sending e-mail from within SAS.

    • EMAILPW=

      • specifies your e-mail login password.

    • ERRORBYABEND

      • specifies how SAS responds to BY- group error conditions.

    • FONTSLOC=

      • specifies the location that contains the SAS fonts that are loaded by a printer to use with Universal Printing.

    • HELPENCMD

      • controls whether SAS uses the English version or the translated version of the keyword list for the command-line Help.

    • IBUFSIZE=

      • specifies the buffer page size for an index file.

    • LOGPARM=

      • controls when SAS log files are opened and closed and, in conjunction with the LOG= system option, how they are named.

    • METAAUTORESOURCES=

      • identifies resources to be assigned at SAS start-up.

    • METACONNECT=

      • identifies the named connection from the metadata user profiles to use as the default values for logging into the SAS Metadata Server.

    • METAENCRYPTALT=

      • specifies the type of encryption to use when communicating with a SAS Metadata Server.

    • METAENCRYPTLEVEL=

      • specifies what is to be encrypted when communicating with a SAS Metadata Server.

    • METAID=

      • identifies the current SAS version installed on the SAS Metadata Server.

    • METAPASSWORD=

      • sets the default password for the SAS Metadata Server.

    • METAPORT=

      • sets the TCP port for the SAS Metadata Server.

    • METAPROFILE=

      • identifies the file that contains the SAS Metadata Server user profiles.

    • METAPROTOCOL=

      • sets the network protocol for communicating with the SAS Metadata Server.

    • METAREPOSITORY=

      • sets the default SAS Metadata Repository to use on the SAS Metadata Server.

    • METASERVER=

      • sets the address of the SAS Metadata Server.

    • METAUSER=

      • sets the default user identification for logging on to the SAS Metadata Server.

    • PAGEBREAKINITIAL

      • begins the SAS log and listing files on a new page.

    • QUOTELENMAX

      • specifies that SAS write a warning to the SAS log about the maximum length that can be used for strings that are enclosed in quotation marks.

    • SORTEQUALS

      • controls the order in which PROC SORT arranges observations that have identical BY values in the output data set.

    • SYSPRINTFONT

      • sets the font for the current default printer.

    • SYNTAXCHECK

      • specifies whether to validate SAS program syntax.

    • TERMSTMT=

      • specifies the SAS statements to be executed when the SAS session is terminated .

    • TEXTURELOC=

      • specifies the location of textures and images that are used by ODS styles.

    • THREADS

      • specifies that SAS use threaded processing if it is available.

    • TOOLSMENU

      • specifies to include or suppress the Tools menu in windows that display SAS menus .

    • UUIDCOUNT

      • specifies the number of UUIDs to acquire each time the UUID Generator Daemon is used.

    • UUIDGENHOST

      • identifies the host and the port of the UUID Generator Daemon.

    • UTILLOC=

      • specifies a set of file system locations in which applications can store utility files.

    • VALIDFMTNAME=

      • controls the length of format and informat names that can be used when creating new SAS data sets and format catalogs.

    • VIEWMENU

      • specifies to include or suppress the View menu in windows that display menus.

    • V6CREATEUPDATE=

      • controls or monitors the creation of new Version 6 data sets or the updating of existing Version 6 data sets.

  • The following system options have been enhanced:

    • CMPOPT=

      • specifies the type of code generation optimizations to use in the SAS language compiler.

    • SORTSIZE=

      • specifies the amount of memory that is available when using the SORT procedure.




SAS 9.1 Language Reference Dictionary, Volumes 1, 2 and 3
SAS 9.1 Language Reference Dictionary, Volumes 1, 2 and 3
ISBN: N/A
EAN: N/A
Year: 2004
Pages: 704

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net