I'm looking for a new flat in London.
In QGIS, I have:
- A vector layer with polygons of each of London MSOA (sub-wards level area), with some statistical data (median house price, crime, etc).
- A vector layer with train/tube stations as points, with a data table of the commute time from each station to my work destination.
I want to be able to filter the MSOAs by parameters (e.g. commute time, house prices, crime), so that I can only see those particular areas in London that meet my targets.
I need to get the commute times for each MSOA.
I was thinking I need to do this analysis:
- For each MSOA:
- Find every station in 2km range from the MSOA centroid
- For each station:
- Calculate the time to walk from the centroid to the station (straight line - no network analysis!) e.g. walkTime=distance/75
- Sum the walk and commute time e.g. totalCommuteTime = walkTime + station['commuteTime']
- Select the first station with the least total commute time
- Add to the MSOA data table the selected station and the total commute time
Any suggestion on how to achieve this?
Distance matrix
or QGIS expressions withoverlay_nearest()
function (since QGIS 3.16).