// Start is called before the first frame update
    void Start()
    {
        trainingPoints                  = GetDatapointsFromCSV(trainingData, true);
        verificationPointsTest          = GetDatapointsFromCSV(verificationData, false);
        verificationPointsTestWithChurn = GetDatapointsFromCSV(verificationData, true);

        //Cluster everything
        KClusterer kClusterer = new KClusterer();

        clustersByCenters = kClusterer.Cluster(trainingPoints);
    }
    //Calculates out the distortion
    public void CalculateDistortion()
    {
        float distortion = 0;

        foreach (KeyValuePair <Datapoint, List <Datapoint> > kvp in clustersByCenters)
        {
            foreach (Datapoint d in kvp.Value)
            {
                distortion += KClusterer.Distance(kvp.Key, d);
            }
        }
        distortion /= ((float)clustersByCenters.Keys.Count);
        Debug.Log("Total Distortion: " + distortion);
    }