runGenphenSnp(genotype, phenotype, technique, fold.cv, boots)Using these two data types, it computes the association between each SNP and the phenotype. For each SNP two metrics are computed, called "effect size" and "classification accuracy".
The effect size of a given SNP is obtained by computing the Cohen's d statistics (Cohen 1988). The 95% confidence intervals are computed as well.
Classification accuracy is the second metric which is computed using statistical learning techniques. This is the metric which is used to quantify the strength of the association between a SNP and a phenotype. The idea is to use either linear suppport vector machines or random forests to build a classification model between the phenotype vector and the SNP vector. The more accurate the model, the easier we can predict the two allele states of the SNP from the phenotype and hence the stronger is the mutual association between the two vectors. In order to obtain a robust classification accuracy measure, the classification analysis is done in a bootstrapping fashion. First a subset of the SNP-phenotype vectors is randomly selected to train a classifier, while the remaining data is used to test the classifier. This step is repeated multiple times after which the classification accuracies of all the classifiers are averaged into a single classification accuracy measure and the corresponding confidence intervals are computed.
In order to validate the classification accuracy, the tool also computes the Cohen's kappa statistics (Cohen 1960) which compares the observed classification accuracy with the expected classification accuracy. If the expected and observed classification accuracies are in concordance, the computed association can be taken seriously, otherwise it can be discarded as noise.
Cohen, J. (1960) A coefficient of agreement for nominal scales.
data(genotype.snp)
#or data(genotype.snp.msa) in this case you cannot subset genotype.snp[, 1:3]
data(phenotype.snp)
genphen.results <- runGenphenSnp(genotype = genotype.snp[, 1:3],
phenotype = phenotype.snp, technique = "svm", fold.cv = 0.66, boots = 100)
Run the code above in your browser using DataLab