# descriptive_APA(dataset = mtcars, group = mtcars$vs, measures = c('mpg', 'disp', 'hp', 'drat', 'wt', 'qsec'))
# descriptive_APA(dataset = mtcars, group = mtcars$vs, measures = c('mpg', 'disp', 'hp', 'drat', 'wt', 'qsec'), bonferroni.correction = T)
descriptive_APA <- function(dataset, group, measures = '', filename = NULL, bonferroni.correction = FALSE){
require(compute.es)
if(nlevels(as.factor(group)) == 2) {
g.name <- (as.character(substitute(group)[[3]]))
gg <- levels(as.factor(group))
lev <- (as.numeric(as.factor(group)))
name.g.1 <- paste(substitute(gg))[[1]]
name.g.2 <- paste(substitute(gg))[[2]]
dataset <- dataset[, measures]
t.res <- list()
p.value <- list()
t.value <- list()
t.APA <- list()
v.APA <- list()
d <- list()
M.1 <- list()
M.2 <- list()
SD.1 <- list()
SD.2 <- list()
N.1 <- list()
N.2 <- list()
CV.1 <- list()
CV.2 <- list()
for(i in 1:dim(dataset)[2]) {
N.1[i] <- length(na.omit(dataset[,i][group == name.g.1]))
N.2[i] <- length(na.omit(dataset[,i][group == name.g.2]))
M.1[i] <- mean(dataset[,i][group == name.g.1], na.rm=TRUE)
M.2[i] <- mean(dataset[,i][group == name.g.2], na.rm=TRUE)
SD.1[i] <- sd(dataset[,i][group == name.g.1], na.rm=TRUE)
SD.2[i] <- sd(dataset[,i][group == name.g.2], na.rm=TRUE)
CV.1[i] <- round((as.numeric(SD.1[i])/as.numeric(M.1[i]))*100, 2)
CV.2[i] <- round((as.numeric(SD.2[i])/as.numeric(M.2[i]))*100, 2)
v <- var.test(dataset[,i] ~ group)
if(v$p.value < .05)
{var.equal <- FALSE}
else {var.equal <- TRUE}
t.res <- t.test(dataset[,i] ~ group, var.equal = var.equal)
p.value[i] <- t.res$p.value
t.value[i] <- t.res$statistic
d[i] <- abs(compute.es::tes(as.numeric(t.value[i]), as.numeric(N.1[i]), as.numeric(N.2[i]), verbose = FALSE)$d)
t.APA[i] <- paste('t(', round(t.res$parameter, 2),')=',round(abs(t.res$statistic),2),
', p', symnum(t.res$p.value, legend = F, corr = FALSE, na = FALSE,
cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", ">.05")),
', d=', d[i],
sep = '')
v.APA[i] <- paste('F(', as.numeric(v$parameter[1]),',',as.numeric(v$parameter[2]),')=',round(as.numeric(v$statistic),2),
', p=', round(as.numeric(v$p.value),4), sep = '')
}
p.value <- unlist(p.value)
#-------------------------------------------|
#-------------------------------------------| Bonferroni
if(bonferroni.correction == TRUE) {
N <- length(measures)
p.value <- p.value * N
} else {
p.value <- p.value
}
#-------------------------------------------| Bonferroni
#-------------------------------------------|
df <- data.frame(
N1 = unlist(N.1),
M1 = round(unlist(M.1),2),
SD1 = round(unlist(SD.1),2),
CV1 = unlist(CV.1),
N2 = unlist(N.2),
M2 = round(unlist(M.2),2),
SD2 = round(unlist(SD.2),2),
CV2 = unlist(CV.2),
Msd1 = paste('(','M=',round(unlist(M.1),2),', SD=',round(unlist(SD.1),2),')', sep = ''),
Msd2 = paste('(','M=',round(unlist(M.2),2),', SD=',round(unlist(SD.2),2),')', sep = ''),
t.value = round(abs(unlist(t.value)), 2),
sym = symnum((p.value), legend = F, corr = FALSE, na = FALSE,
cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 100), symbols = c("***", "**", "*", ".", " ")),
p = symnum((p.value), legend = F, corr = FALSE, na = FALSE,
cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 0.1, 100), symbols = c("<.0001", "<.001", "<.01", "<.05", " ", " ")),
p.exact = round(unlist(p.value), 6),
"Cohen d" = abs(unlist(d)),
t.APA = unlist(t.APA),
v.APA = unlist(v.APA)
)
sign <- intToUtf8(0177)
df$M.sd1 <- paste(df$M1, sign, df$SD1)
df$M.sd2 <- paste(df$M2, sign, df$SD2)
if(bonferroni.correction == TRUE) {
names(df)[names(df) == 'p.exact'] <- 'p.corrected'
} else {
names(df)[names(df) == 'p.exact'] <- 'p.exact'
}
names(df)[names(df) == 'N1'] <- paste('N_', name.g.1, sep = '')
names(df)[names(df) == 'N2'] <- paste('N_', name.g.2, sep = '')
names(df)[names(df) == 'M1'] <- paste('M_', name.g.1, sep = '')
names(df)[names(df) == 'M2'] <- paste('M_', name.g.2, sep = '')
names(df)[names(df) == 'SD1'] <- paste('SD_', name.g.1, sep = '')
names(df)[names(df) == 'SD2'] <- paste('SD_', name.g.2, sep = '')
names(df)[names(df) == 'CV1'] <- paste('CV_', name.g.1, sep = '')
names(df)[names(df) == 'CV2'] <- paste('CV_', name.g.2, sep = '')
names(df)[names(df) == 'Msd1'] <- paste('Msd_', name.g.1, sep = '')
names(df)[names(df) == 'Msd2'] <- paste('Msd_', name.g.2, sep = '')
names(df)[names(df) == 'M.sd1'] <- paste('M.sd_', name.g.1, sep = '')
names(df)[names(df) == 'M.sd2'] <- paste('M.sd_', name.g.2, sep = '')
rownames(df) <- measures
if(!is.null(filename)) {
if(grepl('.csv', filename)) {filename <- (filename)}
else {filename <- paste(filename, '.csv', sep = '')}
write.csv(df, file = filename)
print(df)
cat(paste('The file ', filename,' has been saved in ', getwd()), rep('\n', 3), sep = '')
}
if(is.null(filename)) {
df <- df[, c(18,1,19,5,16,14,12,15)]
print(df)
}
}
#######################################################################################################################.
#######################################################################################################################.
#######################################################################################################################.
#######################################################################################################################.
if(nlevels(as.factor(group)) == 3) {
g.name <- (as.character(substitute(group)[[3]]))
gg <- levels(as.factor(group))
lev <- (as.numeric(as.factor(group)))
name.g.1 <- paste(substitute(gg))[[1]]
name.g.2 <- paste(substitute(gg))[[2]]
name.g.3 <- paste(substitute(gg))[[3]]
# print(name.g.1)
# print(name.g.2)
# print(name.g.3)
dataset <- dataset[, measures]
M.1 <- list()
M.2 <- list()
M.3 <- list()
SD.1 <- list()
SD.2 <- list()
SD.3 <- list()
N.1 <- list()
N.2 <- list()
N.3 <- list()
CV.1 <- list()
CV.2 <- list()
CV.3 <- list()
res.AOV <- list()
p_2.1 <- list()
p_3.1 <- list()
p_3.2 <- list()
for(i in 1:dim(dataset)[2]) {
N.1[i] <- length(na.omit(dataset[,i][group == name.g.1]))
N.2[i] <- length(na.omit(dataset[,i][group == name.g.2]))
N.3[i] <- length(na.omit(dataset[,i][group == name.g.3]))
M.1[i] <- mean(dataset[,i][group == name.g.1], na.rm=TRUE)
M.2[i] <- mean(dataset[,i][group == name.g.2], na.rm=TRUE)
M.3[i] <- mean(dataset[,i][group == name.g.3], na.rm=TRUE)
SD.1[i] <- sd(dataset[,i][group == name.g.1], na.rm=TRUE)
SD.2[i] <- sd(dataset[,i][group == name.g.2], na.rm=TRUE)
SD.3[i] <- sd(dataset[,i][group == name.g.3], na.rm=TRUE)
CV.1[i] <- round((as.numeric(SD.1[i])/as.numeric(M.1[i]))*100, 2)
CV.2[i] <- round((as.numeric(SD.2[i])/as.numeric(M.2[i]))*100, 2)
CV.3[i] <- round((as.numeric(SD.3[i])/as.numeric(M.3[i]))*100, 2)
aov.out <- aov(dataset[,i] ~ group)
summm <- summary(aov.out)
p <- summm[[1]][["Pr(>F)"]][[1]]
f <- summm[[1]][["F value"]][[1]]
degreeF <- paste('(',
summm[[1]][["Df"]][[1]], ',', summm[[1]][["Df"]][[2]],
')', sep = ''
)
res.AOV[i] <- paste('F', degreeF, '=', round(f,2), ', ', 'p=', round(p, 4), sep = '')
res <- TukeyHSD(aov.out)
# print(res)
p_2.1[i] <- symnum(res$group[1,4], legend = F, corr = FALSE, na = FALSE,
cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
p_3.1[i] <- symnum(res$group[2,4], legend = F, corr = FALSE, na = FALSE,
cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
p_3.2[i] <- symnum(res$group[3,4], legend = F, corr = FALSE, na = FALSE,
cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
# print(p_2.1)
# print(p_3.1)
# print(p_3.2)
# t.res <- t.test(dataset[,i] ~ group, var.equal = var.equal)
# p.value[i] <- t.res$p.value
# t.value[i] <- t.res$statistic
# d[i] <- abs(compute.es::tes(as.numeric(t.value[i]), as.numeric(N.1[i]), as.numeric(N.2[i]), verbose = FALSE)$d)
# t.APA[i] <- paste('t(', round(t.res$parameter, 2),')=',round(abs(t.res$statistic),2),
# ', p', symnum(t.res$p.value, legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", ">.05")),
# ', d=', d[i],
# sep = '')
# v.APA[i] <- paste('F(', as.numeric(v$parameter[1]),',',as.numeric(v$parameter[2]),')=',round(as.numeric(v$statistic),2),
# ', p=', round(as.numeric(v$p.value),4), sep = '')
}
df <- data.frame(
N1 = unlist(N.1),
M1 = round(unlist(M.1),2),
SD1 = round(unlist(SD.1),2),
CV1 = unlist(CV.1),
N2 = unlist(N.2),
M2 = round(unlist(M.2),2),
SD2 = round(unlist(SD.2),2),
CV2 = unlist(CV.2),
N3 = unlist(N.3),
M3 = round(unlist(M.3),2),
SD3 = round(unlist(SD.3),2),
CV3 = unlist(CV.3),
Msd1 = paste('(','M=',round(unlist(M.1),2),', SD=',round(unlist(SD.1),2),')', sep = ''),
Msd2 = paste('(','M=',round(unlist(M.2),2),', SD=',round(unlist(SD.2),2),')', sep = ''),
Msd3 = paste('(','M=',round(unlist(M.3),2),', SD=',round(unlist(SD.3),2),')', sep = ''),
p_2.1 <- unlist(p_2.1),
p_3.1 <- unlist(p_3.1),
p_3.2 <- unlist(p_3.2),
res.AOV <- unlist(res.AOV)
# t.value = round(abs(unlist(t.value)), 2),
# sym = symnum(unlist(p.value), legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " ")),
# p = symnum(unlist(p.value), legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", " ", " ")),
# p.exact = round(unlist(p.value), 6),
# "Cohen d" = abs(unlist(d)),
#
# t.APA = unlist(t.APA),
# v.APA = unlist(v.APA)
)
# print(colnames(df))
sign <- intToUtf8(0177)
df$M.sd1 <- paste(df$M1, sign, df$SD1)
df$M.sd2 <- paste(df$M2, sign, df$SD2)
df$M.sd3 <- paste(df$M3, sign, df$SD3)
names(df)[names(df) == 'N1'] <- paste('N_', name.g.1, sep = '')
names(df)[names(df) == 'N2'] <- paste('N_', name.g.2, sep = '')
names(df)[names(df) == 'N3'] <- paste('N_', name.g.3, sep = '')
names(df)[names(df) == 'M1'] <- paste('M_', name.g.1, sep = '')
names(df)[names(df) == 'M2'] <- paste('M_', name.g.2, sep = '')
names(df)[names(df) == 'M3'] <- paste('M_', name.g.3, sep = '')
names(df)[names(df) == 'SD1'] <- paste('SD_', name.g.1, sep = '')
names(df)[names(df) == 'SD2'] <- paste('SD_', name.g.2, sep = '')
names(df)[names(df) == 'SD3'] <- paste('SD_', name.g.3, sep = '')
names(df)[names(df) == 'CV1'] <- paste('CV_', name.g.1, sep = '')
names(df)[names(df) == 'CV2'] <- paste('CV_', name.g.2, sep = '')
names(df)[names(df) == 'CV3'] <- paste('CV_', name.g.3, sep = '')
names(df)[names(df) == 'Msd1'] <- paste('Msd_', name.g.1, sep = '')
names(df)[names(df) == 'Msd2'] <- paste('Msd_', name.g.2, sep = '')
names(df)[names(df) == 'Msd3'] <- paste('Msd_', name.g.3, sep = '')
names(df)[names(df) == 'M.sd1'] <- paste('M.sd_', name.g.1, sep = '')
names(df)[names(df) == 'M.sd2'] <- paste('M.sd_', name.g.2, sep = '')
names(df)[names(df) == 'M.sd3'] <- paste('M.sd_', name.g.3, sep = '')
names(df)[names(df) == 'p_2.1....unlist.p_2.1.'] <- paste(name.g.2, '_',name.g.1, sep = '')
names(df)[names(df) == 'p_3.1....unlist.p_3.1.'] <- paste(name.g.3, '_',name.g.1, sep = '')
names(df)[names(df) == 'p_3.2....unlist.p_3.2.'] <- paste(name.g.2, '_',name.g.2, sep = '')
names(df)[names(df) == 'res.AOV....unlist.res.AOV.'] <- 'F Statistics'
# names(df)[names(df) == 'p_2.1....unlist.p_2.1.'] <- paste('p___', name.g.2, '_',name.g.1, '__|', sep = '')
# names(df)[names(df) == 'p_3.1....unlist.p_3.1.'] <- paste('p___', name.g.3, '_',name.g.1, '__|', sep = '')
# names(df)[names(df) == 'p_3.2....unlist.p_3.2.'] <- paste('p___', name.g.2, '_',name.g.2, '__|', sep = '')
print(colnames(df))
rownames(df) <- measures
if(!is.null(filename)) {
if(grepl('.csv', filename)) {filename <- (filename)}
else {filename <- paste(filename, '.csv', sep = '')}
write.csv(df, file = filename)
print(df)
cat(paste('The file ', filename,' has been saved in ', getwd()), rep('\n', 3), sep = '')
}
if(is.null(filename)) {
# df <- df[, c(18,19,16,12,14,15)]
df <- df[, c(20,1,
21,5,
22,9,
19, # F statistics
16, 17, 18)] # p symbols
print(df)
}
}
}
# descriptive_APA <- function(dataset, group, measures = '', filename = NULL){
# require(compute.es)
#
# if(nlevels(as.factor(group)) == 2) {
# g.name <- (as.character(substitute(group)[[3]]))
# gg <- levels(as.factor(group))
# lev <- (as.numeric(as.factor(group)))
# name.g.1 <- paste(substitute(gg))[[1]]
# name.g.2 <- paste(substitute(gg))[[2]]
# dataset <- dataset[, measures]
#
# t.res <- list()
# p.value <- list()
# t.value <- list()
#
# t.APA <- list()
# v.APA <- list()
#
# d <- list()
#
# M.1 <- list()
# M.2 <- list()
# SD.1 <- list()
# SD.2 <- list()
# N.1 <- list()
# N.2 <- list()
# CV.1 <- list()
# CV.2 <- list()
#
# for(i in 1:dim(dataset)[2]) {
# N.1[i] <- length(na.omit(dataset[,i][group == name.g.1]))
# N.2[i] <- length(na.omit(dataset[,i][group == name.g.2]))
# M.1[i] <- mean(dataset[,i][group == name.g.1], na.rm=TRUE)
# M.2[i] <- mean(dataset[,i][group == name.g.2], na.rm=TRUE)
# SD.1[i] <- sd(dataset[,i][group == name.g.1], na.rm=TRUE)
# SD.2[i] <- sd(dataset[,i][group == name.g.2], na.rm=TRUE)
# CV.1[i] <- round((as.numeric(SD.1[i])/as.numeric(M.1[i]))*100, 2)
# CV.2[i] <- round((as.numeric(SD.2[i])/as.numeric(M.2[i]))*100, 2)
#
# v <- var.test(dataset[,i] ~ group)
#
# if(v$p.value < .05)
# {var.equal <- FALSE}
# else {var.equal <- TRUE}
#
# t.res <- t.test(dataset[,i] ~ group, var.equal = var.equal)
# p.value[i] <- t.res$p.value
# t.value[i] <- t.res$statistic
# d[i] <- abs(compute.es::tes(as.numeric(t.value[i]), as.numeric(N.1[i]), as.numeric(N.2[i]), verbose = FALSE)$d)
# t.APA[i] <- paste('t(', round(t.res$parameter, 2),')=',round(abs(t.res$statistic),2),
# ', p', symnum(t.res$p.value, legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", ">.05")),
# ', d=', d[i],
# sep = '')
# v.APA[i] <- paste('F(', as.numeric(v$parameter[1]),',',as.numeric(v$parameter[2]),')=',round(as.numeric(v$statistic),2),
# ', p=', round(as.numeric(v$p.value),4), sep = '')
# }
#
# df <- data.frame(
# N1 = unlist(N.1),
# M1 = round(unlist(M.1),2),
# SD1 = round(unlist(SD.1),2),
# CV1 = unlist(CV.1),
#
# N2 = unlist(N.2),
# M2 = round(unlist(M.2),2),
# SD2 = round(unlist(SD.2),2),
# CV2 = unlist(CV.2),
#
# Msd1 = paste('(','M=',round(unlist(M.1),2),', SD=',round(unlist(SD.1),2),')', sep = ''),
# Msd2 = paste('(','M=',round(unlist(M.2),2),', SD=',round(unlist(SD.2),2),')', sep = ''),
#
# t.value = round(abs(unlist(t.value)), 2),
# sym = symnum(unlist(p.value), legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " ")),
# p = symnum(unlist(p.value), legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", " ", " ")),
# p.exact = round(unlist(p.value), 6),
# "Cohen d" = abs(unlist(d)),
#
# t.APA = unlist(t.APA),
# v.APA = unlist(v.APA)
# )
#
# sign <- intToUtf8(0177)
# df$M.sd1 <- paste(df$M1, sign, df$SD1)
# df$M.sd2 <- paste(df$M2, sign, df$SD2)
#
# names(df)[names(df) == 'N1'] <- paste('N_', name.g.1, sep = '')
# names(df)[names(df) == 'N2'] <- paste('N_', name.g.2, sep = '')
# names(df)[names(df) == 'M1'] <- paste('M_', name.g.1, sep = '')
# names(df)[names(df) == 'M2'] <- paste('M_', name.g.2, sep = '')
# names(df)[names(df) == 'SD1'] <- paste('SD_', name.g.1, sep = '')
# names(df)[names(df) == 'SD2'] <- paste('SD_', name.g.2, sep = '')
# names(df)[names(df) == 'CV1'] <- paste('CV_', name.g.1, sep = '')
# names(df)[names(df) == 'CV2'] <- paste('CV_', name.g.2, sep = '')
# names(df)[names(df) == 'Msd1'] <- paste('Msd_', name.g.1, sep = '')
# names(df)[names(df) == 'Msd2'] <- paste('Msd_', name.g.2, sep = '')
# names(df)[names(df) == 'M.sd1'] <- paste('M.sd_', name.g.1, sep = '')
# names(df)[names(df) == 'M.sd2'] <- paste('M.sd_', name.g.2, sep = '')
#
# rownames(df) <- measures
#
# if(!is.null(filename)) {
# if(grepl('.csv', filename)) {filename <- (filename)}
# else {filename <- paste(filename, '.csv', sep = '')}
#
# write.csv(df, file = filename)
# print(df)
# cat(paste('The file ', filename,' has been saved in ', getwd()), rep('\n', 3), sep = '')
# }
#
# if(is.null(filename)) {
# df <- df[, c(18,1,19,5,16,14,12,15)]
# print(df)
# }
# }
#
#
# #######################################################################################################################.
# #######################################################################################################################.
# #######################################################################################################################.
# #######################################################################################################################.
#
# if(nlevels(as.factor(group)) == 3) {
# g.name <- (as.character(substitute(group)[[3]]))
# gg <- levels(as.factor(group))
# lev <- (as.numeric(as.factor(group)))
# name.g.1 <- paste(substitute(gg))[[1]]
# name.g.2 <- paste(substitute(gg))[[2]]
# name.g.3 <- paste(substitute(gg))[[3]]
# # print(name.g.1)
# # print(name.g.2)
# # print(name.g.3)
# dataset <- dataset[, measures]
#
#
# M.1 <- list()
# M.2 <- list()
# M.3 <- list()
# SD.1 <- list()
# SD.2 <- list()
# SD.3 <- list()
# N.1 <- list()
# N.2 <- list()
# N.3 <- list()
# CV.1 <- list()
# CV.2 <- list()
# CV.3 <- list()
#
# res.AOV <- list()
#
# p_2.1 <- list()
# p_3.1 <- list()
# p_3.2 <- list()
#
#
# for(i in 1:dim(dataset)[2]) {
# N.1[i] <- length(na.omit(dataset[,i][group == name.g.1]))
# N.2[i] <- length(na.omit(dataset[,i][group == name.g.2]))
# N.3[i] <- length(na.omit(dataset[,i][group == name.g.3]))
# M.1[i] <- mean(dataset[,i][group == name.g.1], na.rm=TRUE)
# M.2[i] <- mean(dataset[,i][group == name.g.2], na.rm=TRUE)
# M.3[i] <- mean(dataset[,i][group == name.g.3], na.rm=TRUE)
# SD.1[i] <- sd(dataset[,i][group == name.g.1], na.rm=TRUE)
# SD.2[i] <- sd(dataset[,i][group == name.g.2], na.rm=TRUE)
# SD.3[i] <- sd(dataset[,i][group == name.g.3], na.rm=TRUE)
# CV.1[i] <- round((as.numeric(SD.1[i])/as.numeric(M.1[i]))*100, 2)
# CV.2[i] <- round((as.numeric(SD.2[i])/as.numeric(M.2[i]))*100, 2)
# CV.3[i] <- round((as.numeric(SD.3[i])/as.numeric(M.3[i]))*100, 2)
#
#
# aov.out <- aov(dataset[,i] ~ group)
# summm <- summary(aov.out)
# p <- summm[[1]][["Pr(>F)"]][[1]]
# f <- summm[[1]][["F value"]][[1]]
# degreeF <- paste('(',
# summm[[1]][["Df"]][[1]], ',', summm[[1]][["Df"]][[2]],
# ')', sep = ''
# )
# res.AOV[i] <- paste('F', degreeF, '=', round(f,2), ', ', 'p=', round(p, 4), sep = '')
#
# res <- TukeyHSD(aov.out)
# # print(res)
# p_2.1[i] <- symnum(res$group[1,4], legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
# p_3.1[i] <- symnum(res$group[2,4], legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
# p_3.2[i] <- symnum(res$group[3,4], legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
#
# # print(p_2.1)
# # print(p_3.1)
# # print(p_3.2)
#
# # t.res <- t.test(dataset[,i] ~ group, var.equal = var.equal)
# # p.value[i] <- t.res$p.value
# # t.value[i] <- t.res$statistic
# # d[i] <- abs(compute.es::tes(as.numeric(t.value[i]), as.numeric(N.1[i]), as.numeric(N.2[i]), verbose = FALSE)$d)
# # t.APA[i] <- paste('t(', round(t.res$parameter, 2),')=',round(abs(t.res$statistic),2),
# # ', p', symnum(t.res$p.value, legend = F, corr = FALSE, na = FALSE,
# # cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", ">.05")),
# # ', d=', d[i],
# # sep = '')
# # v.APA[i] <- paste('F(', as.numeric(v$parameter[1]),',',as.numeric(v$parameter[2]),')=',round(as.numeric(v$statistic),2),
# # ', p=', round(as.numeric(v$p.value),4), sep = '')
# }
#
# df <- data.frame(
# N1 = unlist(N.1),
# M1 = round(unlist(M.1),2),
# SD1 = round(unlist(SD.1),2),
# CV1 = unlist(CV.1),
#
# N2 = unlist(N.2),
# M2 = round(unlist(M.2),2),
# SD2 = round(unlist(SD.2),2),
# CV2 = unlist(CV.2),
#
# N3 = unlist(N.3),
# M3 = round(unlist(M.3),2),
# SD3 = round(unlist(SD.3),2),
# CV3 = unlist(CV.3),
#
# Msd1 = paste('(','M=',round(unlist(M.1),2),', SD=',round(unlist(SD.1),2),')', sep = ''),
# Msd2 = paste('(','M=',round(unlist(M.2),2),', SD=',round(unlist(SD.2),2),')', sep = ''),
# Msd3 = paste('(','M=',round(unlist(M.3),2),', SD=',round(unlist(SD.3),2),')', sep = ''),
#
# p_2.1 <- unlist(p_2.1),
# p_3.1 <- unlist(p_3.1),
# p_3.2 <- unlist(p_3.2),
#
# res.AOV <- unlist(res.AOV)
#
#
#
# # t.value = round(abs(unlist(t.value)), 2),
# # sym = symnum(unlist(p.value), legend = F, corr = FALSE, na = FALSE,
# # cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " ")),
# # p = symnum(unlist(p.value), legend = F, corr = FALSE, na = FALSE,
# # cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", " ", " ")),
# # p.exact = round(unlist(p.value), 6),
# # "Cohen d" = abs(unlist(d)),
# #
# # t.APA = unlist(t.APA),
# # v.APA = unlist(v.APA)
# )
#
# # print(colnames(df))
#
# sign <- intToUtf8(0177)
# df$M.sd1 <- paste(df$M1, sign, df$SD1)
# df$M.sd2 <- paste(df$M2, sign, df$SD2)
# df$M.sd3 <- paste(df$M3, sign, df$SD3)
#
# names(df)[names(df) == 'N1'] <- paste('N_', name.g.1, sep = '')
# names(df)[names(df) == 'N2'] <- paste('N_', name.g.2, sep = '')
# names(df)[names(df) == 'N3'] <- paste('N_', name.g.3, sep = '')
# names(df)[names(df) == 'M1'] <- paste('M_', name.g.1, sep = '')
# names(df)[names(df) == 'M2'] <- paste('M_', name.g.2, sep = '')
# names(df)[names(df) == 'M3'] <- paste('M_', name.g.3, sep = '')
# names(df)[names(df) == 'SD1'] <- paste('SD_', name.g.1, sep = '')
# names(df)[names(df) == 'SD2'] <- paste('SD_', name.g.2, sep = '')
# names(df)[names(df) == 'SD3'] <- paste('SD_', name.g.3, sep = '')
# names(df)[names(df) == 'CV1'] <- paste('CV_', name.g.1, sep = '')
# names(df)[names(df) == 'CV2'] <- paste('CV_', name.g.2, sep = '')
# names(df)[names(df) == 'CV3'] <- paste('CV_', name.g.3, sep = '')
# names(df)[names(df) == 'Msd1'] <- paste('Msd_', name.g.1, sep = '')
# names(df)[names(df) == 'Msd2'] <- paste('Msd_', name.g.2, sep = '')
# names(df)[names(df) == 'Msd3'] <- paste('Msd_', name.g.3, sep = '')
# names(df)[names(df) == 'M.sd1'] <- paste('M.sd_', name.g.1, sep = '')
# names(df)[names(df) == 'M.sd2'] <- paste('M.sd_', name.g.2, sep = '')
# names(df)[names(df) == 'M.sd3'] <- paste('M.sd_', name.g.3, sep = '')
#
# names(df)[names(df) == 'p_2.1....unlist.p_2.1.'] <- paste(name.g.2, '_',name.g.1, sep = '')
# names(df)[names(df) == 'p_3.1....unlist.p_3.1.'] <- paste(name.g.3, '_',name.g.1, sep = '')
# names(df)[names(df) == 'p_3.2....unlist.p_3.2.'] <- paste(name.g.2, '_',name.g.2, sep = '')
# names(df)[names(df) == 'res.AOV....unlist.res.AOV.'] <- 'F Statistics'
# # names(df)[names(df) == 'p_2.1....unlist.p_2.1.'] <- paste('p___', name.g.2, '_',name.g.1, '__|', sep = '')
# # names(df)[names(df) == 'p_3.1....unlist.p_3.1.'] <- paste('p___', name.g.3, '_',name.g.1, '__|', sep = '')
# # names(df)[names(df) == 'p_3.2....unlist.p_3.2.'] <- paste('p___', name.g.2, '_',name.g.2, '__|', sep = '')
#
# print(colnames(df))
#
# rownames(df) <- measures
#
# if(!is.null(filename)) {
# if(grepl('.csv', filename)) {filename <- (filename)}
# else {filename <- paste(filename, '.csv', sep = '')}
#
# write.csv(df, file = filename)
# print(df)
# cat(paste('The file ', filename,' has been saved in ', getwd()), rep('\n', 3), sep = '')
# }
#
# if(is.null(filename)) {
# # df <- df[, c(18,19,16,12,14,15)]
# df <- df[, c(20,1,
# 21,5,
# 22,9,
# 19, # F statistics
#
# 16, 17, 18)] # p symbols
# print(df)
# }
# }
#
#
#
#
# }
# descriptive_APA(dataset = dat, group = dat$Group.3, measures = c('var1', 'var2', 'var3'))
# set.seed(40)
# dat <- data.frame(Group.3 = factor(rep(c('aa', 'bb','cc'), each=10)),
# var1 = c(sample(1:2, 10, replace=T),
# sample(c(1,3), 10, replace=T),
# sample(2:3, 10, replace=T)),
# var2 = c(sample(3:4, 10, replace=T),
# sample(c(4,5), 10, replace=T),
# sample(2:3, 10, replace=T)),
# var3 = c(sample(90:91, 10, replace=T),
# sample(c(85,90), 10, replace=T),
# sample(90:92, 10, replace=T)))
#
# descriptive_APA(dataset = mtcars, group = mtcars$factors3, measures = c('mpg', 'disp', 'hp', 'drat', 'wt', 'qsec'))
# descriptive_APA(dataset = dat, group = dat$Group.3, measures = c('var1', 'var2', 'var3'))
# mtcars$factors3 <- as.factor(c("aa","aa","aa","aa","aa","aa","aa","aa","aa","aa",
# "bb","bb","bb","bb","bb","bb","bb","bb","bb","bb",
# "cc","cc","cc","cc","cc","cc","cc","cc","cc","cc",
# "aa","bb"))
# aov.out <- aov(disp ~ factors3, data = mtcars)
# res <- TukeyHSD(aov.out)
# p_2.1 <- symnum(res$factors3[1,4], legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
# p_3.1 <- symnum(res$factors3[2,4], legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
# p_3.2 <- symnum(res$factors3[3,4], legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " "))
# descriptive_APA(dataset = mtcars, group = mtcars$vs, measures = c('mpg', 'disp', 'hp', 'drat', 'wt', 'qsec'))
# descriptive_APA(dataset = mtcars, group = mtcars$vs, measures = c('mpg', 'disp', 'hp', 'drat', 'wt', 'qsec'), filename = 'prova')
#
#
# set.seed(40)
# dat <- data.frame(Group.3 = factor(rep(c('aa', 'bb','cc'), each=10)),
# var1 = c(sample(1:2, 10, replace=T),
# sample(c(1,3), 10, replace=T),
# sample(2:3, 10, replace=T)),
# var2 = c(sample(3:4, 10, replace=T),
# sample(c(4,5), 10, replace=T),
# sample(2:3, 10, replace=T)),
# var3 = c(sample(90:91, 10, replace=T),
# sample(c(85,90), 10, replace=T),
# sample(90:92, 10, replace=T)))
#
# descriptive_APA(dataset = dat, group = dat$Group.3, measures = c('var1', 'var2', 'var3'))
#
# dat.aov <- aov(Pleasing ~ Group.3, data=dat)
# summm <- summary(dat.aov)
# p <- summm[[1]][["Pr(>F)"]][[1]]
# f <- summm[[1]][["F value"]][[1]]
# degreeF <- paste('(',
# summm[[1]][["Df"]][[1]], ',', summm[[1]][["Df"]][[2]],
# ')', sep = ''
# )
# res.AOV <- paste('F', degreeF, '=', round(f,2), ', ', 'p=', round(p, 4), sep = '')
# dat.aov$df.residual
# descriptive_APA <- function(dataset, group, measures = '', filename = NULL){
# require(compute.es)
# g.name <- (as.character(substitute(group)[[3]]))
# gg <- levels(as.factor(group))
# lev <- (as.numeric(as.factor(group)))
# name.g.1 <- paste(substitute(gg))[[1]]
# name.g.2 <- paste(substitute(gg))[[2]]
# dataset <- dataset[, measures]
#
# # if(nlevels(as.factor(group)) == 2) {
# #
# # }
#
# t.res <- list()
# p.value <- list()
# t.value <- list()
#
# t.APA <- list()
# v.APA <- list()
#
# d <- list()
#
# M.1 <- list()
# M.2 <- list()
# SD.1 <- list()
# SD.2 <- list()
# N.1 <- list()
# N.2 <- list()
# CV.1 <- list()
# CV.2 <- list()
#
# for(i in 1:dim(dataset)[2]) {
# N.1[i] <- length(na.omit(dataset[,i][group == name.g.1]))
# N.2[i] <- length(na.omit(dataset[,i][group == name.g.2]))
# M.1[i] <- mean(dataset[,i][group == name.g.1], na.rm=TRUE)
# M.2[i] <- mean(dataset[,i][group == name.g.2], na.rm=TRUE)
# SD.1[i] <- sd(dataset[,i][group == name.g.1], na.rm=TRUE)
# SD.2[i] <- sd(dataset[,i][group == name.g.2], na.rm=TRUE)
# CV.1[i] <- round((as.numeric(SD.1[i])/as.numeric(M.1[i]))*100, 2)
# CV.2[i] <- round((as.numeric(SD.2[i])/as.numeric(M.2[i]))*100, 2)
#
# v <- var.test(dataset[,i] ~ group)
#
# if(v$p.value < .05)
# {var.equal <- FALSE}
# else {var.equal <- TRUE}
#
# t.res <- t.test(dataset[,i] ~ group, var.equal = var.equal)
# p.value[i] <- t.res$p.value
# t.value[i] <- t.res$statistic
# d[i] <- abs(compute.es::tes(as.numeric(t.value[i]), as.numeric(N.1[i]), as.numeric(N.2[i]), verbose = FALSE)$d)
# t.APA[i] <- paste('t(', round(t.res$parameter, 2),')=',round(abs(t.res$statistic),2),
# ', p', symnum(t.res$p.value, legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", ">.05")),
# ', d=', d[i],
# sep = '')
# v.APA[i] <- paste('F(', as.numeric(v$parameter[1]),',',as.numeric(v$parameter[2]),')=',round(as.numeric(v$statistic),2),
# ', p=', round(as.numeric(v$p.value),4), sep = '')
# }
#
# df <- data.frame(
# N1 = unlist(N.1),
# M1 = round(unlist(M.1),2),
# SD1 = round(unlist(SD.1),2),
# CV1 = unlist(CV.1),
#
# N2 = unlist(N.2),
# M2 = round(unlist(M.2),2),
# SD2 = round(unlist(SD.2),2),
# CV2 = unlist(CV.2),
#
# Msd1 = paste('(','M=',round(unlist(M.1),2),', SD=',round(unlist(SD.2),2),')', sep = ''),
# Msd2 = paste('(','M=',round(unlist(M.2),2),', SD=',round(unlist(SD.2),2),')', sep = ''),
#
# t.value = round(abs(unlist(t.value)), 2),
# sym = symnum(unlist(p.value), legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("***", "**", "*", ".", " ")),
# p = symnum(unlist(p.value), legend = F, corr = FALSE, na = FALSE,
# cutpoints = c(0, 0.0001, 0.001, 0.01, 0.05, 0.1, 1), symbols = c("<.0001", "<.001", "<.01", "<.05", " ", " ")),
# p.exact = round(unlist(p.value), 6),
# "Cohen d" = abs(unlist(d)),
#
# t.APA = unlist(t.APA),
# v.APA = unlist(v.APA)
# )
#
# sign <- intToUtf8(0177)
# df$M.sd1 <- paste(df$M1, sign, df$SD1)
# df$M.sd2 <- paste(df$M2, sign, df$SD2)
#
# names(df)[names(df) == 'N1'] <- paste('N_', name.g.1, sep = '')
# names(df)[names(df) == 'N2'] <- paste('N_', name.g.2, sep = '')
# names(df)[names(df) == 'M1'] <- paste('M_', name.g.1, sep = '')
# names(df)[names(df) == 'M2'] <- paste('M_', name.g.2, sep = '')
# names(df)[names(df) == 'SD1'] <- paste('SD_', name.g.1, sep = '')
# names(df)[names(df) == 'SD2'] <- paste('SD_', name.g.2, sep = '')
# names(df)[names(df) == 'CV1'] <- paste('CV_', name.g.1, sep = '')
# names(df)[names(df) == 'CV2'] <- paste('CV_', name.g.2, sep = '')
# names(df)[names(df) == 'Msd1'] <- paste('Msd_', name.g.1, sep = '')
# names(df)[names(df) == 'Msd2'] <- paste('Msd_', name.g.2, sep = '')
# names(df)[names(df) == 'M.sd1'] <- paste('M.sd_', name.g.1, sep = '')
# names(df)[names(df) == 'M.sd2'] <- paste('M.sd_', name.g.2, sep = '')
#
# rownames(df) <- measures
#
# if(!is.null(filename)) {
# if(grepl('.csv', filename)) {filename <- (filename)}
# else {filename <- paste(filename, '.csv', sep = '')}
#
# write.csv(df, file = filename)
# print(df)
# cat(paste('The file ', filename,' has been saved in ', getwd()), rep('\n', 3), sep = '')
# }
#
# if(is.null(filename)) {
# df <- df[, c(18,19,16,12,14,15)]
# print(df)
# }
#
#
# }; descriptive_APA(dataset = mtcars, group = mtcars$vs, measures = c('mpg', 'disp', 'hp', 'drat', 'wt', 'qsec'))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.