Lý lịch
Tôi đang tiến hành phân tích tổng hợp bao gồm dữ liệu được công bố trước đó. Thông thường, sự khác biệt giữa các phương pháp điều trị được báo cáo với giá trị P, sự khác biệt nhỏ nhất có ý nghĩa (LSD) và các thống kê khác nhưng không cung cấp ước tính trực tiếp về phương sai.
Trong bối cảnh của mô hình mà tôi đang sử dụng, việc đánh giá quá cao phương sai là được.
Vấn đề
Dưới đây là danh sách các biến đổi để nơi S E = √ (Saville 2003)mà tôi đang xem xét, phản hồi đánh giá cao; bên dưới, tôi giả sử rằngα=0,05nên1- α / 2=0,975 và các biến thường được phân phối trừ khi có quy định khác:
Câu hỏi:
Hàm R để đóng gói các phương trình này:
Dữ liệu mẫu:
data <- data.frame(Y=rep(1,5), stat=rep(1,5), n=rep(4,5), statname=c('SD', 'MSE', 'LSD', 'HSD', 'MSD')
Ví dụ sử dụng:
transformstats(data)
Các
transformstats
chức năng:transformstats <- function(data) { ## Transformation of stats to SE ## transform SD to SE if ("SD" %in% data$statname) { sdi <- which(data$statname == "SD") data$stat[sdi] <- data$stat[sdi] / sqrt(data$n[sdi]) data$statname[sdi] <- "SE" } ## transform MSE to SE if ("MSE" %in% data$statname) { msei <- which(data$statname == "MSE") data$stat[msei] <- sqrt (data$stat[msei]/data$n[msei]) data$statname[msei] <- "SE" } ## 95%CI measured from mean to upper or lower CI ## SE = CI/t if ("95%CI" %in% data$statname) { cii <- which(data$statname == '95%CI') data$stat[cii] <- data$stat[cii]/qt(0.975,data$n[cii]) data$statname[cii] <- "SE" } ## Fisher's Least Significant Difference (LSD) ## conservatively assume no within block replication if ("LSD" %in% data$statname) { lsdi <- which(data$statname == "LSD") data$stat[lsdi] <- data$stat[lsdi] / (qt(0.975,data$n[lsdi]) * sqrt( (2 * data$n[lsdi]))) data$statname[lsdi] <- "SE" } ## Tukey's Honestly Significant Difference (HSD), ## conservatively assuming 3 groups being tested so df =2 if ("HSD" %in% data$statname) { hsdi <- which(data$statname == "HSD" & data$n > 1) data$stat[hsdi] <- data$stat[hsdi] / (qtukey(0.975, data$n[lsdi], df = 2)) data$statname[hsdi] <- "SE" } ## MSD Minimum Squared Difference ## MSD = t_{\alpha/2, 2n-2}*SD*sqrt(2/n) ## SE = MSD*n/(t*sqrt(2)) if ("MSD" %in% data$statname) { msdi <- which(data$statname == "MSD") data$stat[msdi] <- data$stat[msdi] * data$n[msdi] / (qt(0.975,2*data$n[lsdi]-2)*sqrt(2)) data$statname[msdi] <- "SE" } if (FALSE %in% c('SE','none') %in% data$statname) { print(paste(trait, ': ERROR!!! data contains untransformed statistics')) } return(data) }
Người giới thiệu
Saville 2003Can J. Exptl Tâm lý. (pdf)
Rosenberg và cộng sự 2004 (liên kết)
Wang và cộng sự. Năm 2000 Độc. và Hóa 19 (1): 113-117 (liên kết)