Does anyone know how to count points within radius of another point when a time/temporal condition is met in QGIS?

I assume I need to create buffer zones, but I do not know how to then count occurrences within each buffer zone based on TIME or DATE and then export this to a csv file.

A more detailed explanation of the problem: I need to create a radius buffer zone around a fixed point (A house sale at a specific location on a specific date) and then count the number of interactions within that radius with a separate dataset (Airbnb reviews specified by date and location) - I'm looking to count the number of active Airbnb listings within a given radius of each house sale in the 12 months leading up to the sale date. I need to do this for 1,000s of sales.

I'm not sure where to start. Can QGIS solve this?

1 Answer 1


I'm sure there's more than one way to approach this with QGIS. One way would be to use the processing graphic modeler. You can use this tool to map out a process, and then run the process as many times as needed with different inputs.

Here is a rough outline of a process you could use, along with a suggested tool for each step.

Setup: Create the csv file that will store your output.

  1. Create a buffer around a house sale point.

    QGIS geoalgorithms > Vector geometry tools > Fixed distance buffer > temporary output

  2. Filter the AirBNB review point layer by date range.

    SAGA > Vector points tools > Points filter

  3. Count the points of the filtered AirBNB layer that fall within the buffer created in step 1.

    QGIS geoalgorithms > Vector analysis tools > Count points in polygon

  4. Add a feature to the csv file. Use the Field Calculator to edit the new feature's attributes to include the count from step 4, along with any other necessary attributes.

    QGIS geoalgorithms > Vector table tools > Field calculator

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.