I'm in the process of performing a genetic association test on WGS data using Bioconductor packages and I'm at a road block. My workflow (simplified) looks like this:
1) (convertVCF2GDS.R) Convert my VCF files to GDS files using SNPRelate
2) (relatednessMatrix.R) Using the SNPRelate package, I filter the SNPs in my GDS file via LD Pruning (snpgdsLDPruning) and compute a GRM matrix (snpgdsGRM). I then export the matrix to a csv.
3) (GENESIS-1.0.R) I import the genotype/phenotype files, matrix csv and the vector of pruned SNPs and fit the null model with a binomial error distribution using as input:
a) a scanAnnotationDataFrame object created from the phenotype file
b) a vector of sample ids to include
c) the imported matrix
When I run the following line of code:
nullmod.SNPRelate <- fitNullMM(scanData = SNPRelate.scanAnnot, outcome = "pheno", family = binomial, covMatList = cgtaMatrix, verbose=TRUE, scan.include=both)
it runs for a moment and then gives an error:
Reading in Phenotype and Covariate Data...
Fitting Model with 2872 Samples
Computing Variance Component Estimates using AIREML Procedure...
Sigma2_A log-lik RSS
[1] 0.0100000 -6068.9203405 0.9978943
[1] 9.999474e-03 -6.068920e+03 9.978944e-01
[1] 4.508873e-03 -6.068887e+03 9.992358e-01
[1] 4.461980e-04 -6.068867e+03 1.000238e+00
[1] 6.909751e-05 -6.068865e+03 1.000331e+00
[1] 2.346956e-05 -6.068865e+03 1.000342e+00
[1] 0.000000 -6068.864949 1.000348
Error in solve.default(AI, score) : 'a' is 0-diml
Does anyone have any idea what this means?
It seems to work with fitNullMM(scanData, family= binomial, dropZeros =F) or with family = gaussian rather than binary