Modelling complex interactions in spatio-temporal datasets