I am using code from [Using BIC to estimate the number of k in KMEANS](https://stats.stackexchange.com/questions/90769/using-bic-to-estimate-the-number-of-k-in-kmeans/251169#251169) (answer by Prabhath Nanisetty) to find BIC values for K-means using different number of components. However, using iris dataset, I get following results: 

```
N_clusters        BIC  
1         -863.896405          
2         -674.133038          
3         -616.557809           
4         -603.357368           
5         -582.428798           
6         -596.073710           
7         -590.086212           
8         -579.876476           
9         -554.665433           

```

This is shown in following plot: 

[![enter image description here](https://i.stack.imgur.com/nJWI5.png)](https://i.stack.imgur.com/nJWI5.png)

The plot after standardization of data: 

[![enter image description here](https://i.stack.imgur.com/o1Guw.png)](https://i.stack.imgur.com/o1Guw.png)

Is is normal to have negative values for BIC. Which is the best number of clusters by BIC here, especially considering that iris data set has 3 groups? Most negative value in above list is for 1 cluster only.