distance mapping with sas® barbara b. okerson, phd hmc

41
Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Post on 19-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Distance Mapping With SAS®

Barbara B. Okerson, PhD HMC

Page 2: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Abstract

Geomatics is the science concerned with using mathematical methods with spatial data to learn about the earth's surface.

Health geomatics is used to improve the understanding of relationships between people, location, time, and health.

Geomaticists assist in discovering and eliminating disease, aid in public health disease prevention and health promotion initiatives, and support health care service planning and delivery through defining spatial relationships.

Distance mapping is one of many tools in the geomatics toolbox that furthers this understanding.

Page 3: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Distance Mapping

Visual display as part of a location analysis Used in many fields and businesses

Big Business:spatial patterns for competitive edge

Marketing: customer targeting Health care: disease patterns and service

delivery

Page 4: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Types of Data for Distance Mapping Population data; Environmental and ecological data; Topography and hydrology data; Weather and climate data; Land-use and public infrastructure data; Transportation networks data; Health infrastructure data; Epidemiological data, including mortality, morbidity and disease

distribution; Historical data; Comparative and benchmark data; Political information; and Other data as needed for health-related analyses

Page 5: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Distance Mapping in Health Care

Health, disease, and health care differ by geographic location Geography of disease Geography of health care systems Population demographics

Page 6: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

History of Distance Mapping in Health Care Hippocrates observations (3rd century BC)

Different diseases in different locations Different locations different profiles

John Snow 1854 London cholera epidemic (600 deaths) Contaminated water pump Mapped cholera cases vs. water pump

Page 7: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

John Snow’s Map of Cholera

Page 8: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

SAS Distance Mapping Tools

PROC GEOCODE—calculates a longitude and latitude for a given address.

GEODIST Function—calculates a distance from point to point using geographic longitude and latitude coordinates.

ZIPCITYDISTANCE—calculates distances between centers of U.S. Zip codes.

%REDUCE macro—reduces map data for a desired resolution.

PROC GINSIDE—applies regional (polygonal) values to a point.

Page 9: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Proc GEOCODE

Converts address data to geographic coordinates (latitude and longitude values)

The coordinates can then be used to: Calculate distances. Annotate the addresses on a SAS/GRAPH map Import them as a point layer into a SAS/GIS map. Import them into a third-party mapping system, for

example, ESRI ArcView or Google Maps.

Page 10: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Proc GEOCODE Usage

proc geocode

zip /* Geocoding method */

data=work.customers /* Input address data */

out=work.geocoded /* Output data set */

attribute_var=(msa areacode); /* Added output variables */

run;

quit;

Page 11: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

GEODIST function

Data step function Calculates distance between 2 user specified

sets of longitude and latitude coordinates Uses unprojected data Results units can be specified, e.g. miles or

kilometers Uses the Great Circle Distance for

calculations

Page 12: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

GEODIST usage

data distance;

retain loc_x loc_y;

set location;

if _n_ = 1 then do;

loc_x = x;

loc_y = y;

end;

else dist = geodist( y, x, loc_y, loc_x, ‘DM’ );

drop loc_x loc_y;

run;

DM option – first character input unit (degrees), second output (miles)

Page 13: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Health Care Distance Map Common Applications Distance between patient and nearest

treatment center or provider; Distance between patient and preferred

treatment center or provider; Distance from infected individuals for disease

condition; Distance from emergency services

transportation; Distance nearest area of contamination.

Page 14: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Example 1 – Distance Between Points Calculate distances between locations of

health care team members Information for support coverage and backup Maps.USCity dataset Great Distance formula:

Distance = round(3949.99*arcos(sin(starty)*sin(endy)+

cos( starty )*cos(endy )*cos( startx - endx ) ));

Page 15: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Mileage Map

Page 16: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Partial Code

data city_distance;

keep startcity endcity distance startprojx startprojy endprojx endprojy;

set locations;

startx=atan(1)/45*long;

starty=atan(1)/45*lat;

startcity=city;

/* Get the projected values for annotate */

startprojx=x;

startprojy=y;

/* Get the observations for each of the cities */

do i=1 to #

set locations point=i;

endx=atan(1)/45*long; endy=atan(1)/45*lat;

endcity=city;

endprojx=x; endprojy=y;

Page 17: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Partial Code (cont.) /* If start and end are the same, delete the observation */

if startcity = endcity then delete;

 

/* Calculate distance between cities with Great Circle Distance Formula*/

else

Distance = round(3949.99*arcos(sin(starty)*sin(endy)+

cos( starty )*cos(endy )*cos( startx - endx ) ));

output;

end;

run;

/*Create distance chart*/

proc transpose data=citydistance_forchart out=mchart;

var endcity distance ;

by startcity;

id endcity;

run;

Page 18: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Distance Chart

City Atlanta Indianapolis New York Richmond San DiegoAtlanta 0 425 746 468 1878

Indianapolis 425 0 645 492 1778

New York 746 645 0 287 2421

Richmond 468 492 287 0 2242

San Diego 1878 1778 2421 2242 0

Page 19: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Example 2 – Distance Grid

Traditional grid Elevation by color of square Not tied to geographic coordinates

Map based distance grid Grid squares represent geographic locations Map health care data to the grid

Page 20: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Standard Distance Grid

Page 21: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Map Based Distance Square Process Overlay grid on map with known and marked

geographic coordinates. Assign an area number to each square of the grid and

map area. Calculate grid line spacing for number of grids that you

want and write to data set. Convert to radians for SAS mapping to the correct size

for corner matching. Geocode the response data set to be mapped. Map the geocoded data from the map area to the grid

using SAS/GRAPH GMAP procedure.

Page 22: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Grid Aligned to Map

Page 23: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Data Mapped to Grid

