1. A computer-implemented method for clustering input data, comprising: receiving data; reading a sample of the received data having a predetermined window length; checking the read data for uncertainty and/or robustness; and determining the clustering approach to be used to cluster the received data based on the outcome of the checking.