In the end, I think the availability of guns is the biggest factor, and is the one which could be controlled the most.
As others have stated, a very small number of people will turn very violent and attack others for a whole number of reasons which have to be assessed on a case-by-case basis...