Calculate p.value for Heterogeneity statistics I2 in meta analysis

Share:

Description

Calculate p.value for Heterogeneity statistics I2 in meta analysis

Usage

1
2
I2.TradPerm(genotypeData, affectionData, split, sep, naString, 
    model = "allele", method = "MH", repeatNum = 1000)

Arguments

genotypeData

a matrix with one column and multiple rows, each row contains genotype data for case and control samples of certain study. Note the field separtor of each line must be same, and same with parameter 'affectionData'.

affectionData

a matrix with one column and multiple rows, each row contains the affection stats of case and control samples of certain study which must correspond to 'genotypeData'. Note the field separtor of each line must be same,and same with parameter 'genotypeData'.

split

the field separator character, which separates elements on each line of the parameter 'genotypeData' and 'affectionData'. 'Split' and 'sep' cannot be same.

sep

character separator used to divide genotype between alleles "Allele1<sep>Allele2" in parameter 'genotypeData'. 'Split' and 'sep' cannot be same.

naString

a character string for NA values of genotype data in parameter 'genotypeData'.

model

a character string indicating the type of model("allele"(default),"dominant" or "recessive") supplied to the data. The risk allele(see details) is marked as allele1. The allele model indicates allele1 versus allele2, the dominant model indicates <allele1/allele1> + <allele1/allele2> versus <allele2/allele2>, the recessive model indicates <allele1/allele1> versus <allele1/allele2> + <allele2/allele2>.

method

a character string indicating the method('Inverse','MH'(default) or 'Peto') to calculate Q value. See details.

repeatNum

an integer(default 1000) specifying the number of replicates used in the Monte Carlo permutation.

Details

Allele 1 and allele 2 to each study have OR values. The risk allele is the allele which the number of studies which OR>1 more than half of the number of all studies.

I2 is calculated by formula I2=max(Q-d.f./Q, 0), considering I2=1-24 moderate heterogeneity; I2=50-74

TradPerm details see chisq.TradPerm.

Value

risk_allele

the symbol of risk allele.See details.

I2

the I2 statistics for true meta data.

corrected_I2p

the p value for I2, the percentage of more than I2 value.

Note

'Split':the field separtor of each line for parameter 'genotypeData' and 'affectionData' must be same. 'Split' and 'sep' cannot be same.

Author(s)

Lanying Zhang and Yongshuai Jiang <jiangyongshuai@gmail.com>

References

Julian P.T.Higgins, Simon G.Thompson(Statistics in Medicine,2002): Quantifying heterogeneity in a meta-analysis.

Julian P.T.Higgins, Simon G.Thompson, Jonathan J Deeks(BMJ,2003):Measuring inconsistency in meta-analyses.

See Also

meta.MCPerm, meta.TradPerm, Q.TradPerm, I2.MCPerm, chisq.MCPerm, chisq.TradPerm, VS.Hist, VS.KS, VS.Allele.Hist, VS.Genotype.Hist, PermMeta.LnOR.Hist, PermMeta.LnOR.CDC, PermMeta.Hist

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
## import data
# data(MetaGenotypeData)
## delete first line which contains the names of each column
# temp=MetaGenotypeData[-1,];
# rowNum=nrow(temp)
# gen=matrix(0,nrow=rowNum,ncol=1);
# aff=matrix(0,nrow=rowNum,ncol=1);
# for(j in 1:rowNum){
	 # gen[j,]=paste(temp[j,14],temp[j,15],sep=" ");
	 # case_num=length(unlist(strsplit(temp[j,14],split=" ")));
	 # control_num=length(unlist(strsplit(temp[j,15],split=" ")));
	 # case_aff=paste(rep(2,case_num),collapse=" ");
	 # control_aff=paste(rep(1,control_num),collapse=" ");
	 # aff[j,]=paste(case_aff,control_aff,sep=" ");
# }
# result=I2.TradPerm(gen,aff,split=" ",sep="/",naString="-",
    # model="allele",method="MH",repeatNum=1000) 
# result

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.