Unsupervised learning doubts


1) How to determine t-value while forming clusters? In IRIS you selected 3.5, if I select 3 which is the number of classes of target variable, I get four clusters-1,2,3,4. I mean how come it was 3.5 exactly and not 3 or 4 or something else.
2) How to determine when to use which type of criterion (such as maxclust) while creating fcluster?
3) How is kmeans in scipy module used for classification? In sklearn module, it gives us class if we call labels_ function but how to use in scipy module?
4) In unsupervised algorithms, don't we do data wrangling such as outlier removal, checking correlations etc which we do in supervised algorithms?
5) Can we use PCA in a dataset where linear regression model is to be used?