Question: How to standardize iHS, NSL and XP-EHH scores
gravatar for eyb
4.4 years ago by
Russian Federation
eyb190 wrote:

I have calculated a bunch of scores for my data using selscan software. How do I standardize the results? At the moment I am using the following Python line: -np.log10(st.mstats.zscore(t[7])) Am I doing this right?

Description of the function zscore: Calculates the z score of each value in the sample, relative to the sample mean and standard deviation.

snp selection • 2.5k views
ADD COMMENTlink modified 4.4 years ago by patel.ravip60 • written 4.4 years ago by eyb190
gravatar for patel.ravip
4.4 years ago by
patel.ravip60 wrote:

Hi eyb

selscan itself has a built in standardizing binary you can use ("norm"). However, in the past, I have done it in the following way: 1) read in all derived (or ancestral; it doesn't matter as long as you are consistent across all sites) allele frequencies and iHS scores into a table you can manipulate (pandas in Python works well) 2) bin your sites by 1% allele frequency (or larger depending on your total number of sites. For fewer sites, use larger bins; if you have entire chromosomes/large number of sites, e.g., 100,000+, with iHS scores, use 1%) 3) Use the zscore method you have been using on each bin separately. Or, you can calculate the mean and manually for each of the iHS scores for a given AF bin, and use that to get a z-score that way. I am not familiar with the zscore method in scipy, but I imagine it does exactly this.

Voight mentioned in the iHS paper that the score should be standardized among sites that have a similar AF (which is why you bin the sites by AF before calculating a z-score). What you are doing currently is standardizing across the whole spectrum of AF.

ADD COMMENTlink modified 4.4 years ago • written 4.4 years ago by patel.ravip60
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 948 users visited in the last hour