How to decide the numbers of row & column clusters for co-clustering I want to use the blockcluster package in R to perform co-clustering on my data. But the function requires the number of row and column clusters to be prespecified. How do you decide the numbers of row and column clusters? Shall I do k-means clustering on the rows and columns separately prior to the use of blockcluster? 
 A: I am not an expert on co-clustering but two things come immediately in mind:


*

*Use the ICL (Integrated Clustering Likelihood [1]) value provided directly by each object for comparison.

*Use the pseudo-likelihood provided to get a hand-wavy pseudo-AIC/BIC version to compare different clusterings. The product of the the number of row ($l$) and column ($m$) clusters would be the obvious $k$.


I would not suggest using separate $k$-means for rows and then for columns (or vice versa) to determine a final $l,m$ value pair. This approach would be fail to control for the information included in the complementary dimension than the one used. Having said that, it is probably good to try this to determine some initial values to  try when checking different clusterings based on ICL/AIC/etc.
[1]: Biernacki, C., Celeux, G., Govaert, G. (2000). Assessing a mixture model for clustering with the integrated completed likelihood. IEEE Trans. Pattern Analysis and Machine Intelligence, 22 (7), 719-725.
