Making Sense of Proc Tabulate Jonas V. Bilenas, JP Morgan Chase, New York, NY
|
|
- Pamela Houston
- 5 years ago
- Views:
Transcription
1 Makig Sese of Proc Tabulate Joas V. Bileas JP Morga Chase New York NY ABSTRACT The TABULATE procedure i SAS provides a flexible platform to geerate tabular reports. May begiig SAS programmers have a difficult time uderstadig the sytax of PROC TABULATE ad as a result ted to avoid usig the procedure. This tutorial will explai the sytax of PROC TABULATE for the begiig programmer ad offer a framework for geeratig a report usig PROC TABULATE. The data used i this paper represets simulated cosumer credit card usage data ad the code was developed usig versio 6.12 of SAS. INTRODUCTION PROC TABULATE is based o a table geeratio code developed by the U.S. Departmet of Labor. The sytax does ot resemble other SAS PROCS ad will appear to be cryptic to the begiig SAS programmer. To make matters worse lookig at sample TABULATE code provides o clue for the ovice TABULATE user. Sample code ofte looks like log mathematical equatios that make o sese to the idividual learig TABULATE. Frustratio ofte leads to dismissal of the procedure. The TABULATE procedure is so flexible that there is o sigle correct way of geeratig tabular reports. The method I propose i this paper is the way I have leared TABULATE ad still use it to geerate custom tabular reports. I teach this method to all ew users of TABULATE ad fid it helps them grasp the procedure. Here are my 7 steps to geerate tabular reports usig PROC TABULATE: 1. Do t paic. Relax ad take a few meditative breaths. 2. Desig the report o paper. The desig of the TABULATE report should be first specified o paper. The report desig that is developed o paper will guide the code geereatio. 3. Geerate the iitial test code. Retur to the computer ad start codig the desig that you have formulated o paper. There are a few rules of TABULATE sytax that will geerate the report ad we will review these here. 4. Test retest ad verify usig a small sample. Test the iitial code usig a small umber of observatios. Use a radom sample or use a OBS= optio to test the sytax. TABULATE is tricky ad you may have to ru a few versios of your code ad possibly iclude some DATA preparatio. Verify that the results make sese. Look at your data ad report! Do t assume the report is correct just because you have o sytax errors. At this step do t be too cocered with report appearace. Verify that the results are correct. 5. Clea up the appearace of the report. Oce the code has geerated a report that makes sese clea up the output of the report usig a few tricks we will review here. Also cosider addig additioal summaries ad or statistics to make the report eve more useful. This may be difficult to do if the report has already bee specified but you ca recommed chages to the specificatios. 6. Ru code with OBS=MAX. 7. Sit back smile ad be proud of your report. Your maager may be cofused at how you were able to produce the report without sortig the data or without ay spreadsheet cruchig. He/She may be cofused at your code but the you ca take him/her through the 7 steps of TABULATE harmoy. STEP 1 DON T PANIC SAS code geeratio ca be frustratig to begiig SAS users. To begi a TABULATE code geeratio get ito a relaxed ad calm mode. The desig ad code may take a few iteratios but that should be expected with TABULATE. Table geeratio ad formattig will take a bit of code work ad re-work. It is to be expected that the first TABULATE code geerated is ot the fial versio. STEP 2 DESIGN THE REPORT ON PAPER The structure of the report must first be specified i order to geerate the TABULATE code that will produce the report. Desigig the report o paper will help you idetify which variables to use how variables are defied i TABULATE ad what summary iformatio is required. As a illustratio for this paper take a simple example from a accout maagemet experimet i cosumer credit. A treatmet is applied to existig accouts (test group with a hold out sample (cotrol group set aside to compare agaist. The desig sample also icludes a factor for credit score levels (low risk medium risk high risk that are recorded at time of experimetatio. After the test is completed ad results are available maagemet is lookig for some quick reports to read results. The first report specified is a simple report that could be geerated usig PROC FREQ but we will code it up i TABULATE sice maagemet still has ot fialized report desig. Usig PROC TABULATE will allow us to modify the code to accommodate further desig specificatios. The iitial desig o paper look as follows: Treatmet Group Total Accouts Deliquet Accouts Test Cotrol All Variables we have i our SAS DATASET are: : 1 if accout is deliquet 0 if ot. : 1 if i test group 0 if i cotrol SCORE: Iteger credit score with values specifyig risk level: = high risk = medium risk = low risk To proceed to the ext step we have to familiarize ourselves with some sytax rules of PROC TABULATE. STEP 3 GENERATE THE INITAIL CODE There are few sytax rules that oe has to get familiar with i order to use PROC TABULATE. The first step is to idetify if variables are classified as CLASS variables or VAR variables. CLASS variables are those that are categorical ad/or have levels that you wish to geerate summaries for each level. CLASS variables ca be either umeric or character.
2 VAR variables idetify aalysis variables that you wish to report statistics for. A variable caot be listed as both a CLASS ad a VAR variable i the TABULATE procedure. A VAR statemet is ot required i the TABULATE procedure. Table dimesios are specified i the TABLE statemet of PROC TABULATE. Table dimesios are separated by commas. This is differet from PROC FREQ where a asterisk is used to separate table dimesios. If the TABLE statemet does ot iclude ay commas the resultig report will be a sigle row with multiple colum output. A TABLE statemet with oe comma produces a row by colum report with the row dimesio specified first. The maximum umber of commas is 3 producig a page by row by colum report. The restrictio o the umber of commas does ot limit the umber of CLASS variables you ca iclude i your report. Further crossig of CLASS variables ca be itroduced with a asterisk. The asterisk is also used to specify VAR variables statistical summaries ad/or format of output. Statistical summaries are similar to the oes available i PROC MEANS. These iclude sums meas umber of records etc. that oe sees i other PROCS. Versio 6.12 does ot iclude percetile statistics but these are available i Versio 8. The TABULATE procedure also icludes a PCTN ad a PCTSUM statistical summary. Sytax may be difficult to grasp for these summaries providig more reaso to highlight the importace of STEP 4 (test ad retest. PCTN calculates the percet of a frequecy ad PCTSUM calculates the percet of a SUM. These require deomiator defiitios that are specified betwee brackets <>. So ow we have to worry about CLASS ad VAR variables o top of cosiderig where to use commas asterisks ad brackets. Ad to make it eve more cofusig we ca eve iclude a = withi the body of the TABLE statemet to specify labels to be prited. Wow o woder TABULATE code ca look cryptic. After much practice these will become secod ature. I the meatime follow these guidelies: CLASS: Used for categorical variables or variables for which you wat to see summaries for each value of the variable. Default statistic applied to a class variable if oe provided is N (umber of observatios. A PCTN statistic ca also be specified to produce frequecy percets. VAR : Used to specify aalysis variables that you wat geerate statistics for each level of CLASS variables. The default statistic if oe specifies is SUM. : Used for dimesio splits page row colum. Dimesio splits do ot have to be limited to CLASS variables. You ca for example have a CLASS dimesio as your row dimesio ad a VAR variable as your colum dimesio. *: Use to specify ay of the followig: o Aother CLASS variable Split o A VAR variable o A statistic o A Format <>: Specify the deomiator CLASS dimesios for PCTN or to specify deomiator VAR variable whe usig the PCTSUM statistic. = For labels specificatio that will improve the readability of the report. Let s try some code usig our hypothetical example. Both variables ca be specified as CLASS variables. However we may wat to report some additioal statistics o our variable such as a bad rate or maybe eve a good to bad odds ratio. Iitial code is icluded here: proc tabulate data=esug01.data formchar= class test var bad table test bad ru Note that the table statemet ca be listed o oe lie but listig variables ad dimesios o separate lies ca aide i debuggig of code. Output form this code ad modificatios are reviewed i Step 4 below (ote: the formchar= (11 spaces optio removes boxes aroud table cells makig it readable for those without SAS MONOSPACE fots. STEP 4 RE AND VERIFY USING A SMALL SAMPLE This step ofte requires a umber of iteratios ad tests util the table geerates results that we expect. It may take a umber of rus to get a table that has all the statistics that oe requires. Durig this step we ca make chages i the table output ad we may wish to redraw each modificatio o paper to get a clear picture of how to proceed i code geeratio. Output from the ru is: N SUM Not bad but we would like row totals o the report as well. PROC TABULATE has a ALL keyword that we ca provide totals for all levels of the CLASS variable. The code is modified alog with the output: proc tabulate data=esug01.data formchar= class test var bad table test all bad ru N SUM ALL Lookig better but ca we add a row percet for accout totals ad a bad rate statistic (bad total/n?
3 The PCTN statistic geerates the required row percet. This statistic also requires a deomiator defiitio that is placed iside the <>. Settig up this defiitio ca be complicated ad may require a umber of iteratios to get the correct output. The values etered iside the <> are class variables that make up the dimesio that oe wishes to see a percetage. The row dimesio is required to see row percets ad colum dimesios are required to see a colum percets. Souds cofusig so keep testig util the umbers look correct. If you expect row percets verify that the umbers reported are ideed row percets. Use the PCTSUM statistic to get the bad rates (MEAN ca also geerate bad rates as well for this example but I have always used the PCTSUM calculatio. We eed to specify the VAR variable that idetifies the deomiator. This may require some DATA step preparatio if the deomiator variable is ot icluded i the DATA. Bad Rate is defied as: (sum of bads/(sum of all accouts. The code required for these chages are: data stuff set esug01.data oa=1 proc tabulate data=stuff oseps formchar= class test var bad oa table test all pct<test all> bad bad*pctsum<oa> /rts=10 ru This code also icludes a NOSEPS optio. This optio prevets separate lies (or lie breaks betwee levels of row CLASS variables. I also icluded a RTS= optio for the TABLE statemet. TABULATE reserves a quarter of the page for the row dimesio labels. The RTS=10 specifies that oly 10 spaces are to be used to geerate the width of the row dimesio (icludig vertical separatio lies. Output is listed: N PCTN SUM PCTSUM ALL STEP 5 CLEAN UP THE APPEARANCE OF THE REPORT After the report has bee validated we ca clea up the report presetatio. There are a umber of tricks to make the report look professioal ad they are described with examples. Thigs we would like to chage i the above report are: 1. More descriptive labels that will make the report easier to read. 2. Specific formats for the umeric output. 3. Chage the levels of the CLASS variable to read ad CONTROL rather tha umeric values of 0 ad List the Test level before the Cotrol level. These chages are easily added to the code. Cotiue to work with small sample datasets to miimize ru time ad computer costs. The code ad output is listed followed by a explaatio of the methods used to format the output: proc format value test 0 = 'Cotrol' 1 = ' Test' picture p7r (roud = '009.00%' picture p6r (roud = '09.99%' proc tabulate data=stuff oseps formchar= order=formated class test var bad oa format test test. table test='' bad='number of Deliquet Accouts'*sum=' '*f=comma10. bad='bad Rate '* pctsum<oa>=' '*f=p6r. /rts=17 ru Number of Row Number of Bad Accouts Percet Deliquet Rate Test % % Cotrol % % Total % % The output looks much eater ad is ready to be placed i productio. The codig tricks used are summarized: 1. Use PROC FORMAT to assig values to CLASS variables if required. Some of the format labels ca iclude spaces so that results ca be ordered by FORMAT labels. Specify ORDER=FORMATED optio i TABULATE to order output by FORMATED labels as opposed to ordered by data values. 2. Set up a PICTURE FORMAT to prit TABULATE PCTN ad PCTSUM s with trailig % sigs. Usig a percet format withi TABULATE will ot work sice the values are ot outputted as proportios. 3. Specify specific formats for statistics withi the TABLE statemet usig *F=format_ame. 4. Specify formats for CLASS variables with a FORMAT assigmet statemet i PROC TABULATE. 5. Assig labels after variables ad statistics i the TABLE statemet with the use of = specificatio. If you do ot wat a default label prited (i.e. SUM PCTSUM us a ull label (=. 6. Adjust label spaces ad format widths to geerate a report that is presetable. Tabulate will split labels depedig o width of format. If format is too short the words cotaied i your labels may split before the word ed. Keep testig with small datasets by adjustig format widths ad TABLE labels util the desired output is obtaied. Addig additioal CLASS variables ca be added as page breaks or cross breaks withi other CLASS variables. Here is some code ad output for differet possibilities we have available whe we add aother CLASS variable. For this example we have the credit score that we ca set up levels for by use of PROC FORMAT ad specify the variable as a CLASS variable i the TABLE statemet of PROC TABULATE. Use of PROC FORMAT is more desirable tha
4 creatig levels i a DATA step sice it is faster requires o additioal DATA geeratio or modificatio ad is less likely to result i assigmet errors. The first example rus risk level as a page dimesio. Output is show after the code. proc format value test 0 = 'Cotrol' 1 = ' Test' value score = ' High ' = ' Medium' 701-high = 'Low' picture p7r (roud = '009.00%' picture p6r (roud = '09.99%' proc tabulate data=stuff oseps order=formatted formchar= class test score var bad oa format test test. score score. table score='risk = ' all='all Risk Levels' test='' bad='number of Deliquet Accouts' *sum=' '*f=comma10. bad='bad Rate '*pctsum<oa>=' '*f=p6r. /box=_page_ rts=17 misstext=' ' codese ru OUTPUT: 1. BOX=_PAGE_ prits out the value of the page dimesio i the upper left had corer box of the table. 2. MISSTEXT= sets missig text to the text specified i the label. I this case the ull label was specified so that if the report results i a missig value a blak is prited rather tha SAS MISSING values. 3. CONDENSE optio causes multiple tables to be fit o oe page if space permittig. Without the optio each page dimesio prits out a separate report. The risk CLASS variable ca be specified as a row dimesio ad the cross each level of risk by the levels of the test CLASS variable. The TABULATE code that geerates this table desig is provided alog with output. proc tabulate data=stuff oseps order=formatted formchar=' ' class test score var bad oa format test test. score score. table (score='risk' all='all Risk Levels' * (test='group ' all=' ' bad='number of Deliquet Accouts' *sum=' '*f=comma10. bad='bad Rate '*pctsum<oa>=' '*f=p6r. /box=_page_ rts=21 misstext=' ' codese ru Risk = High Number Number of Test % % Cotrol % % Total % % Risk = Medium Number Number of Test % % Cotrol % % Total % % Risk = Low Number Number of Test % % Cotrol % % Total % % All Risk Levels Number Number of Test % % Cotrol % % Total % % For the output geerated a umber of TABLE optios were also itroduced. The TABLE OPTIONS icluded are: Number Number of Risk Group High Test % % Cotrol % % % % Medium Group Test % % Cotrol % % % % Low Group Test % % Cotrol % % % % All Risk Group Levels Test % % Cotrol % % % % For the above table we eeded to place paretheses aroud SCORE ALL ad ALL specificatios sice we wated to see each level of ALL for each level of SCORE ad ALL. For more complicated desigs remember to always desig the table o paper first. This will ease the codig up of complicated reports ad give you more cofidece i desigig reports with PROC TABULATE. Let us look at oe more table desig ad aother DATA step trick. A umber of statisticias look at odds ratios rather the percetages. Versio 6.12 does ot have a ratio statistic. Here is code that fools TABULATE to provide a
5 odds ratio i the output. The defiitio of the odds ratio here is: total good accouts/total bad accouts For this example the defiitio of good is a accout that has ot become deliquet over the test evaluatio period. The code ad output follow (ote that FORMAT code is ot icluded here sice it is assumed the FORMATS have bee created: data sushi set stuff if bad=0 the good=1/100 else good=0 proc tabulate data=sushi oseps order=formated formchar=' ' class test score var bad oa good format test test. score score. table (score='risk LEVEL' (test='group ' * good=' '*pctsum<bad>=' '*f=8.2 /box='good/bad Odds' rts=21 misstext=' ' ru OUTPUT: CONCLUSION The TABULATE procedure is a complex PROC that geerates tabular reports. There is o sigle correct way to geerate reports i TABULATE. This paper provided a framework that will help you uderstad the workigs of TABULATE ad will provide a startig framework o how to geerate table reports usig PROC TABULATE. Ofte reports ca be geerated without additioal DATA steps. The use of PROC FORMAT ca assist i labelig output. DATA steps may be required to geerate additioal variables for TABULATE output ad/or modify variables to geerate statistics required i your output. Versio 8+ of SAS has may more optios ad statistical reportig capabilities. These iclude ODS OUTPUT of SAS DATASETS ad percetile statistics. CONTACT INFORMATION Your commets ad questios are valued ad ecouraged. Cotact the author at: Joas V. Bileas JP Morga Chase Decisio Scieces 55 Water Street 1618 New York NY Joas.Bileas@Chase.com Good/Bad Odds GROUP Test Cotrol Total RISK LEVEL High Medium Low Total The trick above was to divide the umerator i the PCTSUM calculatio by 100 i the DATA step. Sice TABULATE always multiplies the result of a PCTSUM by 100 the resultig output is a ratio. Now if I ca oly figure out how to report the log of odds I will become a TABULATE master. Note that the test CLASS variable is ow i the colum dimesio. We put paretheses aroud ad ALL sice we wated the PCTSUM summary for all levels of as well as ALL. The paretheses aroud SCORE ad ALL are ot required here but they do t impact the output. STEP 6 - RUN CODE WITH OBS=MAX Ru productio code o full datasets. Always test TABULATE code o smaller datasets. This is more efficiet ad time savig especially for large datasets. STEP 7 - SIT BACK SMILE AND BE PROUD OF YOUR REPORT Oce your TABULATE report is geerated feel cofidet that you have begu your trip to uderstadig the mystery of PROC TABULATE. Your trip will be a log oe grasshopper but it will be a full of elightemet as you become a TABULATE Master.
Python Programming: An Introduction to Computer Science
Pytho Programmig: A Itroductio to Computer Sciece Chapter 6 Defiig Fuctios Pytho Programmig, 2/e 1 Objectives To uderstad why programmers divide programs up ito sets of cooperatig fuctios. To be able to
More informationn Some thoughts on software development n The idea of a calculator n Using a grammar n Expression evaluation n Program organization n Analysis
Overview Chapter 6 Writig a Program Bjare Stroustrup Some thoughts o software developmet The idea of a calculator Usig a grammar Expressio evaluatio Program orgaizatio www.stroustrup.com/programmig 3 Buildig
More information. Written in factored form it is easy to see that the roots are 2, 2, i,
CMPS A Itroductio to Programmig Programmig Assigmet 4 I this assigmet you will write a java program that determies the real roots of a polyomial that lie withi a specified rage. Recall that the roots (or
More informationPython Programming: An Introduction to Computer Science
Pytho Programmig: A Itroductio to Computer Sciece Chapter 1 Computers ad Programs 1 Objectives To uderstad the respective roles of hardware ad software i a computig system. To lear what computer scietists
More informationDescriptive Statistics Summary Lists
Chapter 209 Descriptive Statistics Summary Lists Itroductio This procedure is used to summarize cotiuous data. Large volumes of such data may be easily summarized i statistical lists of meas, couts, stadard
More informationChapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 9 Poiters ad Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 9.1 Poiters 9.2 Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Slide 9-3
More informationOnes Assignment Method for Solving Traveling Salesman Problem
Joural of mathematics ad computer sciece 0 (0), 58-65 Oes Assigmet Method for Solvig Travelig Salesma Problem Hadi Basirzadeh Departmet of Mathematics, Shahid Chamra Uiversity, Ahvaz, Ira Article history:
More informationMR-2010I %MktBSize Macro 989. %MktBSize Macro
MR-2010I %MktBSize Macro 989 %MktBSize Macro The %MktBSize autocall macro suggests sizes for balaced icomplete block desigs (BIBDs). The sizes that it reports are sizes that meet ecessary but ot sufficiet
More informationIMP: Superposer Integrated Morphometrics Package Superposition Tool
IMP: Superposer Itegrated Morphometrics Package Superpositio Tool Programmig by: David Lieber ( 03) Caisius College 200 Mai St. Buffalo, NY 4208 Cocept by: H. David Sheets, Dept. of Physics, Caisius College
More informationChapter 1. Introduction to Computers and C++ Programming. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 1 Itroductio to Computers ad C++ Programmig Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 1.1 Computer Systems 1.2 Programmig ad Problem Solvig 1.3 Itroductio to C++ 1.4 Testig
More informationChapter 5. Functions for All Subtasks. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 5 Fuctios for All Subtasks Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 5.1 void Fuctios 5.2 Call-By-Referece Parameters 5.3 Usig Procedural Abstractio 5.4 Testig ad Debuggig
More informationChapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 4 Procedural Abstractio ad Fuctios That Retur a Value Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 4.1 Top-Dow Desig 4.2 Predefied Fuctios 4.3 Programmer-Defied Fuctios 4.4
More informationChapter 8. Strings and Vectors. Copyright 2014 Pearson Addison-Wesley. All rights reserved.
Chapter 8 Strigs ad Vectors Overview 8.1 A Array Type for Strigs 8.2 The Stadard strig Class 8.3 Vectors Slide 8-3 8.1 A Array Type for Strigs A Array Type for Strigs C-strigs ca be used to represet strigs
More informationCustomer Portal Quick Reference User Guide
Customer Portal Quick Referece User Guide Overview This user guide is iteded for FM Approvals customers usig the Approval Iformatio Maagemet (AIM) customer portal to track their active projects. AIM is
More informationGE FUNDAMENTALS OF COMPUTING AND PROGRAMMING UNIT III
GE2112 - FUNDAMENTALS OF COMPUTING AND PROGRAMMING UNIT III PROBLEM SOLVING AND OFFICE APPLICATION SOFTWARE Plaig the Computer Program Purpose Algorithm Flow Charts Pseudocode -Applicatio Software Packages-
More informationGuide to Applying Online
Guide to Applyig Olie Itroductio Respodig to requests for additioal iformatio Reportig: submittig your moitorig or ed of grat Pledges: submittig your Itroductio This guide is to help charities submit their
More informationRecursion. Computer Science S-111 Harvard University David G. Sullivan, Ph.D. Review: Method Frames
Uit 4, Part 3 Recursio Computer Sciece S-111 Harvard Uiversity David G. Sulliva, Ph.D. Review: Method Frames Whe you make a method call, the Java rutime sets aside a block of memory kow as the frame of
More informationChapter 10. Defining Classes. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 10 Defiig Classes Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 10.1 Structures 10.2 Classes 10.3 Abstract Data Types 10.4 Itroductio to Iheritace Copyright 2015 Pearso Educatio,
More informationLecture Notes 6 Introduction to algorithm analysis CSS 501 Data Structures and Object-Oriented Programming
Lecture Notes 6 Itroductio to algorithm aalysis CSS 501 Data Structures ad Object-Orieted Programmig Readig for this lecture: Carrao, Chapter 10 To be covered i this lecture: Itroductio to algorithm aalysis
More informationChapter 8. Strings and Vectors. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 8 Strigs ad Vectors Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 8.1 A Array Type for Strigs 8.2 The Stadard strig Class 8.3 Vectors Copyright 2015 Pearso Educatio, Ltd..
More informationCHAPTER IV: GRAPH THEORY. Section 1: Introduction to Graphs
CHAPTER IV: GRAPH THEORY Sectio : Itroductio to Graphs Sice this class is called Number-Theoretic ad Discrete Structures, it would be a crime to oly focus o umber theory regardless how woderful those topics
More informationCSC165H1 Worksheet: Tutorial 8 Algorithm analysis (SOLUTIONS)
CSC165H1, Witer 018 Learig Objectives By the ed of this worksheet, you will: Aalyse the ruig time of fuctios cotaiig ested loops. 1. Nested loop variatios. Each of the followig fuctios takes as iput a
More informationIn this chapter, you learn the concepts and terminology of databases and
A Itroductio to Database Developmet I this chapter, you lear the cocepts ad termiology of databases ad how to desig the tables that your forms ad reports will use. Fially, you build the actual tables used
More information9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence
_9.qxd // : AM Page Chapter 9 Sequeces, Series, ad Probability 9. Sequeces ad Series What you should lear Use sequece otatio to write the terms of sequeces. Use factorial otatio. Use summatio otatio to
More informationWORKED EXAMPLE 7.1. Producing a Mass Mailing. We want to automate the process of producing mass mailings. A typical letter might look as follows:
Worked Example 7.1 Producig a Mass Mailig 1 WORKED EXAMPLE 7.1 Producig a Mass Mailig We wat to automate the process of producig mass mailigs. A typical letter might look as follows: To: Ms. Sally Smith
More informationBezier curves. Figure 2 shows cubic Bezier curves for various control points. In a Bezier curve, only
Edited: Yeh-Liag Hsu (998--; recommeded: Yeh-Liag Hsu (--9; last updated: Yeh-Liag Hsu (9--7. Note: This is the course material for ME55 Geometric modelig ad computer graphics, Yua Ze Uiversity. art of
More informationAPPLICATION NOTE PACE1750AE BUILT-IN FUNCTIONS
APPLICATION NOTE PACE175AE BUILT-IN UNCTIONS About This Note This applicatio brief is iteded to explai ad demostrate the use of the special fuctios that are built ito the PACE175AE processor. These powerful
More informationCMPT 125 Assignment 2 Solutions
CMPT 25 Assigmet 2 Solutios Questio (20 marks total) a) Let s cosider a iteger array of size 0. (0 marks, each part is 2 marks) it a[0]; I. How would you assig a poiter, called pa, to store the address
More informationCS 11 C track: lecture 1
CS 11 C track: lecture 1 Prelimiaries Need a CMS cluster accout http://acctreq.cms.caltech.edu/cgi-bi/request.cgi Need to kow UNIX IMSS tutorial liked from track home page Track home page: http://courses.cms.caltech.edu/courses/cs11/material
More informationLecture 1: Introduction and Strassen s Algorithm
5-750: Graduate Algorithms Jauary 7, 08 Lecture : Itroductio ad Strasse s Algorithm Lecturer: Gary Miller Scribe: Robert Parker Itroductio Machie models I this class, we will primarily use the Radom Access
More informationHow do we evaluate algorithms?
F2 Readig referece: chapter 2 + slides Algorithm complexity Big O ad big Ω To calculate ruig time Aalysis of recursive Algorithms Next time: Litterature: slides mostly The first Algorithm desig methods:
More informationWeston Anniversary Fund
Westo Olie Applicatio Guide 2018 1 This guide is desiged to help charities applyig to the Westo to use our olie applicatio form. The Westo is ope to applicatios from 5th Jauary 2018 ad closes o 30th Jue
More informationThe VSS CCD photometry spreadsheet
The VSS CCD photometry spreadsheet Itroductio This Excel spreadsheet has bee developed ad tested by the BAA VSS for aalysig results files produced by the multi-image CCD photometry procedure i AIP4Wi v2.
More informationCounting Regions in the Plane and More 1
Coutig Regios i the Plae ad More 1 by Zvezdelia Stakova Berkeley Math Circle Itermediate I Group September 016 1. Overarchig Problem Problem 1 Regios i a Circle. The vertices of a polygos are arraged o
More informationThe Closest Line to a Data Set in the Plane. David Gurney Southeastern Louisiana University Hammond, Louisiana
The Closest Lie to a Data Set i the Plae David Gurey Southeaster Louisiaa Uiversity Hammod, Louisiaa ABSTRACT This paper looks at three differet measures of distace betwee a lie ad a data set i the plae:
More informationthe beginning of the program in order for it to work correctly. Similarly, a Confirm
I our sytax, a Assume statemet will be used to record what must be true at the begiig of the program i order for it to work correctly. Similarly, a Cofirm statemet is used to record what should be true
More information27 Refraction, Dispersion, Internal Reflection
Chapter 7 Refractio, Dispersio, Iteral Reflectio 7 Refractio, Dispersio, Iteral Reflectio Whe we talked about thi film iterferece, we said that whe light ecouters a smooth iterface betwee two trasparet
More informationProject 2.5 Improved Euler Implementation
Project 2.5 Improved Euler Implemetatio Figure 2.5.10 i the text lists TI-85 ad BASIC programs implemetig the improved Euler method to approximate the solutio of the iitial value problem dy dx = x+ y,
More informationLecture 7 7 Refraction and Snell s Law Reading Assignment: Read Kipnis Chapter 4 Refraction of Light, Section III, IV
Lecture 7 7 Refractio ad Sell s Law Readig Assigmet: Read Kipis Chapter 4 Refractio of Light, Sectio III, IV 7. History I Eglish-speakig coutries, the law of refractio is kow as Sell s Law, after the Dutch
More informationn Maurice Wilkes, 1949 n Organize software to minimize errors. n Eliminate most of the errors we made anyway.
Bjare Stroustrup www.stroustrup.com/programmig Chapter 5 Errors Abstract Whe we program, we have to deal with errors. Our most basic aim is correctess, but we must deal with icomplete problem specificatios,
More informationOCR Statistics 1. Working with data. Section 3: Measures of spread
Notes ad Eamples OCR Statistics 1 Workig with data Sectio 3: Measures of spread Just as there are several differet measures of cetral tedec (averages), there are a variet of statistical measures of spread.
More informationModule 8-7: Pascal s Triangle and the Binomial Theorem
Module 8-7: Pascal s Triagle ad the Biomial Theorem Gregory V. Bard April 5, 017 A Note about Notatio Just to recall, all of the followig mea the same thig: ( 7 7C 4 C4 7 7C4 5 4 ad they are (all proouced
More informationChapter 3 Classification of FFT Processor Algorithms
Chapter Classificatio of FFT Processor Algorithms The computatioal complexity of the Discrete Fourier trasform (DFT) is very high. It requires () 2 complex multiplicatios ad () complex additios [5]. As
More informationThe isoperimetric problem on the hypercube
The isoperimetric problem o the hypercube Prepared by: Steve Butler November 2, 2005 1 The isoperimetric problem We will cosider the -dimesioal hypercube Q Recall that the hypercube Q is a graph whose
More informationOracle Server. What s New in this Release? Release Notes
Oracle email Server Release Notes Release 5.2 for Widows NT May 2001 Part No. A90426-01 These release otes accompay Oracle email Server Release 5.2 for Widows NT. They cotai the followig topics: What s
More informationOne advantage that SONAR has over any other music-sequencing product I ve worked
*gajedra* D:/Thomso_Learig_Projects/Garrigus_163132/z_productio/z_3B2_3D_files/Garrigus_163132_ch17.3d, 14/11/08/16:26:39, 16:26, page: 647 17 CAL 101 Oe advatage that SONAR has over ay other music-sequecig
More informationAppendix D. Controller Implementation
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Appedix D Cotroller Implemetatio Cotroller Implemetatios Combiatioal logic (sigle-cycle); Fiite state machie (multi-cycle, pipelied);
More information3D Model Retrieval Method Based on Sample Prediction
20 Iteratioal Coferece o Computer Commuicatio ad Maagemet Proc.of CSIT vol.5 (20) (20) IACSIT Press, Sigapore 3D Model Retrieval Method Based o Sample Predictio Qigche Zhag, Ya Tag* School of Computer
More informationPattern Recognition Systems Lab 1 Least Mean Squares
Patter Recogitio Systems Lab 1 Least Mea Squares 1. Objectives This laboratory work itroduces the OpeCV-based framework used throughout the course. I this assigmet a lie is fitted to a set of poits usig
More informationMath 3201 Notes Chapter 4: Rational Expressions & Equations
Learig Goals: See p. tet.. Equivalet Ratioal Epressios ( classes) Read Goal p. 6 tet. Math 0 Notes Chapter : Ratioal Epressios & Equatios. Defie ad give a eample of a ratioal epressio. p. 6. Defie o-permissible
More informationAdministrative UNSUPERVISED LEARNING. Unsupervised learning. Supervised learning 11/25/13. Final project. No office hours today
Admiistrative Fial project No office hours today UNSUPERVISED LEARNING David Kauchak CS 451 Fall 2013 Supervised learig Usupervised learig label label 1 label 3 model/ predictor label 4 label 5 Supervised
More informationMath Section 2.2 Polynomial Functions
Math 1330 - Sectio. Polyomial Fuctios Our objectives i workig with polyomial fuctios will be, first, to gather iformatio about the graph of the fuctio ad, secod, to use that iformatio to geerate a reasoably
More informationLecture 9: Exam I Review
CS 111 (Law): Program Desig I Lecture 9: Exam I Review Robert H. Sloa & Richard Warer Uiversity of Illiois, Chicago September 22, 2016 This Class Discuss midterm topics Go over practice examples Aswer
More informationCIS 121 Data Structures and Algorithms with Java Spring Stacks and Queues Monday, February 12 / Tuesday, February 13
CIS Data Structures ad Algorithms with Java Sprig 08 Stacks ad Queues Moday, February / Tuesday, February Learig Goals Durig this lab, you will: Review stacks ad queues. Lear amortized ruig time aalysis
More information15-859E: Advanced Algorithms CMU, Spring 2015 Lecture #2: Randomized MST and MST Verification January 14, 2015
15-859E: Advaced Algorithms CMU, Sprig 2015 Lecture #2: Radomized MST ad MST Verificatio Jauary 14, 2015 Lecturer: Aupam Gupta Scribe: Yu Zhao 1 Prelimiaries I this lecture we are talkig about two cotets:
More information3.1 Overview of MySQL Programs. These programs are discussed further in Chapter 4, Database Administration. Client programs that access the server:
3 Usig MySQL Programs This chapter provides a brief overview of the programs provided by MySQL AB ad discusses how to specify optios whe you ru these programs. Most programs have optios that are specific
More informationCS 111: Program Design I Lecture 15: Objects, Pandas, Modules. Robert H. Sloan & Richard Warner University of Illinois at Chicago October 13, 2016
CS 111: Program Desig I Lecture 15: Objects, Padas, Modules Robert H. Sloa & Richard Warer Uiversity of Illiois at Chicago October 13, 2016 OBJECTS AND DOT NOTATION Objects (Implicit i Chapter 2, Variables,
More informationLecture 28: Data Link Layer
Automatic Repeat Request (ARQ) 2. Go ack N ARQ Although the Stop ad Wait ARQ is very simple, you ca easily show that it has very the low efficiecy. The low efficiecy comes from the fact that the trasmittig
More informationCS : Programming for Non-Majors, Summer 2007 Programming Project #3: Two Little Calculations Due by 12:00pm (noon) Wednesday June
CS 1313 010: Programmig for No-Majors, Summer 2007 Programmig Project #3: Two Little Calculatios Due by 12:00pm (oo) Wedesday Jue 27 2007 This third assigmet will give you experiece writig programs that
More informationAlpha Individual Solutions MAΘ National Convention 2013
Alpha Idividual Solutios MAΘ Natioal Covetio 0 Aswers:. D. A. C 4. D 5. C 6. B 7. A 8. C 9. D 0. B. B. A. D 4. C 5. A 6. C 7. B 8. A 9. A 0. C. E. B. D 4. C 5. A 6. D 7. B 8. C 9. D 0. B TB. 570 TB. 5
More informationElementary Educational Computer
Chapter 5 Elemetary Educatioal Computer. Geeral structure of the Elemetary Educatioal Computer (EEC) The EEC coforms to the 5 uits structure defied by vo Neuma's model (.) All uits are preseted i a simplified
More informationCS 683: Advanced Design and Analysis of Algorithms
CS 683: Advaced Desig ad Aalysis of Algorithms Lecture 6, February 1, 2008 Lecturer: Joh Hopcroft Scribes: Shaomei Wu, Etha Feldma February 7, 2008 1 Threshold for k CNF Satisfiability I the previous lecture,
More informationInvestigation Monitoring Inventory
Ivestigatio Moitorig Ivetory Name Period Date Art Smith has bee providig the prits of a egravig to FieArt Gallery. He plas to make just 2000 more prits. FieArt has already received 70 of Art s prits. The
More informationChapter 2. C++ Basics. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 2 C++ Basics Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 2.1 Variables ad Assigmets 2.2 Iput ad Output 2.3 Data Types ad Expressios 2.4 Simple Flow of Cotrol 2.5 Program
More informationBAAN IVc/BaanERP. Conversion Guide Oracle7 to Oracle8
BAAN IVc/BaaERP A publicatio of: Baa Developmet B.V. P.O.Box 143 3770 AC Bareveld The Netherlads Prited i the Netherlads Baa Developmet B.V. 1999. All rights reserved. The iformatio i this documet is subject
More informationParabolic Path to a Best Best-Fit Line:
Studet Activity : Fidig the Least Squares Regressio Lie By Explorig the Relatioship betwee Slope ad Residuals Objective: How does oe determie a best best-fit lie for a set of data? Eyeballig it may be
More informationCS 111: Program Design I Lecture 20: Web crawling, HTML, Copyright
CS 111: Program Desig I Lecture 20: Web crawlig, HTML, Copyright Robert H. Sloa & Richard Warer Uiversity of Illiois at Chicago November 8, 2016 WEB CRAWLER AGAIN Two bits of useful Pytho sytax Do't eed
More informationCSC 220: Computer Organization Unit 11 Basic Computer Organization and Design
College of Computer ad Iformatio Scieces Departmet of Computer Sciece CSC 220: Computer Orgaizatio Uit 11 Basic Computer Orgaizatio ad Desig 1 For the rest of the semester, we ll focus o computer architecture:
More informationTask scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation
6-0-0 Kowledge Trasformatio from Task Scearios to View-based Desig Diagrams Nima Dezhkam Kamra Sartipi {dezhka, sartipi}@mcmaster.ca Departmet of Computig ad Software McMaster Uiversity CANADA SEKE 08
More informationIt just came to me that I 8.2 GRAPHS AND CONVERGENCE
44 Chapter 8 Discrete Mathematics: Fuctios o the Set of Natural Numbers (a) Take several odd, positive itegers for a ad write out eough terms of the 3N sequece to reach a repeatig loop (b) Show that ot
More informationAnalysis Metrics. Intro to Algorithm Analysis. Slides. 12. Alg Analysis. 12. Alg Analysis
Itro to Algorithm Aalysis Aalysis Metrics Slides. Table of Cotets. Aalysis Metrics 3. Exact Aalysis Rules 4. Simple Summatio 5. Summatio Formulas 6. Order of Magitude 7. Big-O otatio 8. Big-O Theorems
More informationImprovement of the Orthogonal Code Convolution Capabilities Using FPGA Implementation
Improvemet of the Orthogoal Code Covolutio Capabilities Usig FPGA Implemetatio Naima Kaabouch, Member, IEEE, Apara Dhirde, Member, IEEE, Saleh Faruque, Member, IEEE Departmet of Electrical Egieerig, Uiversity
More informationbusiess.officedepot.com User Guide Coveiet. Effective. Smart. https://busiess.officedepot.com CUSTOMER SUPPORT Hours of operatio: Moday Friday, 8:00 A.M 8:00 P.M. (Easter Time) Live Chat: For immediate
More informationSolution printed. Do not start the test until instructed to do so! CS 2604 Data Structures Midterm Spring, Instructions:
CS 604 Data Structures Midterm Sprig, 00 VIRG INIA POLYTECHNIC INSTITUTE AND STATE U T PROSI M UNI VERSI TY Istructios: Prit your ame i the space provided below. This examiatio is closed book ad closed
More informationNormal Distributions
Normal Distributios Stacey Hacock Look at these three differet data sets Each histogram is overlaid with a curve : A B C A) Weights (g) of ewly bor lab rat pups B) Mea aual temperatures ( F ) i A Arbor,
More informationThis chapter serves as an introductory overview of Excel If you re
This chapter serves as a itroductory overview of Excel 2007. If you re already familiar with a previous versio of Excel, readig this chapter is still a good idea. Excel 2007 is differet from every previous
More informationMorgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5
Morga Kaufma Publishers 26 February, 28 COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Chapter 5 Set-Associative Cache Architecture Performace Summary Whe CPU performace icreases:
More informationCOSC 1P03. Ch 7 Recursion. Introduction to Data Structures 8.1
COSC 1P03 Ch 7 Recursio Itroductio to Data Structures 8.1 COSC 1P03 Recursio Recursio I Mathematics factorial Fiboacci umbers defie ifiite set with fiite defiitio I Computer Sciece sytax rules fiite defiitio,
More informationENGR Spring Exam 1
ENGR 300 Sprig 03 Exam INSTRUCTIONS: Duratio: 60 miutes Keep your eyes o your ow work! Keep your work covered at all times!. Each studet is resposible for followig directios. Read carefully.. MATLAB ad
More informationBasic allocator mechanisms The course that gives CMU its Zip! Memory Management II: Dynamic Storage Allocation Mar 6, 2000.
5-23 The course that gives CM its Zip Memory Maagemet II: Dyamic Storage Allocatio Mar 6, 2000 Topics Segregated lists Buddy system Garbage collectio Mark ad Sweep Copyig eferece coutig Basic allocator
More informationA Resource for Free-standing Mathematics Qualifications
Ope.ls The first sheet is show elow. It is set up to show graphs with equatios of the form = m + c At preset the values of m ad c are oth zero. You ca chage these values usig the scroll ars. Leave the
More informationSOFTWARE usually does not work alone. It must have
Proceedigs of the 203 Federated Coferece o Computer Sciece ad Iformatio Systems pp. 343 348 A method for selectig eviromets for software compatibility testig Łukasz Pobereżik AGH Uiversity of Sciece ad
More informationENGI 4421 Probability and Statistics Faculty of Engineering and Applied Science Problem Set 1 Descriptive Statistics
ENGI 44 Probability ad Statistics Faculty of Egieerig ad Applied Sciece Problem Set Descriptive Statistics. If, i the set of values {,, 3, 4, 5, 6, 7 } a error causes the value 5 to be replaced by 50,
More information1.2 Binomial Coefficients and Subsets
1.2. BINOMIAL COEFFICIENTS AND SUBSETS 13 1.2 Biomial Coefficiets ad Subsets 1.2-1 The loop below is part of a program to determie the umber of triagles formed by poits i the plae. for i =1 to for j =
More informationCS 111: Program Design I Lecture # 7: Web Crawler, Functions; Open Access
CS 111: Program Desig I Lecture # 7: Web Crawler, Fuctios; Ope Access Robert H. Sloa & Richard Warer Uiversity of Illiois at Chicago September 13, 2016 Lab Hit/Remider word = "hi" word.upper() à "HI" Questio
More informationCS 111: Program Design I Lecture #26: Heat maps, Nothing, Predictive Policing
CS 111: Program Desig I Lecture #26: Heat maps, Nothig, Predictive Policig Robert H. Sloa & Richard Warer Uiversity of Illiois at Chicago November 29, 2018 Some Logistics Extra credit: Sample Fial Exam
More informationGetting Started. Getting Started - 1
Gettig Started Gettig Started - 1 Issue 1 Overview of Gettig Started Overview of Gettig Started This sectio explais the basic operatios of the AUDIX system. It describes how to: Log i ad log out of the
More informationCS 111: Program Design I Lecture # 7: First Loop, Web Crawler, Functions
CS 111: Program Desig I Lecture # 7: First Loop, Web Crawler, Fuctios Robert H. Sloa & Richard Warer Uiversity of Illiois at Chicago September 18, 2018 What will this prit? x = 5 if x == 3: prit("hi!")
More informationEE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 13 Control and Sequencing: Hardwired and Microprogrammed Control
EE 459/500 HDL Based Digital Desig with Programmable Logic Lecture 13 Cotrol ad Sequecig: Hardwired ad Microprogrammed Cotrol Refereces: Chapter s 4,5 from textbook Chapter 7 of M.M. Mao ad C.R. Kime,
More informationLower Bounds for Sorting
Liear Sortig Topics Covered: Lower Bouds for Sortig Coutig Sort Radix Sort Bucket Sort Lower Bouds for Sortig Compariso vs. o-compariso sortig Decisio tree model Worst case lower boud Compariso Sortig
More informationComputer Science Foundation Exam. August 12, Computer Science. Section 1A. No Calculators! KEY. Solutions and Grading Criteria.
Computer Sciece Foudatio Exam August, 005 Computer Sciece Sectio A No Calculators! Name: SSN: KEY Solutios ad Gradig Criteria Score: 50 I this sectio of the exam, there are four (4) problems. You must
More informationCSE 417: Algorithms and Computational Complexity
Time CSE 47: Algorithms ad Computatioal Readig assigmet Read Chapter of The ALGORITHM Desig Maual Aalysis & Sortig Autum 00 Paul Beame aalysis Problem size Worst-case complexity: max # steps algorithm
More informationReading. Parametric curves. Mathematical curve representation. Curves before computers. Required: Angel , , , 11.9.
Readig Required: Agel.-.3,.5.,.6-.7,.9. Optioal Parametric curves Bartels, Beatty, ad Barsky. A Itroductio to Splies for use i Computer Graphics ad Geometric Modelig, 987. Fari. Curves ad Surfaces for
More informationMOTIF XF Extension Owner s Manual
MOTIF XF Extesio Ower s Maual Table of Cotets About MOTIF XF Extesio...2 What Extesio ca do...2 Auto settig of Audio Driver... 2 Auto settigs of Remote Device... 2 Project templates with Iput/ Output Bus
More informationChapter 3. More Flow of Control. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 3 More Flow of Cotrol Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 3.1 Usig Boolea Expressios 3.2 Multiway Braches 3.3 More about C++ Loop Statemets 3.4 Desigig Loops Copyright
More informationPseudocode ( 1.1) Analysis of Algorithms. Primitive Operations. Pseudocode Details. Running Time ( 1.1) Estimating performance
Aalysis of Algorithms Iput Algorithm Output A algorithm is a step-by-step procedure for solvig a problem i a fiite amout of time. Pseudocode ( 1.1) High-level descriptio of a algorithm More structured
More informationΣ P(i) ( depth T (K i ) + 1),
EECS 3101 York Uiversity Istructor: Ady Mirzaia DYNAMIC PROGRAMMING: OPIMAL SAIC BINARY SEARCH REES his lecture ote describes a applicatio of the dyamic programmig paradigm o computig the optimal static
More informationCS 111: Program Design I Lecture 15: Modules, Pandas again. Robert H. Sloan & Richard Warner University of Illinois at Chicago March 8, 2018
CS 111: Program Desig I Lecture 15: Modules, Padas agai Robert H. Sloa & Richard Warer Uiversity of Illiois at Chicago March 8, 2018 PYTHON STANDARD LIBRARY & BEYOND: MODULES Extedig Pytho Every moder
More informationGuide for Online Renewal
guide for olie reewal Guide for Olie Reewal This guide is desiged to assist you i the completio of your aual olie reewal of registratio. 250 Bloor St. East, Suite 1000, Toroto ON M4W 1E6 Phoe: 416-972-9882
More informationCS 111: Program Design I Lecture 21: Network Analysis. Robert H. Sloan & Richard Warner University of Illinois at Chicago April 10, 2018
CS 111: Program Desig I Lecture 21: Network Aalysis Robert H. Sloa & Richard Warer Uiversity of Illiois at Chicago April 10, 2018 NETWORK ANALYSIS Which displays a graph i the sese of graph/etwork aalysis?
More information