What causes a low explained variance in a PCA? I'm comparing three wine regions and have significantly higher samples of one of them. Will this cause the low explained variance <50%?
PCA always explains all the variance, if you include all the components. Therefore, I am guessing that what you mean is that the first (or perhaps first several) components explain less of the variance than you think they should.
What this means is that the variables do not "go together" as well as you think they do. This might simply mean that you were overly optimistic. A higher sample in one area will not, by itself, make the first (few) principal components lower.
PCA is a decomposition process. Meaning it takes an existing vector space and transforms it into another vector space.
If i understand correctly, you chose the first N components of the transformed vector space. If N is lower than the original vector space shape(number of features) then the explained variance might be lower than 100% and can basically range from 0-100.
It you used a specific package for the PCA, you can change the explained variance by setting the hyper-parameter(n_components in Sklrean.PCA) to something different.
Another thing to consider, explained variance lower than 50% is not that bad, depending on your thoughts on how good the features describe your problem domain.