I am trying to validate a classifier using two different training and testing datasets.

The feature I am considering is a feature constructed doing the fold-change between two original features, i.e. $log2(feat_A / feat_b)$

The problem is that, across the two different datasets, I see the same distribution of fold-change across groups but with different values. See, in the images attached, the values for each group (each box) in the different datasets (each plot).

First Second

What may be causing the differences in fold-change? In this case the fold-change is different also in sign, which means that while in one dataset $feat_a$ is greater than $feat_b$, the opposite is true for the other dataset. However, the pairwise relation between the two groups (the two boxes in each plot) is maintained.

I was thinking about different normalization procedures on each feature across different dataset, which may explain the shift of the distribution of the fold-change. What other problems may be in these datasets?

  • $\begingroup$ Did you stratify your data? Also, sorry but only trying to double check, do you have any sequence numeric I’d field or date feature that might potentially be mislabeled and influence the result? $\endgroup$
    – The Lyrist
    Commented Jun 12, 2018 at 14:25

1 Answer 1


It'd be easier to understand if the plots were labeled. Nonetheless, I think I understand the question, and perhaps it's just sampling error. Why do you have two different pairs of train and test data? Are they from different sources? In that case, you probably don't want to be using the same classifier on both. Also, what do you mean 'validate' using two different train and test sets? Classifiers are trained on a train set, and validated on a test set, what do you mean you're validating on two different train/test pairs?

  • $\begingroup$ In each plot, each boxplot represents a group of samples. My task is to classify each sample correctly in the first or in the second group. If I train the classifier on the first dataset (first plot) I am unable to classify correctly the samples described by the second dataset (second plot). This is because a simple classifier would put a boundary in fold-change $= -2$ to split the distribution of the samples in the first plot (dataset). However, using the same classifier in the second plot (dataset) will fail to classify samples correctly, because all fold-changes are greater than $-2$. $\endgroup$
    – gc5
    Commented Sep 20, 2016 at 7:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.