Page 24: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Map With Grid Data

Page 25: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Code to Create Grid

data space (keep=sq x y);

do j = 1 to 25;

do i = 1 to 25;

sq+1;

x=i; y=j; output;

x=i+1 ; output;

y=j+1 ; output;

x=i ; output;

end;

end;

run;

Page 26: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Code to Match Grid to Geo Coordinatesdata grid;

set space(rename=(x=long y=lat));

retain xstart 77.7 ystart 37.3 xinc -0.02 yinc 0.024;

x=xstart + (long-1) * xinc;

y=ystart + (lat-1)* yinc ;

run;

Page 27: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Example 3: Location Analysis Map Population location vs. service location Medicaid births vs. public clinic locations ZCTA (Zip code tabulation area) files for zip

code area outlines ZCTA – uses 2000 census information from

census website

Page 28: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Location Analysis Map

Page 29: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Partial Code

pattern value=msolid repeat=5000 color=vlig;

title f='Arial' h=2 "Medicaid Births vs. Public Clinic Locations";

proc gmap data=zip map=zip anno=anno;

id zcta;

choro zcta/discrete coutline=black nolegend anno=dot;

footnote1 f='Arial' box=1 bspace=0

c=red h=1 f=marker ' Z ' h=1.3 c=black f='Arial' '1 or more births '

c=black h=2 f=special 'M ' h=1.3 c=black f='Arial' 'Public Clinics ';

run;

quit;

Page 30: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Example 4: Area Distance Plot

Access plot Distance calculations Health care plan member to provider choice

distances Proc GEOCODE plus Proc GPLOT

Page 31: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Distance Grid

Page 32: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Partial Code

proc geocode

plus4 lookup=lookup.zip4

data=work.members out=work.geo_members

run; quit;

proc gplot data=provider2;

plot p5*interval p4*interval p3*interval p2*interval p1*interval /overlay

autovref autohref cvref=black chref=black lautovref=34 lautohref=34

haxis=axis1 vaxis=axis2 caxis=black vminor=3

areas=5;

footnote2 box=1 f=marker c=ltgray 'U' f='Arial' c=black ' 1 Provider '

f=marker c=cxFFFF00 'U' f='Arial' c=black ' 2 Providers '

f=marker c=cx00CC66 'U' f='Arial' c=black ' 3 Providers '

f=marker c=cxD80000 'U' f='Arial' c=black ' 4 Providers '

f=marker c=cx7Ba7E1 'U' f='Arial' c=black ' 5 Providers ';

run; quit;  

Page 33: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Example 5: Distance Bubble Plot Proportion of population within a distance Distance to dental provider example Bubble plot Annotate and Proc GPLOT

Page 34: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Distance Bubble Plot

Page 35: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Annotate Code

data annoplot; set dental;

length function $8 text $1;

retain XSYS YSYS '2' style 'Marker' function 'LABEL'

when 'b' color 'cxF2F2DF';

size = size;

x=distance; y=population;

text='W';

output; run;;

 

data annoplot2; set dental;

length function $8 text $1;

retain XSYS YSYS '2' style 'Markere' function 'LABEL'

when 'a' color 'brown';

size = size;

x=distance; y=population;

text='W';

output; run;

Page 36: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Plot Code

goptions ftext='Arial' ftitle='Arial' htext=1.4;

title h=2 'Population vs. Distance to Dental Provider';

axis1 order=0 to 7 by 1 minor=none label=("Miles");

axis2 minor=none order= 0 to 100 by 25 label=("Percent");

symbol i=join v=dot h=2;

 

proc gplot data=dental anno=annoplot;

plot population*distance/

vaxis=axis2 haxis=axis1 anno=annoplot2;

run;

Page 37: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Conclusion

Distance mapping can make contributions to population health.

SAS provides a variety of distance mapping tools for both map-based and non map-based displays.

Page 38: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

References

Alexander GL, Kinman EL, Miller LC, Patrick TB (2003). Marginalization and health geomatics. Journal of Biomedical Informatics 36: 400–407.

Allison R. Robert Allison’s SAS/Graph Examples! http://robslink.com/SAS/Home.htm.accessed June 2010.

Fernando, Randima (2004). GPU Gems: Programming Techniques, Tips, and Tricks for Real Time Graphics. Toronto: Addison Wesley Professional.

Gatrell A, Loytonen M, ed. (1998). GIS and health (GISDATA 6). London: Taylor & Francis, 1998.

Hadden LS (2008). Behind the Scenes with SAS. NESUG 2008 Proceedings.

Hadden LS, Zdeb M, Allison R (2007). Wow! You Did That Map with SAS/GRAPH®? NESUG 2007 Proceedings.

Ingenix Geo Networks.http://www.ingenix.com/content/attachments/GeoNetworks_brochure.pdf.Accessed February 2010.

Page 39: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

References (cont.)

Kamel Boulos MN, Roudsari AV, Carson ER (2001). Health Geomatics: An Enabling Suite of Technologies in Health and Healthcare. Journal of Biomedical Informatics. 34:195-219.

 Mink K, Zdeb M (2004). Using SAS to Model the Spread of Infectious Disease. SUGI 29 Proceedings.

SAS Institute. Calculate Distances Between Cities. http://support.sas.com/kb/24/897.html. Accessed April 2010.

Page 40: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Contact Info

Barbara B. Okerson, Ph.D., CPHQ, FAHMSenior Health Information Consultant National Accounts OutcomesHealth Management Corporation (HMC)8831 Park Central Drive, Suite 100Richmond, VA 23227Office: 804-662-5287Fax: 804-662-5364Email: [email protected]

Page 41: Distance Mapping With SAS® Barbara B. Okerson, PhD HMC

Questions?