Self Serve Census Data for Neighborhoods and other Custom Aggregations A SAS/IntrNet Applicaton
description
Transcript of Self Serve Census Data for Neighborhoods and other Custom Aggregations A SAS/IntrNet Applicaton
Self Serve Census Data for Neighborhoods and other Custom
AggregationsA SAS/IntrNet Applicaton
Larry Hoyle
Policy Research Institute
University of Kansas
The home page
Define a new area – top downDefine a new area – top down
Links to Tract and Block Maps
Census Bureau Tract Maps
Johnson County Tracts - Zoom
Census Bureau Block Maps
Pick Part of Johnson County
Pick 2 Tracts
Johnson County – 2 tracts
Naming the area with 2 tracts
Email sent announcing creation
The definition has been stored
A printable profile
A profile with a larger font
A population pyramid
Defining an area from an addressDefining an area from an address
Choosing a block, width, and heightChoosing a block, width, and height
The rectangle can be modified or savedThe rectangle can be modified or saved
Recalling or Using a Previous Defined AreaRecalling or Using a Previous Defined Area
SF1 Profile for the custom areaSF1 Profile for the custom area
Displaying defined geographyDisplaying defined geography
A few techniquesA few techniques
• Thousands of potential macro variables• Email the area name• HTML with pagination for legacy code
Areas - HTML formAreas - HTML form
<td> <input type="radio" name="G20001" value="K"></td><td> <input type="radio" name="G20001" value="S"></td><td> <input type="radio" name="G20001" value="D" CHECKED></td><td >Allen County <A href="http:
Radio buttons require a separate name for each geographic unit.
Areas - HTML form detailsAreas - HTML form details
Geocode values won’t work as macro variable names.
sorecode GEOCODE to
FORMVAL which can be a macro variable name.
formval GeoCodeG20045_0005X02_2 20045-0005.02-2G20045_0005X02_3001 20045-0005.02-3001G20045_0005X02_3002 20045-0005.02-3002G20045_0005X02_3003 20045-0005.02-3003
Areas - Thousands of Macro VariablesAreas - Thousands of Macro Variables
proc sql; create table mvars as select name,value from sashelp.vmacro where scope='GLOBAL' and upcase(substr(name,1,1))="G";
How do you deal with thousands of potential macro variable names?
One alternative: begin names with a unique letter and extract from sashelp.vmacro
Email a notice - codeEmail a notice - code
filename mymail email "[email protected]" subject="new custom area"; data _null_; file mymail; set areas.areaPWs; where areaNum=&newAnum ; put areaNum= / customArea= / created= / keepdays= / creatorIP=/ email=;run;
Email a notice - messageEmail a notice - message
areaNum=49
customArea=KCSAS2tracts
created=04JAN2002:15:13:46
keepdays=180
creatorip=129.237.xxx.xxx
Legacy printer output to HTML - templateLegacy printer output to HTML - template
ods path work.template(update) sashelp.tmplmst(read); proc template; define style Styles.myHtm; parent = styles.default;
Legacy printer output to HTML - fontsLegacy printer output to HTML - fonts
replace fonts "Fonts used in my HTML style" / 'TitleFont2' = ("Arial, Helvetica, Helv",4,Bold Italic) 'TitleFont' = ("Arial, Helvetica, Helv",5,Bold Italic) 'StrongFont' = ("Arial, Helvetica, Helv",4,Bold) 'EmphasisFont' = ("Arial, Helvetica, Helv",3,Italic) 'FixedEmphasisFont' = ("Courier",&fontSize.,Italic) 'FixedStrongFont' = ("Courier",&fontSize.,Bold) 'FixedHeadingFont' = ("Courier",&fontSize.)
'BatchFixedFont' = ("Courier",&fontSize.) 'FixedFont' = ("Courier",&fontSize.) 'headingEmphasisFont' = ("Arial, Helvetica, Helv",4,Bold Italic) 'headingFont' = ("Arial, Helvetica, Helv",4,Bold) 'docFont' = ("Arial, Helvetica, Helv",3);
FontSize macro variableFontSize macro variable
fs=upcase(symget("fontSize")); select (fs); when('M') call symput("fontSize","10.0pt"); when('L') call symput("fontSize","14.0pt"); otherwise call symput("fontSize","6.7pt"); end;
Legacy printer output to HTML - batchLegacy printer output to HTML - batch
replace Batch from Output "Controls batch mode output." / font = fonts('BatchFixedFont')
cellheight=8.5pt cellpadding = .5pt cellspacing = 0.25pt
frame=void rules = NONE foreground = colors('batchfg') background = colors('batchbg');
Legacy printer output to HTML - ODSLegacy printer output to HTML - ODS
ods html file=_webout( NO_Bottom_Matter title="Custom Area SF1 Profile &areaNum") style=myHtm CSS ;ods listing close;ods noproctitle;
These slides can be found at These slides can be found at http://www.ku.edu/pri/ksdata/sashttp/sugi27.http://www.ku.edu/pri/ksdata/sashttp/sugi27.
Larry HoyleLarry [email protected]@ku.edu
(785) 864-9110(785) 864-9110
Policy Research InstitutePolicy Research Institute
The University of KansasThe University of Kansas
1541 Lilac Lane, Suite 6071541 Lilac Lane, Suite 607
Lawrence, Kansas 66044Lawrence, Kansas 66044
http://www.ku.edu/prihttp://www.ku.edu/pri