HOME QUICK SEARCH AUTHORS KEYWORDS HELP BUGS

SESUG 2000 Papers - Index

80 papers. Source: SESUG (SouthEast SAS Users Group) conference proceedings.

# Title
×
Authors
×
Abstract
×
Keywords
×
Extras Pages
1 %XTAB2HTM: macro using ODS to convert proc FREQ cross-tabulation to HTML with a Table of Contents and back buttons Ronald J. Fehd SAS V8 software Output Delivery System (ODS) provides programmers with the ability to write HyperText Markup Language (HTML) files. A Table of Contents may be added to these files by adding hypertext links and destinations to SAS data sets before they are directed to output. This paper discusses the syntax of HTML anchors and links and illustrates a method of writing an index and forward- and backward-linked files. The intended audiences are intermediate SAS and macro programmers. Key words: list processing, PROC FREQ, cross-tabulation table, HTML, anchor, link, href, name, goto, label proc freq, proc step source 7
2 A Dynamic Imagemap Generator Carol A. Martell We learned that our web developers were turning a picture of the state of North Carolina with its one hundred counties into an imagemap by manually outlining each county. Ouch! SAS/GRAPH does a lovely job via SAS/INTRNET . The web developers kept changing their minds about the size of the image, so I wrote a little proc step, filename statement, proc gmap, output delivery system, %if-%then-%else source 5
3 A High-Level Summary Table Generation Language Supplying the Missing Link between PROC MEANS using a CLASS Statement and PROC TABULATE Dorothy E. Pugh FlexTab is a high-level language used to generate proc step, proc tabulate, class variable, macro variable, nominal variable, dataset, data dictionary, proc means, proc report, clinical trial, flat file source 9
4 A Join for All Seasons Caroline C. Bahler The ability to combine different types of data from multiple hardware and software platforms is a major strength of the SAS system. SAS has blessed information analysts with a wealth of different options for joining data values from many different data structures. Therefore, an information analyst needs to determine who (parent data structures), what ("software environment"), where ("hardware environment"), how (the tools available to perform the join) and why (the required contents of the child data set) of a join in order to determine which strategy to use. This paper will discuss the joining techni ques offered within the SAS system and give examples of their use full join, inner join source 10
5 A Macro to Center Text in a DATA _NULL_ Step Erik S. Larsen proc step, proc print source 3
6 A Robust Generalized Axis-scaling SAS Macro Dorothy E. Pugh Generating high-quality plots quickly is an important task for the clinical trials programmer. Creating reasonable-looking axes for these plots presents a special challenge because of the mutually conflicting needs to 1) make the number of tick marks moderate and consistent, 2) reduce the number of significant figures in the tick mark labels, and 3) control the amount of margin space in the resulting plot. This paper describes an axis-scaling algorithm, which enables programmers with different needs to achieve a tradeoff among these criteria that suits these needs. Users can control settings with two types of input variables in the form of keyword parameters with carefully set defaults: 1) explicit constraints, and 2) those that control the calculation of this tradeoff macro definition, macro loop source 6
7 A SAS Program for the Computation of Seroconversion Rates in a Prospective Study of HIV Discordant Couples in Lusaka, Zambia Ilene Brill,
Maurizio Macaluso,
Jareen K. Meinzen-Derr,
Susan Allen
A SAS program was designed to monitor HIV seroconversion (i.e., the transition from HIV seronegative to HIV seropositive status, indicating a new infection) in a prospective cohort of HIV discordant (one partner HIV+, the other HIV-) cohabiting couples in Lusaka, Zambia. Couples are followed up every three months. The investigator was interested in computing seroconversion rates during specified time intervals: 1) during each 3-month follow-up interval, 2) during progressively longer periods (e.g, 0-6 months, 0-9 months, etc.) and 3) for specified combinations of these same three month intervals (e.g., from month 6 to month 12). The program consists of three macros implementing the three calculations described above. Total person months and number of seroconvertors are calculated by sex and for both sexes combined among at-risk (i.e., HIV-) subjects. Seroconversion rates are expressed as the number of seroconvertors per 100 person-years of follow-up macro variable, confidence interval, data step, do loop, poisson distribution source 7
8 A SAS/AF Application for Linking Demographic & Laboratory Data for Participants in Clinical & Epidemiologic Research Studies Emily A. Mixon,
Karen B. Fowler
The delivery population and their offspring at two local hospitals are consented and screened for cytomegalovirus (CMV) infection as part of a research project in the Department of Pediatrics at the University of Alabama at Birmingham. Letters are sent to all mothers with the laboratory results for both mother and newborn. Depending on the results of the screening, the mothers are eligible to participate in either a CMV vaccine trial or an epidemiologic study of CMV immunity. CMV positive children are eligible to participate in a study of congenital CMV infection and outcome. A SAS/AF application (v. 6.12) was developed to collect demographics, initial dataset, laboratory data source 6
9 ABC's of Graphs in Version 8 Caroline C. Bahler Version 8 has greatly increased the versatility and usability of gr aphs that can be created by SAS. This paper will discuss the new graphic capabilities and how they can be used to upgrade the look and feel of graphs. In addition, the Output Delivery System (ODS) in regards to graph creation and drill down capabilities will be discussed bar chart, proc step, ods html source 9
10 Add A Common Look and Feel to Your Web Application Easily Steve James Having all of your output pages of your SAS/INTRNET application have the same look and feel is an important aspect of making your web applications more useful. But adding all of the HTML code to each page can be challenging, as well as difficult to maintain. By using an HTML template file, you can easily add the same banners and links to each output file your application produces. This technique leads to easy maintenance, does not require an extensive knowledge of HTML, but still allows some customization proc step, proc print source 4
11 Building Systems of Macros The Print System and The Macro Reporting System (MRS) John Iwaniszek,
George E. Demuth
The SAS/MACRO facility can be used to create complex open-ended reporting systems. Global m a c r ov a r i a b l e sc a nb eu s e dt oc r e a t eS A S PROC style interfaces by passing key summary information within a system of macros. The Print System and the Macro Reporting System (MRS) provide two examples of systems, each designed with a programming interface that enables users to assemble statistical summary tables from their primitive elements. In this case, the primitives are the macros that constitute the horizontal and vertical dimensions of the table (independent and dependent variables) and the types of summaries that populate the cells (univariate statistics, frequencies, test statistics). Different macros serve to initialize the table, specify the rows, and execute the table macro variable, macro definition, macro facility source 7
12 Can A New Interpretation Of Survival Data Help Patients Successfully Modify Adverse Risk Profiles? Gregory L. Pearce hazard ratio, survival analysis source 5
13 Computation of pvalues for Multiple Comparisons with a Control in the SAS System Jean G. Orelien In statistics, multiple comparison procedures (MCP) to compare several means of a treatment are widely used. However, the computations of p-values for MCPs can be complex. In this paper, we discuss and generalize the algorithm used for computations of pvalues for multiple comparisons with a control (MCC) in the SAS system. The limitations of the algorithm will also be discussed. Currently, besides the function PROBMC, p- values for MCC can only be obtained in PROC GLM or PROC MIXED. However, there are other cases when a researcher may want to perform MCC for data that can only be analyzed in PROC LOGISTIC or PROC GENMOD. For example, in toxicology, it is often of interest to compare several levels of a toxic substance against a zero dose (the control) proc step, proc glm, covariance, proc genmod, proc mixed, correlation, macro definition, degrees of freedom, normal distribution, anova, logistic distribution source 9
14 Computing the Approximate and Exact Leaving-One-Out Method in Multiple Group Logistic Discrimination with the SAS System Mohamed H. Hussein Despite the popularity of logistic discrimination in the social and behavioral science the author is not aware with any commercial statistical software which provides the practitioner with another estimate than resubstitution method. This paper presents SAS program to conduct an approximate leaving-one-out and exact leaving-one-out for estimating the classification hit rate in multiple- group logistic discrimination. Monte Carlo study was conducted to assess the effect of the sample size on the performance of the approximation method relative to resubstitution method and exact leaving-one-out. The usefulness of this approximation is demonstrated by means of educational example sample, logistic distribution, sample size, logistic regression, posterior probability, statistical software, regression analysis source 6
15 Customize your SAS Output with the Template Procedure: A Beginning Tutorial Carol Gosselin The Output Delivery System (ODS), introduced in version 7 of the SAS System, offers many options for formatting SAS output. Default templates can be replaced with custom templates created using the TEMPLATE Procedure. Output from entire SAS jobs can be modified with style- definitions and single output objects can be formatted with user created table-definitions. This beginning tutorial will provide several basic PROC TEMPLATE examples. It will cover where templates are stored, how they are accessed, and how they are created. It will cover the concepts of inheritance. PROC TEMPLATE has more options than are reasonable to cover in a beginning tutorial. However, the basic concepts will be demonstrated and references to the most current sources of documentation and examples will be mentioned. This paper assumes the reader has a basic understanding of ODS. The basics are thoroughly covered in Bryant, Muller, and Pass (1999) and Olinger (2000) proc template, proc step, file statement, output delivery system, ods html, proc tabulate, quit, end, sas output source 10
16 DATA CLEANING: Preemptive Techniques Malachy J. Foley Data cleaning is a necessary evil... Or is it? Many techniques exist that prevent data errors at data gathering and/or at data input. The use of these techniques eliminates or minimizes the errors that actually get into your computer files. One such technique is check digits. Check digits can eliminate up to 99% of all transcription and keying errors. They even catch errors missed by double keying. Other techniques include proper form design, data monitoring, shipping logs, and hash totals. This tutorial examines these error-prevention techniques through examples and where applicable, it includes SAS code hash total, data wrangling, data cleaning, numeric variable source 9
17 Data Mining: An Overview of Methods and Technologies for Increasing Profits in Direct Marketing C. Olivia Parr Rud Data Mining is a new term for the common practice of searching through data to find patterns, which will predict future outcomes or define measurable relationships. Statistical and machine learning methods are the favored tools of many businesses that utilize direct marketing. This paper will explore some of the typical uses of Data Mining in direct marketing with discussions and examples of measuring response, risk and lifetime customer value. The paper will conclude with highlights of SAS Enterprise Miner and its ability to transform the Data Mining process missing value, logistic regression, logistic distribution, regression analysis, sample, interval variable, data cleaning, response variable, predictor variable, product profitability, univariate analysis, data mining, gain chart source 7
18 Data Structure Determines Programming Effort H. Ian Whitlock Data are often stored in a rather inconvenient form. Thus a lot of report writing and data manipulation programs contain large chunks of code used to rebuild the data in the correct structure, followed by relatively simple report writing or data maintenance code. Typical problems will be identified and discussed in terms of examples found while helping students, analyzing my colleagues' code, and answering questions on SAS-L. Often the programmer does not have the control needed to correct these problems, so efficient coding methods (typically involving macro code) to work around problems that cannot be corrected will also be discussed. In this manner, I hope to make the programmer aware of: 1. How data storage influences the difficulty of the programming task 2. How to judge the cost in programming time for poor data structures 3. How to best work around these problems when they cannot be corrected if-then-else, missing value, dataset, macro loop, macro definition source 9
19 Dead Graphs - RIP (How Interactive Graphical EDA Techniques Can Markedly Enhance the Analysis/Display of Our Data) Dave DesJardins The purpose of this paper is to highlight the important difference between "dead" graphs and "live" graphs. With live graphs, users can dynamically change the display of their information based on a quick, interactive cross tabbing of the underlying/input data. These live graphs will be a key component of a Census Historical Atlas CD- ROM that is to be published by the Census Bureau next year. With "live" graphs, we hope to bring an incredible capability to the general public - to gain a quantum leap in our ability to see and understand our data. outlier, normal distribution source 9
20 Delivering South Carolina Health and Demographic Information via the Web Using SAS/IntrNetTM Software Heather L. Mann This paper describes the use of SAS/INTRNETTM software to develop a health information query system available to the public via the web. The Office of Research and Statistics(ORS), collects various health and demographic data. These data include hospitalizations, census and numerous other data. ORS undertook the challenge to condense much of its data and make it available to the public via the web using SAS and SAS/INTRNET TM software. The data were summarized by selected categories and a "query system" was designed using SAS/INTRNETTM software, SAS web publishing tools and HTML forms. The use of SAS and SAS/INTRNETTM software allowed ORS to condense its data and make it readily available via the web. ORS receives numerous requests from various sources. Using the query system, requestors may obtain needed information in minutes instead of days proc step, macro definition source 5
21 Effective SAS User Support: Utilize the Power of the Intranet Lisa M. Davis This paper features the Bank of America in-house SAS web site. This web site provides our users a central site to obtain information about the SAS system. We use this site to provide: Latest SAS news Sample code Documentation Upgrades License updates Frequently asked questions This paper is intended for all users of the SAS System who are interested in user support proc step, sample source 3
22 Emerging Technologies Roadmap A Decision Tree Guide to Understanding SAS Strengths Gregory S. Barnes Nelson Whether you are developing internal applications for corporate use or providing solutions for client use, one of the most daunting challenges facing technologists today is selecting the most appropriate technology and system design. Often the process is wrought with politics, gerrymandering, and a bit of black magic. Even within the SAS System, products compete for their place in the application architecture. Based on over 35 years of combined experience in developing applications and an inexhaustible thirst for emerging technologies, we will share with you some of our experiences to try and help provide a framework to understand some of the most compelling technologies available today and emerging tomorrow. In this paper, we will outline which of today's problems the SAS system is uniquely qualified to solve and what types of problems SAS should be well positioned to handle in the future proc hpsplit, power analysis source 9
23 Enterprise Integration Technologies - What Is It and What Can It Do for Me? Scott Vodicka Today, businesses are faced with many challenges such as increased competition, acquisitions and mergers, new worldwide markets, and changing hardware and software environments. To survive under these conditions companies must integrate their applications throughout the enterprise. Enterprise Integration Technologies provides the ability to integrate your SAS applications in the diverse information systems arena. Enterprise Integration Technologies (EIT) is a new bundle of products from SAS that include SAS/CONNECT software, SAS/INTRNET software, and SAS Integration Technologies. SAS Integration Technologies is a new product with Version 8 of the SAS System. The products in this bundle support application integration and access to a SAS server for SAS clients, Web clients, and other thin clients. These products may be licensed individually. To fully enable your SAS server you may license all three products as the Enterprise Integration Technologies bundle sample, spk file source 7
24 Exploratory Data Analysis using PROC UNIVARIATE Robert E. Maitland Jr. Exploratory Data Analysis (EDA) is an important first step in any data analysis. PROC UNIVARIATE generates a number of statistics useful for EDA. This paper explores two samples. The focus is on measures of location, measures of dispersion, measures of shape, and plots. An emphasis is placed on the new features available in version 8 sample, proc univariate, proc step, interquartile range, confidence interval, box plot, histogram, standard deviation source 4
25 How to Get the Online Information You Need: An Overview of "What's Where" for SAS System Help, SAS Online Doc, SAS Online Tutor, and the Web James J. Ashton,
Sean M. Gargan,
Dee Stribling
This paper describes where to look for information about the SAS sas base, grid computing source 5
26 How to Incorporate Old SAS Data into a New DATA Step, or "What is S-M-U?" Andrew T. Kuligowski S-M-U. Some people will see these three letters and immediately think of the abbreviation for a private university and associated football team in Texas. Others might treat them as a three-letter word, and recall a whimsical cartoon character created by Al Capp many years ago. However, in the world of the dataset, set statement source 9
27 I'll Have the TABULATEs a la ODS Please, With a Table of Contents On the Side Ray Pass The advent of the Output Delivery System (ODS) in Version 8 (all right, it was really introduced in V7, but I still refer to V7 as V8 beta) of the SAS System is truly monumental in scope. It required rewriting all SAS procedures that produce output (not all do) and splitting out their "data components" from their "table definitions" (presentation format templates). We now have the ability to combine these components into customized "output objects" and to send them to different output "destinations", including casting them as HTML pages. When we do use the HTML destination, we also have the ability to produce our main content output as one component frame of a multi-frame page, the other possible component frames being either procedure or page oriented Tables of Contents. Although there are proc step, proc tabulate, macro variable, proc print, output delivery system, title statement, dataset, ods html, proc template, excel, raw data, macro definition source 9
28 Implementing a balanced scorecard solution on top of SAP, using CFO vision as interface Ida Carpelle Financial information is vital for all departments of a company. Now that your company has successfully implemented SAP R/3, a vital question comes into all minds: " How to ensure that the business operations are working towards the strategic direction set by the board of management?" The answer to this question is the "Balanced Scorecard". The Balance scorecard is a "management system that translates the mission and strategy of an organization into a coherent set of fact table, data standard source 6
29 Integrating SAS in Corporate IT John M. LaBore Applied users widely recognize the value of information delivery using SAS software. Integrating SAS into the business increases and streamlines productivity. However, limited awareness may exist in corporate IT of the role these tools play in knowledge formation for business solutions. The undervaluation of SAS stems from historical use by researchers, rather than IT developers enamoured by new technology. This can be remedied by raising corporate IT's awareness of cutting-edge SAS tools and the value of their adoption for timely solutions to a growing range of tasks. We discuss issues associated with raising corporate IT's awareness of the power of SAS software clinical research, pharmaceutical industry, proc step source 6
30 Integrity Constraints and Audit Trails Working Together Gary S. Franklin New features in Version 7 and Version 8 of the SAS System support centralized control of updating. The integrity constraints feature defines rules to be enforced during updates, and the audit trail feature logs every update activity, with enough information to determine which updates failed, if any. When updates fail, data from the audit trail can be used to reconstruct the original updates so they can be successfully reapplied. Using these new features together can substantially reduce the amount of coding required to perform the repair operations audit trail, dataset, constraint, key, foreign key, proc step, error message, proc sql, data integrity, proc contents, proc datasets, data cleaning source 6
31 Introduction in Efficient SAS Programming via Incremental Refinement by Example Paul M. Dorfman How to write efficient SAS programs? Should you allow performance considerations to be a hurdle on the way of coding a workable program by suspiciously looking at each statement as a potential resource hog? Or should you keep efficiency in the background until a working prototype has been devised, and then refine its performance incrementally? As the title suggests, not only the author is rather inclined to accept the latter notion, but also he has the audacity to use real-life SAS examples to prove that this is the way to go! He also dares to assert that by applying this process repeatedly and accumulating the knowledge about high-performance techniques, a SAS programmer acquires the ability to look ahead and program efficiently from onset temporary array, update statement source 8
32 It's A Brand New eWorld! Jay L. Stevens "It's a brand new world." "The old rules don't apply." "You need an e-Intelligence solution designed for the web." The truth is… it is not an entirely new world, most of the old rules do apply, and what you need for e- Intelligence is not a web system but a proven business intelligence / data warehousing solution. The dramatic acceleration of technology changes in the online world has driven the creation of completely new business models, created a completely new customer distribution channel, and has resulted in revolutionary process improvements for many companies. Whether they are a brand new dot com or an old line brick and mortar trying hard to become a hip and trendy click and mortar, they all still need one thing, business intelligence and decision support to understand their organizations, their customers, and their suppliers business intelligence, sas base source 5
33 Macro Design Considerations for a Word Wrapping Macro H. Ian Whitlock This paper presents a short tutorial on a macro designed for flexibility. A word wrapping problem is used to make the author's points. %WordWrap is used within a DATA STEP to generate partial DATA STEP code. The discussion centers around why the macro should operate at this level and how the user can get control of the output without a great deal of effort. For example: Generate a report writing, the value of LONGSTRING from the work data set REPORT. The value must begin in column 20 for up to 40 characters. When LONGSTRING is more than 40 bytes it should be broken on a word boundary and continued to the next line in column 20. The user might write a short macro, UserMac, to distribute the processing within his DATA STEP. %MACRO usermac ; i+1; if i = 1 then link topline ; else link continue ; %MEND usermac ; followed by the step macro definition, put statement source 2
34 Macros In Scoring Jukui Yi In the banking industry, scores are commonly used to rank customers in a number of areas, including their propensity to purchase a new product, their profitability, and their probability of default. Scores are critical to the success of a company. Developing a good score can take weeks or, even months. After collecting the data, for most score builders, most of their time is devoted to studying which attributes have the best predictive power; and then deciding how to use the chosen attributes to create the scoring. After the scoring is done, its predictability and accuracy must be validated. Its robustness, that is, its sensitivity to changes in the data, must also be checked. This paper will demonstrate a number of time-saving approaches in scoring with utilization of SAS Macros at all levels. Although the examples are from the banking industry, the approach can be applied anywhere. Some familiarity with SAS/STAT and modeling concepts would be helpful predictor variable, sample source 6
35 Mailing List Management Imelda C. Go SAS/G21 functions and procedures can be very helpful in managing mailing lists. For example, duplicate addresses are to be eliminated for a particular mailing. A data set has two addresses: '501 Pelham Drive' and '501 Pelham Dr'. These are logically equivalent addresses but are not recognized by SAS as the same character values. Use the TRANWRD function to change 'Drive' to 'Dr' or to change substrings within an address. The paper includes other mailing list management-related tasks and uses SAS to automate them character functions, proc step source 2
36 Metadata: Everyone Talks About It, But What Is It? John E. Bentley Everyone agrees that metadata is important. But then why do so many data warehouse and data mart users complain about the unavailability or quality of their metadata? At least part of the reason is that there's no agreement on just exactly what is "metadata". The simple definition-"data about data"-is too fuzzy and in most contexts no longer adequate. Unfortunately, most contextual-specific definitions are unworkable or inappropriate for business users. This paper provides a definition that can be incorporated into a metadata solution for those who often need it most-the business users. Disclaimer: The views and opinions expressed here are those of the author and not First Union National Bank. First Union National Bank does not necessarily subscribe to any philosophy, school of thought, approach, definition or process the author describes source 5
37 Organizing Ultra-Quick Disk Table Lookup via Hybrid Indexing Into a Directly Addressed SAS Data Set Paul M. Dorfman When a large, disk-resident, periodically refreshed lookup table has to be frequently searched, a natural way of providing a quick access to the data is to store the table as a SAS data set with a SAS index built on the search key. The speed of SAS index lookup depends on the nature of the key. More often than not, the key is not perfect for being indexed, i.e. discriminant, uniform, and ascending. Besides, even a 'good' indexed key may not be quick enough for some time-sensitive applications. In this paper, it is proposed to structure the lookup file for rapid direct addressing via a hash index, which is 'good' regardless of the search key distribution: Each discrete index value points to about the same number of search keys. Such a cluster of keys is loaded into memory via a single direct read as a prehashed table, where the search key can be located or rejected immediately index, hash table, key, dataset, group by, lookup, sample source 6
38 Panel Discussion on Problem Solving Frank C. DiIorio,
Paul M. Dorfman,
H. Ian Whitlock
proc step, proc print, proc transpose, macro variable, sample, proc sql source 21
39 Performing Exact Logistic Regression with the SAS R /AD System Robert E. Derr Exact logistic regression has become an important analytical technique, especially in the pharmaceuti- cal industry, since the usual asymptotic methods for analyzing small, skewed, or sparse data sets are un- reliable. Inference based on enumerating the ex- act distributions of sufficient statistics for parameters of interest in a logistic regression model, conditional on the remaining parameters, is computationally in- feasible for many problems. Hirji, Mehta, and Patel (1987) developed an efficient algorithm for generat- ing the required conditional distributions, thus mak- ing these methods computationally available. This paper discusses the theory and methods for exact logistic regression and illustrates their application in V e r s i o n8o ft h eS A S logistic distribution, logistic regression, estimate, proc logistic, likelihood function, proc step, regression analysis, null hypothesis, maximum likelihood estimation, odds ratio, exact test, conditional logistic regression, significance level, clinical trial, sample, confidence interval, proc phreg source 10
40 Positioning SAS Software for Corporate Effectiveness John M. LaBore Accelerated research and development has increased industry reliance on Information Technology (IT). Biopharmaceutical IT divisions increasingly require an infrastructure capable of providing global enterprise-wide business solutions. However, when the application of IT innovation to business solutions occurs at an insufficient rate, business needs go unfulfilled. Of particular importance to accelerating research is the implementation of application software for decision making. SAS software provides powerful tools for data warehousing, decision support and presentation, but their effectiveness is directly proportional to an understanding of business issues and how SAS can solve them. A strategy for the integration of these tools into the business streamlines and accelerates critical processes data migration, clinical research source 6
41 Producing a Browseable Statistical Package Using SAS John Iwaniszek,
George E. Demuth,
Michael DeSpirito
SAS was used to produce an entire statistical report with inter-linked HTML pages. The report included graphics, tables, profiles summaries, and listings. The report provides an example and ideas for producing HTML output via SAS ODS or using our HTML output macros. Cascading Style sheets are implemented but not necessary and may result in incompatibilities between the dominant browsers. The authors have found that tables and listings organized in HTML are easier to access and more convenient to use than paper, word-processing files, or other representations of data summaries sas programmer, sample source 6
42 Producing a Table of Seeds for Random Number Generation F. Joseph Kelley The need for producing a random sample of some population of interest is common and is a frequent topic of discussion in various disciplines and in the fora related to those disciplines. When using SAS Software, one of the most straightforward (albeit inefficient) methods of producing such a sample is assigning a (uniform) random number to each observation in the data file of interest; sorting by that random number; then selecting the first n records (observations) desired. If drawing several samples from the original population, this process could be repeated as many times as might be wished; however a SAS Macro could easily be written to accomplish the same. If researchers wished to assign different random number generation seeds to each sample, a small complication is introduced. This might be resolved by using a single seed to set up a table of seeds, but that introduces a potential trap sample, random number generation source 4
43 Put Your Reports On A Web Page Jim Nash SAS can be used very effectively to create and put reports on the intranet/web with version 8 in the Windows environment. Programming will require base SAS, minimal macro language, some HTML, and the Output Delivery System (ODS) to create static web reports with embedded EXCEL links allowing users to have access to both reports and the data in an EXCEL format excel, filename statement source 3
44 Random Sample Selection Imelda C. Go SAS/G21 functions and procedures can be used in a variety of ways to select random samples. The paper is a sampler of SAS code used to select different types of random samples. The types of random sampling methods exemplified include simple (without replacement), with replacement, systematic, stratified, and proportional stratification sample, random sampling, ranuni source 2
45 SAS as a Utility Language: Using SAS for Solving Little Problems Gary E. Schlegelmilch SAS, from its very conception, was intended to provide methods for determining and handling statistics cleanly, clearly, and effectively. It does so with speed, strength, and versatility. However, the tools that effect its versatility lend themselves with equal ease to nonstatistical projects as well. Small day-to-day tasks - impromptu reports, quick reviews of data, and other small utility programs - are handled in SAS quickly and efficiently. Because SAS provides minimal data field definition, a modular approach in the DATA STEP, and clearly defined processes in the PROC STEP, small tasks can be programmed with a minimum of effort. In addition, the turnaround time will frequently be less than the same routine written with a compiled/linked language. When time is of the essence, SAS may very well be the best candidate proc step, sample, data step source 6
46 SAS IML Code To Calculate an Upper Confidence Limit for Multivariate Statistical Distance Margaret Connolly,
Wyeth Lederle Vaccines,
Pearl River
Pharmaceutical industry manufacturing process changes require documentation of similarity between products of pre-change and post-change processes. One test is tablet rate of dissolution: twelve tablets from each batch are dissolved under controlled conditions. The percent of tablet strength in solution from each tablet is measured at several time-points (5, 10, 15, 20 minutes). For highly variable products, similarity between profiles may be demonstrated by showing that the bounds on a confidence interval about the difference between lots are within the typical coefficient of variation for the original lot (e.g. within +/- 20%). The multivariate confidence interval for a profile with four time points is an 'ellipse' in four dimensions. To find the 'upper bound' in multivariate space is accomplished by Newton-Raphson iterations on a system of equations to define the confidence region and optimize distance degrees of freedom, clinical endpoint source 6
47 SAS Macros Are the Cure for Quality Control Pains Implementing A Macro Driven Evaluation of Survey Data for Quality Control Gary M. McQuown Performing Quality Control (QC) on survey data is an essential and challenging, but often under appreciated task. Differences such as survey length, skip patterns, variable ranges, and questionnaire length add to the difficulty of the task. Fortunately, prudent use of macros can reduce the chore while improving accuracy. This paper presents the macros and techniques used to perform quality control on the 1998 Survey of Small Business Finances data for the Board of Governors of the Federal Reserve. The macros and routines described are used to perform various evaluations and cleaning procedures including the following: 1) Determine validity of each response. 2) Accommodate exceptions and missing values. 3) Differentiate between legitimate skips, conditional skips, and inappropriate skips. 4) Report errors in an appropriate format. The macros and routines presented may be useful for anyone who wishes to improve upon their QC procedures or performs survey related work macro variable, %if-%then-%else, macro quoting function, missing value, macro loop, if-then-else, quality control, macro definition, response variable source 7
48 SAS Programming and HEDIS: An Introductory Overview Christopher Plummer The Health Plan Employer Data and Information Set, or HEDIS , a product of the National Committee for Quality Assurance (NCQA), "is a set of standardized performance measures designed to ensure that purchasers and consumers have the information they need to reliably compare the performance of managed health care plans. The performance measures in HEDIS are related to many significant public health issues such as cancer, heart disease, smoking, asthma and diabetes." (NCQA, proc step, proc sql, proc download, retain, by group processing source 9
49 SAS Software Macros - You're Only Limited by Your Imagination Peter Parker SAS Macros have many uses besides passing parameter values through programs. You can craft elaborate automated queries, write more user-friendly applications, and create maintainable code. I am going to demonstrate four advanced uses for SAS Macros: 1. User Interface- Macro Windows Using simple window forms, you can create queries to produce user-customized macro variable, macro definition, proc sort, sample, macro facility, proc step, data step source 8
50 Static SAS Web Publishing (SAS/IntrNet @ Social Work) Roderick A. Rose This course is for experienced SAS programmers who want to learn static SAS web publishing using basic SAS commands, such as DATA statements and macros, and also with the Output Delivery System (ODS). Taking this class requires no previous HTML programming skills, nor does it require experience with ODS. It is assumed that the user has SAS programming experience and some familiarity with Windows 95. During the class, the student will download programs and data sets and "learn-by-doing" by authoring a web page, using FTP and building SAS programs. This class ser ves primarily as an overview so as to familiarize students with the options available. Further exploration of one or more web publishing options in SAS will require turning to other sources. The Web Formatting Tools and ODS are very simple to use to convert your existing libraries of SAS programs, such that they can produce static web output. The advantages of static SAS web publishing are numerous ods html, put statement, proc print source 4
51 Table Lookup via Direct Addressing: Key-Indexing, Bitmapping, Hashing Paul M. Dorfman In SAS data processing, searching is one of the most frequent operations. Base SAS offers a rich collection of built-in searching techniques. MERGE, SQL joins, formats, SAS indexes - all serve the purpose of the table lookup. For do-it-yourselfers, SAS offers arrays - directly addressable data structures suited for implementing just about any searching algorithm. An array-based lookup is not a ready-to-go food: It has to be cooked at home. However, it results in dishes digested by the computer more easily, programmatically more nutritious, and with less CPU time going into the wastebasket. In this paper, SAS arrays are used to organize the fastest class of in-memory data lookups - direct addressing. Three such techniques - key-indexing, bitmapping, and hashing - are considered in their logical sequence using a real-life example of matching data files by a common key hash table, key, missing value, memory usage, temporary array, sample, proc sql, array, character variable, lookup, do loop, conditional do loop, data wrangling, mod, sas programmer, proc freq, dataset, data merging, hashing function source 11
52 Teaching SAS Web Publishing in a Web Environment Roderick A. Rose,
Sally S. Muller
Experienced SAS users gain a more comprehensive understanding of static SAS web publishing when they are taught in an interactive classroom setting with a web page as the primary instructional device. Web-based instruction goes beyond conventional instructional methods, such as overheads or computer-based slide presentations, offering a full range of instructional materials and references, and improved interactive demonstrations and self- tutorials of SAS web publishing. The authors developed a website, on which HTML, FTP, DATA _NULL_, the HTML Formatting Macros and the Output Delivery System (HTML destination) are all seamlessly integrated into one interactive session. This website employs cascading style sheets and client-side Javascript, providing the instructor with a set of interactive elements using a fully portable instructional aid that permits the instruction on any computer with an Internet connection and browser output delivery system, put statement source 4
53 Ten Things You Should Know About PROC FORMAT Jack N. Shoemaker The SAS system shares many features with other programming languages and reporting packages. The programming logic found in the ubiquitous DATA STEP provides the mechanisms for assignment, iteration, and logical branching which rest at the core of any procedural language. Analytic data displays, like the humble frequency cross- tabulation produced by various PROC FREQ, may be replicated with varying degrees of success using any number of other products. PROC FORMAT is another matter. Somewhat like an enumerated data type; somewhat like a normalized and indexed reference table; it really has no exact analog in these other products and packages. There's a lot you can do with PROC FORMAT. And, there's a lot to know about PROC FORMAT. The aim of this paper is to provide insight on at least ten of those things which you should know proc format, proc step source 5
54 Test Development: Ten Steps to a Valid and Reliable Certification Exam Linda Althouse The intent of a certification program is to evaluate the knowledge and skills of practitioners seeking a credential to ensure a desired level of competence. For certification examinations to serve their intended goal, the examination must assess the performance that the scores are intended to represent. Subsequently, each item on the examination must serve to assess the performance or knowledge being measured by the examination. The purpose of this paper is to describe the steps necessary to develop a valid and reliable certification examination which would fulfill the goal of a certification program sample, phase i source 8
55 The Dead Go Live! Injury Mortality Data via a Web-based Application Steve James How many teenagers died from gunshot wounds last year? What's the leading cause of death for people in my age group? While death and dying are not normally favorite topics at the dinner table, there are many who take great interest in the answers to questions like these. Public health scientists, researchers and policy makers use this information to determine intervention strategies to reduce injury in the United States. Until recently, most requests to the CDC for data such as this were fulfilled through static web pages and from ad-hoc Prevention unveiled a web-based application to provide these data via the internet. This paper will describe the application and some of the design considerations used when creating the application bar chart, proc freq source 2
56 The Power of Hybrid OLAP in a Multidimensional World Ann Weinberger Version 8 of the SAS System brings powerful new features for managing a Hybrid OLAP (HOLAP) or Distributed Multidimensional Data environment. The HOLAP component of the SAS/MDDB Server software enables you to include SAS Multidimensional databases (MDDB), SAS files, and relational (RDBMS) databases into a single, powerful OLAP reporting environment. Support for HOLAP data groups is fully integrated into a number of SAS Institute's OLAP solutions star schema, structured data source 5
57 The Power of PROC DATASETS Lisa M. Davis The DATASETS procedure can be used to do many functions that are normally done within a SAS DATA STEP more efficiently. For example: Labeling and renaming variables Concatenating and indexing datasets This paper will demonstrate the power of the PROC DATASETS procedure and the enhancements made in V8. This paper is intended for beginning to intermediate SAS users. PROC DATASETS is a powerful procedure that everyone needs to know dataset, delete source 10
58 The Use of SAS in Revenue Management and Related Applications at ANC Rental Corporation Chi Ip,
ANC Rental,
Fort Lauderdale
ANC Rental Corporation is an independent company recently spun off from AutoNation, Inc. and comprises Alamo Rent A Car, National Car Rental, and CarTemps USA. In this talk we will present how SAS reports and analytical tools are used in support of revenue management at ANC. We will also discuss other related applications such as datamining and city clustering that utilize SAS revenue management, data mining source 2
59 The Variable List Wildcard Character Malachy J. Foley A very simple and powerful, yet relatively unknown, programming technique is the use of a wildcard character in variable lists. The wildcard is the colon. This paper shows how to use the technique, when it works, and when it does not work. Finally, this article presents code to make the wildcard work in many cases variable list, put statement, proc step, drop statement, proc contents, proc print source 4
60 Think Thin 2-D: "Reduced Structure" Database Architecture Sigurd W. Hermansen In the old days, even before MVS and SAS , complex record structures ruled tape libraries. When large disk and memory buffers came on the scene, wide "flat file" structures put all of the data related to a single key value in fields of one record, and variable names replaced pointers to physical locations in a file. Big disks and E.F. Codd later inspired a relational database revolution that replaced physical files with basic logical relations and, in the programming environment, pointers to fields with relation.column references. Database systems have evolved steadily toward more abstract but simpler structures. What next? Object-oriented database systems and "data where?houses" regress in the direction of complex structures and file systems. In contrast, a reduced structure database begins with the current standard, a true relational database, and restructures it into a simpler and more abstract form data warehouse, proc sql, key, relational database, proc step, create table, create view, fact table, data standard, view source 5
61 Underlying Construct Analysis (UCA): Where Individual Systems End and Human Systems Begin Alvin L. Killough The association of antecedents to performance outcomes, including individual behaviors, interfaces and the environments in which engagements are performed and sustained as a behavioral system is certainly implied, but has not been a primary focus of traditional data mining techniques. The current paper introduces the concept of Underlying Construct Analysis (UCA) using techniques associated with confirmatory factor analysis, and demonstrates their utility for theory development. We provide step-by-step instructions for data mining beyond observable variables, to include larger units of behavior frameworks and demonstrate using a case example, unique variance associated with two distinct populations in a large data set (Survey of Parents and Children, 1990), populations that were not defined prior to the UCA sample, covariance, data mining, correlation, proc step, factor analysis, sample size, proc cancorr, factor loading, latent variable, null hypothesis, proc corr, likelihood function, missing value, proc calis, outlier source 8
62 Using Data Mining Technology to Identify and Prioritize Emerging Opportunities for Mortgage Lending to Homeownership-Deficient Communities Mortgage Lending Advances in technology are fueling substantial consolidation in both mortgage origination and servicing. Internet lending is growing, and on-line companies and distribution channels will proliferate. Demographic and economic trends are driving changes in customer mix. Amid all of this change, there are some constants. One such constant is the recognition that in order for communities to realize their full potential, it is advantageous for as many residents as possible to become equity stakeholders. Homeownership affords the owner(s) the promise of capital appreciation, along with a sense of pride and fulfillment. There is an ever-growing need to bring more low/moderate income & minority households into the home-buying process. To compete successfully, lenders will need to utilize data mining techniques to develop powerful models that can identify markets that are both under-tapped and also present profitable opportunities neural network, regression analysis, predictor variable, response variable, data cleaning, data mining, logistic regression, bootstrap, logistic distribution, data visualization, correlation, sample, nominal variable, stepwise selection source 10
63 Using DDE with Microsoft Excel and SAS to Collect Data from Hundreds of Users Russell E. Denslow,
Yan Li
A process is demonstrated in this paper to automatically collect data from nearly 900 users using DDE with Microsoft EXCEL and SAS. SAS will populate (using DDE) an existing file "template" (EXCEL spreadsheet) with historical data, name and save it to the appropriate directory (based on reporting structure). SAS determines the hierarchical reporting structure from a "work.control" dataset and builds the corresponding directory structure (using %sysexec). These files can be distributed to the needed participants for their input and updating. Upon collection, these "updated" files will be stored in a similar "reporting" directory structure. SAS will then determine the contents of each directory (using %sysexec) and cycle the file names through a macro-loop. The contents of the file will be collected using DDE and appended to a SAS dataset excel, dataset source 6
64 Using JMP Version 4 for Time Series Analysis William R. Gjertsen Three examples of time series will be illustrated. One is the classical airline passenger demand data with definite seasonal variation. The other two will be daily closing price data from a steady growth series (CSCO) and an accelerated growth series (CIEN) time series analysis, density plot, confidence interval, excel source 10
65 Using Proc Compare for Data Reliability Sharon W. Stroud Data validation and reliability is a critical step in any research project. Reliability refers to the repeatability or reproducibility of data collection. PROC COMPARE can be used to quantitatively measure reliability. Using EXCEL as a data conversion tool for SAS output we can measure variable specific reliability as well proc compare, excel, proc step, dataset, sas output source 2
66 Using SAS to Perform Robust I-Sample Analysis of Means Type Randomization Tests for Variances Peter S. Wludyka A SAS macro for performing Analysis of Means (ANOM) type randomization tests for testing the equality of I variances is presented. Randomization techniques for testing statistical hypotheses can be used when parametric tests are inappropriate. Suppose that I independent samples have been collected. Randomization tests are based on shuffles or rearrangements of the (combined) sample. Putting each of the I samples "in a bowl" forms the combined sample. Drawing samples "from the bowl" forms a shuffle. Shuffles can be made with replacement (bootstrap shuffling) or without replacement (permutation shuffling). The tests that are presented offer two advantages. They are robust to non-normality and they allow the user to graphically present the results via a decision chart similar to a Shewhart control chart. The decision chart facilitates easy assessment of both statistical and practical significance. Selected sample, proc step, randomization, proc print, permutation test, standard deviation, proc means, monte carlo, bootstrap, macro definition source 6
67 Using SAS to Write SAS - Automate Your Programming Tasks Pamela L. Reading It doesn't always occur to a programmer to use SAS to write SAS code, but it can be a great time-saver. It's a reliable and efficient method for creating long, repetitive pieces of SAS code in which a similar set of operations is performed on a large number of variables. Once the code- generating program is functioning, the production code can be regenerated as needed and used as INCLUDE files in standardized programs. In a Windows environment, EXCEL spreadsheets are a convenient input format for the required data. The example presented in this paper is based on SAS Version 6.12 under Windows 98, but the principles presented apply to all operating systems. The paper addresses base SAS and the audience should be comfortable with basic DATA STEP operations. excel, sample source 5
68 Using SAS/AF to Create Applications for Looking Up and Coding Adverse Events and Generic Drug Names in Clinical Trials Karen B. Fowler,
Emily A. Mixon
Most clinical trials collect medical adverse events (AEs) and usage of medications from participants during the study. Study personnel record this information and corresponding codes onto case report forms for data entry into study databases. The recording of specific medical terms for AEs and/or generic names of medications usually requires reviewing bulky manuals. We developed two applications that allow the user to see a list of medical terms or drug names and their respective codes at one time and the ability to subset the list of terms using either the medical term or drug name. Both applications use a Toolbar, an Extended Text Entry field and a Data Table combined to allow the user to display a list of medical terms or drug names and codes. The Data Table displays a subset of the data based on the selected letter on the Toolbar dataset, where statement, concomitant medications, adverse events, clinical trial source 3
69 Using SAS/IntrNet to Track the Impact of Welfare Reform in North Carolina Dean F. Duncan,
Kimberly A. Flair,
Rosemary D. Hallberg,
Sally S. Muller
In the fall of 1998, the Jordan Institute for Families at the School of Social Work at the University of North Carolina at Chapel Hill (UNC-CH) under contract with the North Carolina Division of Social Services (NCDSS), began developing a web site to disseminate information contained in multiple longitudinal databases of the Work First program in North Carolina. The databases, created in SAS on a UNIX based system, contain data on close to 340,000 families and 800,000 individuals. This paper describes some of the challenges of creating a dynamic and low maintenance web site using the power and versatility of the SAS system. In addition, the authors discuss the transition from SAS 6.12 with SAS/INTRNET Version 1.2 to SAS 7 with SAS/INTRNET Version 2.0. This paper is intended for beginning SAS application developers to help them avoid some problems and build a customized dynamic SAS web site macro variable, excel, %if-%then-%else source 3
70 Using the SAS System and QSR NUD*IST for qualitative data analysis (QDA) Robert G. Stewart With the advent of mixed-method inquiry (i.e., the combining of procedures meant to gather and analyze different information), quantitatively imbued SAS users will eventually encounter (if not already) some raw (uncoded) form of qualitative data (e.g., texts, images, sounds). In this paper, the requirements and capabilities of the SAS System and QSR NUD*IST 4 (Nonnumerical Unstructured Data Indexing Searching and Theorizing by Qualitative Solutions and Research [called "N4" for short]) regarding such data are explored. The overriding objective is to assist SAS users at all levels in making effective decisions regarding qualitative data analysis (QDA) data science, proc freq source 6
71 Using The SAS System To Examine The Effect Of Augmentation On The Inter-Rater Reliability Of Holistic Ratings Jim Penny A two-stage process by which an holistic rubric is applied to the assessment of open-ended items, such as writing samples, is defined. The first stage involves scoring a performance by the assignment of an integer rating that is congruent with the proficiency level that is exhibited in the performance. The second stage is the subsequent assignment by the rater of an augmentation that indicates whether or not the writing competency reflected in the paper is a bit higher or lower than the competency level reflected in the benchmark paper for the given proficiency level. If the rater feels that the paper represents benchmark proficiency for the given level, no augmentation is assigned to the rating. The results of this study indicate that the use of rating augmentation can improve the inter- rater reliability of holistic assessments, as indicated by generalizability phi coefficients, correlation coefficients, and percent agreement indices correlation, sample, standard deviation source 6
72 Using The SAS System To Examine The Reliability Of The Retrospective Measure Of Change Jim Penny Using 2 data sets for exploratory and confirmatory purposes, the psychometric characteristics of the retrospective measure of change are examined using a theoretical framework. This framework was derived from prior studies of change scores that indicate the reliab ility of such scores is a function of (1) the reliability of the pre- and post-measures, (2) the variance of the pre- and post-measures, and (3) the correlation of the pre- and post-measures. In the exploratory study, the retrospective change score is found to be a reliable measure, though the change score is negatively correlated with the pre-measure. The reliability of this change score is most strongly associated with the reliab ility of the pre- and post- measures. Moreover, evidence is presented that suggests that the raters are not estimating the pre- and post-measures as expected. Instead, it appears from these data that the raters are estimating the post-measure and the gain score correlation, standard deviation source 6
73 Walk Our Children to School: An Internet Data Management Application Carol A. Martell This paper describes a complete data management and query system wherein data is collected, maintained and dynamically surfaced on the web. The system integrates SAS/INTRNET Application Dispatcher, htmSQL, the email facility, and an ODS HTML imagemap. Even though all data is manually screened prior to release, the manual effort is minimal and the people screening and maintaining data are not SAS users. Good, old- fashioned data management experience teamed up with common sense can use the power of SAS to take care of the scene behind the web pages proc sql, macro variable, dataset source 5
74 Web-Application Bar Charts without SAS/GRAPH Steve James A picture is worth 1000 words it's said. And while that may be true, producing a picture instead of words can sometimes be 1000 times more difficult, particularly if you're not familiar with SAS/GRAPH and Annotate. And while the Internet is a great medium for graphics, producing them can be a pain. Anything that would make the task more simple would be welcomed. By using the WIDTH= and HEIGHT= options on an HTML image tag, you can use a one-pixel GIF file to create an attractive bar chart without any SAS/GRAPH or Annotate. This paper describe how bar chart, data visualization source 4
75 Word Pro - JADE_OleDB.lwp S. David Riba Now that you have your data warehoused, how do you share that information with others who need access to it? SAS Ò software provides a variety of tools to access and retrieve data from multidimensional databases (MDDBs). However, MDDBs are not accessible to non-SAS users in your organization. Until now. Starting with Version 7 of the SAS System, OLE DB can be used to access the information stored in SAS MDDBs and CFO Vision FDBs. OLE DB can be used to access the information stored in ANY multidimensional database that is OLE DB compliant. Starting with the release of Windows 2000 Professional, OLE DB w ill be installed as part of the operating system. In Microsoft Office 2000, all member applications will be OLE DB consumers. The same is true for Lotus SmartSuite member applications proc sql, data mining, dataset, structured data, relational database, excel source 8
76 Word Pro - Sugi_Debug.lwp S. David Riba All SAS /c157 programmers, no matter if they are beginners or experienced gurus, share the need to debug their programs. Many techniques have been suggested over the years to solve the problem of debugging DATA STEP logic. Until now SAS programmers have never been able to interactively watch the DATA STEP execute and debug their logic as it executes. Introduced in Release 6.11 of SAS, the DATA STEP Debugger is part of Base SAS software. It is an interactive tool that allows the SAS user the ab ility to watch and control DATA STEP execution. The DATA STEP Debugger can be used to: /c118watch program logic execute /c118examine variable values as they change /c118repeat program statements /c118jump to other sections of the DATA STEP /c118modify DO loops interactively /c118test for "dead" code /c118give commands /c118observe the results interactively The DATA STEP Debugger is a very useful tool, whether you are a Beginning SAS Programmer or a SAS veteran sas log, sas base, options statement, if-then-else, end, macro variable, macro definition source 9
77 XML and SAS: An Advanced Tutorial Gregory S. Barnes Nelson One of the goals for SAS applications developers has been to develop three-tier and n-tier applications where the application logic (business rules) is separate from the data, which, in turn, is isolated from the user interface. In a previous paper (Barnes Nelson, 1999)1 we discussed how to implement this logic separation using the SAS Component Language. This paper extends that line of thinking by introducing SAS developers to XML. eXtensible Markup Language, or XML, is a protocol of sorts that can be described as a technique for separating data from its presentation. In this paper, we will discuss XML in the context of SAS applications and how it can be used in the preparation and presentation of data. We will explore some of the features of XML that makes it a good partner for SAS-based applications dictionary tables, sas programmer source 10
78 You Can Do THAT with SAS Software? Using the socket access method to unite SAS with the Internet David L. Ward,
Bound Brook
The addition of the socket access method to version 6.11 of the SAS System provided the Base, Macro, and SCL languages with a simple way to use the standard TCP/IP network protocol. TCP/IP is the protocol that is used to access virtually all types of network servers, like FTP, Telnet, Web, etc. In the years since version 6.11 was released, the Internet has grown exponentially and become a vital part of virtually all technology-based businesses. Using the Socket Access Method, the SAS system can interact with the servers that make up the Internet, as well as become a server itself. This paper will present simple implementations of the following TCP/IP protocols and discuss practical uses for each: HTTP (Hypertext Transfer Protocol), SMTP (Simple Mail Transfer Protocol), POP3 (Post Office Protocol), FTP (File Transfer Protocol), Telnet, and SAS to SAS client/server processing data step, sas log, http, macro variable source 6
79 You CAN Get There from Here (and Back Again): Adding Hot-link Drill-down Capabilities to ODS HTML Output Ray Pass The SAS Output Delivery System (ODS) can be used to create HTML pages for publishing on the Internet or an Intranet. Right out of the box (and the box is FREE too! - with Base SAS), ODS can be used to create either one page per procedure output, or a collection of HTML pages per procedure. ODS does provide within-procedure HTML navigability, but there is no wholesale provision provided for inter-procedure output linking By using simple SAS MACRO processing combined with the manipulation of TITLE statements, basic data set variable values and values of variables used as CLASS variables in TABULATE procedures, you can create whole systems of hot-linked pages with almost full drill-down capabilities ods html, title statement, output delivery system, macro variable, sas output, proc step, create table, proc tabulate, macro definition, %if-%then-%else source 11
80 You Could Look It Up: An Introduction to SASHELP Dictionary Views Michael L. Davis Ever wonder what titles were already set in a batch SAS session? Need a list of the members in a library so your macro can automatically hack at each one? Curious as to how many observations are in that data set without running a procedure or DATA STEP? Want to see what macro variables already exist? Anytime that one has a question about what is going on in their SAS session, they can answer it the same way that SAS itself does the task... they can look it up in the SASHELP dictionary views. This presentation is an introduction to all those views automatically created by the SAS System and found in the SASHELP libref and prefixed with a "V". The dictionary views track items and their attributes for features such as catalogs, data set variables (columns), external files, indices, macro variables, data set members, titles, portable system options, and of course, views. The focus of the presentation is to illustrate how the dictionary views can be used in common situations dictionary tables, proc sql, macro variable, proc step, where statement, catalog entry, sample, call symput, create view, relational database, create table, order by, options statement, macro definition, sas programmer, excel source 10

Back to Conf go 2001 go 1999

This site serves as a convenient hosting location and does not work as a publisher. All copyrights belong to their respective owners.

The information on this site is provided for general reference purposes only. Whilst every effort is made to ensure that the site is up to date and accurate, no warrant, nor any responsibility or liability for, the accuracy or completeness of the content or for any loss which may arise from reliance on information contained in this site is provided. Links to other sites are provided for your convenience but no responsibility or liability for the content of those sites or of any external site which links to this site is accepted. References to any specific commercial product, process, service, or corporation are also for information only, and do not constitute endorsement, recommendation or favoring.

SAS is a registered trademark of SAS Institute Inc. SAS, Statistical Analysis System, and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration.