# Spatial interpolation of 30 weather stations to other areas

I have monthly (and sometimes daily) data on temperatures from about 30 Swedish weather stations in the mid-19th century that I want interpolate to the whole country. I'm using ArcGIS and Stata.

For later years, I have data on additional weather stations (around 100), so I've thought of using the later data as to calibrate a model using the old stations to predict weather at the new stations. Since I know the actual weather at the new stations, I could calibrate to model to achieve the best possible fit. But I'm not sure what a good method for going about achieving a suitable fit (don't want to risk overfitting for example).

You can likely get a reasonable interpolation using a linear regression (assuming your 30 weather stations are a representative sample) using elevation, latitude and distance from the coast as independent variables with the day as a factor. I've done this using ArcGIS and R previously.

Daily 9am and 3pm temperatures over 10 days in 2003 from weather stations in South Eastern Australia

## Basic steps:

• Get a digital elevation model of your area.
• Get vector or raster coastline
• Generate a latitude raster (example)
• Generate a distance from coast raster (perhaps with Euclidian Distance)
• For the variables that you don't have data for for each station, use the Sample or Extract Values to Points tool to query the relevant raster. I only needed to do this for distance from coast as my weather station data contained lon, lat and elevation.
• Plug elevation, lat and distance as independent variables, temperature as dependent variable and day as a factor into a linear regression model in r/spss/stata/etc...
• If you get a decent fit, use the model coefficients to create a raster calculator expression (temp = α + βelev*elev + βlat*lat + βdist*dist) to estimate temperature from elevation, lat and distance. You may need to script this as you'll get different coefficients for each day.