MuGen
Multitrait genetics
Public Member Functions | List of all members
BetaGrpPC Class Reference

Relationship matrix regression. More...

#include <MuGen.h>

Inheritance diagram for BetaGrpPC:
[legend]
Collaboration diagram for BetaGrpPC:
[legend]

Public Member Functions

 BetaGrpPC ()
 Default constructor.
 
 BetaGrpPC (const Grp &rsp, const string &predFlNam, const string &evFlNam, const size_t &Npred, RanIndex &up, const int &nThr)
 Constructor with a prior index. More...
 
 BetaGrpPC (const Grp &rsp, const string &predFlNam, const string &evFlNam, const size_t &Npred, RanIndex &low, RanIndex &up, const int &nThr)
 Constructor with a prior index and replication. More...
 
 BetaGrpPC (const Grp &rsp, const string &predFlNam, const string &evFlNam, const size_t &Npred, RanIndex &up, const string &outFlNam, const int &nThr)
 Constructor with a prior index, replication and output file name. More...
 
 BetaGrpPC (const Grp &rsp, const string &predFlNam, const string &evFlNam, const size_t &Npred, RanIndex &low, RanIndex &up, const string &outFlNam, const int &nThr)
 Constructor with a prior index and replication. More...
 
virtual ~BetaGrpPC ()
 Destructor.
 
 BetaGrpPC (const BetaGrpPC &mG)
 Copy constructor. More...
 
BetaGrpPCoperator= (const BetaGrpPC &mG)
 Assignment operator. More...
 
- Public Member Functions inherited from BetaGrpFt
 BetaGrpFt ()
 Default constructor.
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, const int &nThr)
 Simple constructor. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, RanIndex &up, const int &nThr)
 Simple constructor with a prior index. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, RanIndex &low, RanIndex &up, const int &nThr)
 Simple constructor with a prior index and replication. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, const string &outFlNam, const int &nThr)
 Simple constructor with output file name. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, RanIndex &up, const string &outFlNam, const int &nThr)
 Simple constructor with a prior index and output file name. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, RanIndex &low, RanIndex &up, const string &outFlNam, const int &nThr)
 Simple constructor with a prior index, replication and output file name. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, const double &absLab, const int &nThr)
 Missing data constructor. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, const double &absLab, RanIndex &up, const int &nThr)
 Missing data constructor with a prior index. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, const double &absLab, RanIndex &low, RanIndex &up, const int &nThr)
 Missing data constructor with a prior index and replication. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, const double &absLab, const string &outFlNam, const int &nThr)
 Missing data constructor with output file name. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, const double &absLab, RanIndex &up, const string &outFlNam, const int &nThr)
 Missing data constructor with a prior index and output file name. More...
 
 BetaGrpFt (const Grp &rsp, const string &predFlNam, const size_t &Npred, const double &absLab, RanIndex &low, RanIndex &up, const string &outFlNam, const int &nThr)
 Missing data constructor with a prior index, replication and output file name. More...
 
 BetaGrpFt (const Grp &rsp, const SigmaI &SigI, const string &predFlNam, const size_t &Npred, const double &Nmul, const double &rSqMax, RanIndex &up, const string &outFlNam, const int &nThr)
 Selection constructor. More...
 
 BetaGrpFt (const Grp &rsp, const SigmaI &SigI, const string &predFlNam, const size_t &Npred, const double &Nmul, const double &rSqMax, RanIndex &low, RanIndex &up, const string &outFlNam, const int &nThr)
 Selection constructor with replication. More...
 
 BetaGrpFt (const Grp &rsp, const SigmaI &SigI, const string &predFlNam, const size_t &Npred, const double &Nmul, const double &rSqMax, const double &absLab, RanIndex &up, const string &outFlNam, const int &nThr)
 Selection constructor with missing predictor data. More...
 
 BetaGrpFt (const Grp &rsp, const SigmaI &SigI, const string &predFlNam, const size_t &Npred, const double &Nmul, const double &rSqMax, const double &absLab, RanIndex &low, RanIndex &up, const string &outFlNam, const int &nThr)
 Selection constructor with missing predictor data and replication. More...
 
virtual ~BetaGrpFt ()
 Destructor.
 
 BetaGrpFt (const BetaGrpFt &mG)
 Copy constructor. More...
 
BetaGrpFtoperator= (const BetaGrpFt &mG)
 Assignment operator. More...
 
virtual const gsl_matrix * fMat () const
 Access to the fitted value matrix. More...
 
void save (const SigmaI &SigI)
 Store samples. More...
 
void dump ()
 Dump to a file. More...
 
