1. A computer implemented method of optimising a model Mx suitable for use in data analysis and determining a prognostic outcome specific to a particular subject (input vector x), the subject comprising a number of variable features in relation to a scenario of interest for which there is a global dataset D of samples also having the same features relating to the scenario, and for which the outcome is known, the method comprising: a) determining what number and a subset Vx of variable features will be used in assessing the outcome for the input vector x; b) determining what number Kx of samples from within the global data set D will form a neighbourhood about x; c) selecting suitable Kx samples from the global data set which have the variable features that most closely accord to the variable features of the particular subject x to form the neighbourhood Dx; d) ranking the Vx variable features within the neighbourhood Dx in order of importance to the outcome of vector x and obtaining a weight vector Wx for all variable features Vx; e) creating a prognostic model Mx, having a set of model parameters Px and the other parameters from elements a)-d); f) testing the accuracy of the model Mx at element e) for each sample from Dx; g) storing both the accuracy from element f), and the model parameters developed in elements a) to e); h) repeating elements a) and/or b) whilst applying an optimisation procedure to optimise Vx and/or Kx, to determine their optimal values, before repeating elements c)-h) until maximum accuracy at element f) is achieved.