1. A method of searching a plurality of data files, wherein each data file comprises a plurality of features; determining a plurality of feature groups, wherein each feature group comprises n features and n is an integer of 2 or more; expressing each data file as a file vector with components of the vector indicating the frequency of a feature group within the data file, wherein the n features which constitute a feature group do not have to be located adjacent to one another; expressing a search query using said feature groups as a vector; and searching said plurality of data files by comparing the search query expressed as a vector with said file vectors.