double lnOddsRat (const Grp &y, const SigmaI &SigI, const size_t i) const
 Log-odds ratio. More...
 
void update (const Grp &dat, const SigmaI &SigIm)
 Gaussian likelihood, improper prior. More...
 
void update (const Grp &dat, const Qgrp &q, const SigmaI &SigIm)
 Student- \(t\) likelihood, improper prior. More...
 
virtual void update (const Grp &dat, const SigmaI &SigIm, const SigmaI &SigIp)
 Gaussian likelihood, 0-mean Gaussian prior. More...
 
virtual void update (const Grp &dat, const Qgrp &q, const SigmaI &SigIm, const SigmaI &SigIp)
 Student- \(t\) likelihood, 0-mean Gaussian prior. More...
 
virtual void update (const Grp &dat, const SigmaI &SigIm, const Qgrp &qPr, const SigmaI &SigIp)
 Gaussian likelihood, 0-mean Student- \(t\) prior. More...
 
virtual void update (const Grp &dat, const Qgrp &q, const SigmaI &SigIm, const Qgrp &qPr, const SigmaI &SigIp)
 Student- \(t\) likelihood, 0-mean Student- \(t\) prior. More...
 
virtual void update (const Grp &dat, const SigmaI &SigIm, const Grp &muPr, const SigmaI &SigIp)
 Gaussian likelihood, non-zero mean Gaussian prior. More...
 
virtual void update (const Grp &dat, const Qgrp &q, const SigmaI &SigIm, const Grp &muPr, const SigmaI &SigIp)
 Student- \(t\) likelihood, non-zero mean Gaussian prior. More...
 
virtual void update (const Grp &dat, const SigmaI &SigIm, const Grp &muPr, const Qgrp &qPr, const SigmaI &SigIp)
 Gaussian likelihood, non-zero mean Student- \(t\) prior. More...
 
virtual void update (const Grp &dat, const Qgrp &q, const SigmaI &SigIm, const Grp &muPr, const Qgrp &qPr, const SigmaI &SigIp)
 Student- \(t\) likelihood, non-zero mean Student- \(t\) prior. More...
 
- Public Member Functions inherited from Grp
virtual ~Grp ()
 Destructor.
 
virtual void save ()
 Save to pre-specified file. More...
 
virtual void save (const string &outFlNam)
 Save to file. More...
 
virtual void save (const string &outMuFlNam, const string &outSigFlNam, const SigmaI &SigI)
 Joint save. More...
 
virtual void save (const Grp &y, const SigmaI &SigI)
 Save with data and inverse-covariance. More...
 
void mhlSave (const string &outFlNam, const SigmaI SigI)
 Save Mahalanobis distance. More...
 
const vector< MVnorm * > & dataVec () const
 Get vector of row pointers. More...
 
virtual const gsl_matrix * dMat () const
 Access the value matrix. More...
 
const size_t Ndata () const
 Get number of rows. More...
 
const size_t phenD () const
 Get number of traits. More...
 
const MVnormoperator[] (const size_t i) const
 Subscript operator. More...
 
MVnormoperator[] (const size_t i)
 Subscript operator. More...
 
virtual MuGrp mean (RanIndex &grp)
 Group mean. More...
 
virtual const MuGrp mean (RanIndex &grp) const
 Group mean. More...
 
virtual MuGrp mean (RanIndex &grp, const Qgrp &q)
 Group weighted mean. More...
 
virtual const MuGrp mean (RanIndex &grp, const Qgrp &q) const
 Group weighted mean. More...
 
void center ()
 Center the value matrix. More...
 

Additional Inherited Members

- Protected Member Functions inherited from BetaGrpFt
virtual void _updateFitted ()
 Update fitted values.
 
void _rankPred (const gsl_matrix *y, const SigmaI &SigI, gsl_vector *XtX, gsl_permutation *prm)
 Rank predictors. More...
 
void _rankPred (const gsl_matrix *y, const SigmaI &SigI, const double &absLab, gsl_vector *XtX, gsl_permutation *prm)
 Rank predictors with missing data. More...
 
void _ldToss (const gsl_vector *var, const gsl_permutation *prm, const double &rSqMax, const size_t &Npck, vector< vector< size_t > > &idx, vector< vector< size_t > > &rLd, gsl_matrix *Xpck)
 Testing candidates for correlation. More...
 
virtual double _MGkernel (const Grp &dat, const SigmaI &SigI) const
 Gaussian kernel. More...
 
virtual double _MGkernel (const Grp &dat, const SigmaI &SigI, const size_t &prInd) const
 Gaussian kernel dropping one predictor. More...
 
- Protected Member Functions inherited from Grp
 Grp ()
 
