I have one sample of values, each of them is a z-score from mutually independent z-scored distributions. I aimed at testing that the mean value of the sample is larger than zero. Originally I wanted to test it using one-sample permutation test, however, the z-scored distributions turn out to be skewed, so the sign flipping seems to be invalid. The distributions are skewed in a way, where most of the datapoints are negative but close to zero, while some of the data are positive with higher absolute value. Which test is appropriate in this situation?
Data. Here is a right skewed sample that has some negative values, but a sample average $A$ somewhat above $0.$
set.seed(1234) n = 200; x = rexp(n, .1) - 8 a.obs = mean(x); a.obs  2.045604 stripchart(x, pch="|") abline(v = mean(x), col="greens")
Permutation test. Now we use the sample mean as metric, permute signs of
the $n = 200$ observations, and find the average
a.perm of the
sign-permuted data. With $10\,000$ such values
we can get a good idea of the permutation distribution sample averages.
The null hypothesis that the mean is $0$
for the distribution from which
x was randomly sampled
is rejected. The P-value of the test is about $0.0035 < .05 = 5\%.$
set.seed(326) a.prm = replicate(10^4, mean(sample(c(-1,1),n,rep=T)*x)) mean(abs(a.prm)>=abs(a.obs))  0.0035 # P-value of permutation test hist(a.prm, prob=T, br=30, col="skyblue2", main="Permutation Dist'n") abline(v = c(a.obs,-a.obs), lwd=2, col="red", lty="dotted")