- Protected Attributes inherited from BetaGrpFt
vector< vector< double > > _fittedEach
 Partial fitted value matrices. More...
 
gsl_matrix * _fittedAll
 Matrix of fitted values. More...
 
gsl_matrix * _valueSum
 Sample storage matrix. More...
 
gsl_matrix * _Xmat
 Predictor matrix. More...
 
int _nThr
 Number of threads.
 
double _numSaves
 Number of saves. More...
 
- Protected Attributes inherited from Grp
vector< MVnorm * > _theta
 Vector of pointers to value rows. More...
 
gsl_matrix * _valueMat
 Value matrix. More...
 
RanIndex_lowLevel
 Lower level index. More...
 
RanIndex_upLevel
 Upper level index. More...
 
vector< gsl_rng * > _rV
 Vector of PNG pointers. More...
 
string _outFlNam
 Name of the output file.
 

Detailed Description

Relationship matrix regression.

Implements regression models with principal components of a relationship matrix as predictors. Only principal vectors with non-zero eigenvalues are used. If the likelihood and the prior are Gaussian, and the prior mean is zero, this is equivalent to the "mixed model" in packages like EMMA and TASSEL. Because the PC vectors are orthonormal there are some speed-ups in initialization. The updates are handled by the same internal row classes as in BetaGrpFt.

Constructor & Destructor Documentation

◆ BetaGrpPC() [1/5]

BetaGrpPC::BetaGrpPC ( const Grp rsp,
const string &  predFlNam,
const string &  evFlNam,
const size_t &  Npred,
RanIndex up,
const int &  nThr 
)

Constructor with a prior index.

Reads principal vectors and eigen-values from files. Number of rows of the predictor is equal to the number of rows in the response (no replication).

Parameters
[in]Grp&data for initialization
[in]string&PC vector file name
[in]string&eigen-value file name
[in]size_t&number of predictors
[in]RanIndex&prior index
[in]int&number of threads

◆ BetaGrpPC() [2/5]

BetaGrpPC::BetaGrpPC ( const Grp rsp,
const string &  predFlNam,
const string &  evFlNam,
const size_t &  Npred,
RanIndex low,
RanIndex up,
const int &  nThr 
)

Constructor with a prior index and replication.

Reads principal vectors and eigen-values from files. Number of rows of the predictor is equal to the number of groups in the lower (data) index. The number of rows in the response is equal to the number of elements in the low index.

Parameters
[in]Grp&data for initialization
[in]string&PC vector file name
[in]string&eigen-value file name
[in]size_t&number of predictors
[in]RanIndex&lower-level (replicate) index
[in]RanIndex&prior index
[in]int&number of threads

◆ BetaGrpPC() [3/5]

BetaGrpPC::BetaGrpPC ( const Grp rsp,
const string &  predFlNam,
const string &  evFlNam,
const size_t &  Npred,
RanIndex up,
const string &  outFlNam,
const int &  nThr 
)

Constructor with a prior index, replication and output file name.

Reads principal vectors and eigen-values from files. Number of rows of the predictor is equal to the number of groups in the lower (data) index. The number of rows in the response is equal to the number of elements in the low index.

Parameters
[in]Grp&data for initialization
[in]string&PC vector file name
[in]string&eigen-value file name
[in]size_t&number of predictors
[in]RanIndex&lower-level (replicate) index
[in]RanIndex&prior index
[in]string&output file name
[in]int&number of threads

◆ BetaGrpPC() [4/5]

BetaGrpPC::BetaGrpPC ( const Grp rsp,
const string &  predFlNam,
const string &  evFlNam,
const size_t &  Npred,
RanIndex low,
RanIndex up,
const string &  outFlNam,
const int &  nThr 
)

Constructor with a prior index and replication.

Reads principal vectors and eigen-values from files. Number of rows of the predictor is equal to the number of groups in the lower (data) index. The number of rows in the response is equal to the number of elements in the low index.

Parameters
[in]Grp&data for initialization
[in]string&PC vector file name
[in]string&eigen-value file name
[in]size_t&number of predictors
[in]RanIndex&lower-level (replicate) index
[in]RanIndex&prior index
[in]string&output file name
[in]int&number of threads

◆ BetaGrpPC() [5/5]

BetaGrpPC::BetaGrpPC ( const BetaGrpPC mG)

Copy constructor.

Parameters
[in]BetaGrpPC&object to be copied

Member Function Documentation

◆ operator=()

BetaGrpPC & BetaGrpPC::operator= ( const BetaGrpPC mG)

Assignment operator.

Parameters
[in]BetaGrpPC&object to be copied
Returns
BetaGrpPC& target object

The documentation for this class was generated from the following files: