Version: 2.0.8
Title: Create American Psychological Association (APA) Style Tables
Description: A common task faced by researchers is the creation of APA style (i.e., American Psychological Association style) tables from statistical output. In R a large number of function calls are often needed to obtain all of the desired information for a single APA style table. As well, the process of manually creating APA style tables in a word processor is prone to transcription errors. This package creates Word files (.doc files) containing APA style tables for several types of analyses. Using this package minimizes transcription errors and reduces the number commands needed by the user.
URL: https://github.com/dstanley4/apaTables
BugReports: https://github.com/dstanley4/apaTables/issues
Depends: R (≥ 3.1.2)
Imports: stats, utils, methods, car, broom, dplyr, boot, tibble, MBESS
Suggests: testthat, knitr
RoxygenNote: 7.1.1
License: MIT License + file LICENSE
LazyData: true
Date: 2020-12-18
NeedsCompilation: no
Packaged: 2020-12-18 16:05:46 UTC; dstanley
Author: David Stanley [aut, cre]
Maintainer: David Stanley <dstanley@uoguelph.ca>
Repository: CRAN
Date/Publication: 2021-01-04 19:00:02 UTC

Eysenck data

Description

A data set from Howell (2012)

Usage

data(Eysenck)

Format

A data frame with 100 rows and 3 variables:

Age

Young or Old

Condition

Experimental learning condition

Recall

Level of word recall

Source

https://www.uvm.edu/~statdhtx/methods8/DataFiles/Tab13-2.dat

References

Howell, D. (2012). Statistical methods for psychology. Cengage Learning.


album data from textbook

Description

A data set from Field et al (2012)

Usage

data(album)

Format

A data frame with 200 rows and 4 variables:

adverts

Amount spent of adverts, thousands of pounds

sales

Album sales in thousands

airplay

Number of times songs from album played on radio week prior to release

attract

Attractiveness rating of band members

Source

https://studysites.sagepub.com/dsur/study/

References

Field, A., Miles, J., & Field, Z. (2012) Discovering Statistics Using R. Sage: Chicago.


Creates a table of means and standard deviations for a 1-way ANOVA design in APA style

Description

Creates a table of means and standard deviations for a 1-way ANOVA design in APA style

Usage

apa.1way.table(
  iv,
  dv,
  data,
  filename = NA,
  table.number = NA,
  show.conf.interval = FALSE,
  landscape = FALSE
)

Arguments

iv

Name of independent variable column in data frame

dv

Name of dependent variable column in data frame

data

Project data frame name

filename

(optional) Output filename document filename (must end in .rtf or .doc only)

table.number

Integer to use in table number output line

show.conf.interval

(TRUE/FALSE) Display confidence intervals in table.

landscape

(TRUE/FALSE) Make RTF file landscape

Value

APA table object

Examples

## Not run: 
# Example 1: 1-way from Field et al. (2012) Discovery Statistics Using R
apa.1way.table(iv=dose,dv=libido,data=viagra,filename="ex1_desc_table.doc")

## End(Not run)

Creates a table of means and standard deviations for a 2-way ANOVA design in APA style

Description

Creates a table of means and standard deviations for a 2-way ANOVA design in APA style

Usage

apa.2way.table(
  iv1,
  iv2,
  dv,
  data,
  filename = NA,
  table.number = NA,
  show.conf.interval = FALSE,
  show.marginal.means = FALSE,
  landscape = TRUE
)

Arguments

iv1

Name of independent variable 1 column in data frame

iv2

Name of independent variable 2 column in data frame

dv

Name of dependent variable column in data frame

data

Project data frame name

filename

(optional) Output filename document filename (must end in .rtf or .doc only)

table.number

Integer to use in table number output line

show.conf.interval

(TRUE/FALSE) Display confidence intervals in table. Negates show.marginal.means = TRUE.

show.marginal.means

(TRUE/FALSE) Show marginal means in output. Only used if show.conf.interval = FALSE.

landscape

(TRUE/FALSE) Make RTF file landscape

Value

APA table object

Examples

## Not run: 
# Example 2: 2-way from Fidler & Thompson (2001)
apa.2way.table(iv1=a,iv2=b,dv=dv,data=fidler_thompson,landscape=TRUE, filename="ex2_desc_table.doc")

# Example 3: 2-way from Field et al. (2012) Discovery Statistics Using R
apa.2way.table(iv1=gender,iv2=alcohol,dv=attractiveness,data=goggles,filename="ex3_desc_table.doc")

## End(Not run)

Creates a fixed-effects ANOVA table in APA style

Description

Creates a fixed-effects ANOVA table in APA style

Usage

apa.aov.table(
  lm_output,
  filename,
  table.number = NA,
  conf.level = 0.9,
  type = 3
)

Arguments

lm_output

Regression (i.e., lm) result objects. Typically, one for each block in the regression.

filename

(optional) Output filename document filename (must end in .rtf or .doc only)

table.number

Integer to use in table number output line

conf.level

Level of confidence for interval around partial eta-squared (.90 or .95). A value of .90 is the default, this helps to create consistency between the CI overlapping with zero and conclusions based on the p-value.

type

Sum of Squares Type. Type II or Type III; specify, 2 or 3, respectively. Default value is 3.

Value

APA table object

References

Smithson, M. (2001). Correct confidence intervals for various regression effect sizes and parameters: The importance of noncentral distributions in computing intervals. Educational and Psychological Measurement, 61(4), 605-632.

Fidler, F., & Thompson, B. (2001). Computing correct confidence intervals for ANOVA fixed-and random-effects effect sizes. Educational and Psychological Measurement, 61(4), 575-604.

Examples

## Not run: 
#Example 1: 1-way from Field et al. (2012) Discovery Statistics Using R
options(contrasts = c("contr.helmert", "contr.poly"))
lm_output <- lm(libido ~ dose, data = viagra)
apa.aov.table(lm_output, filename = "ex1_anova_table.doc")

# Example 2: 2-way from Fidler & Thompson (2001)
# You must set these contrasts to ensure values match SPSS
options(contrasts = c("contr.helmert", "contr.poly"))
lm_output <- lm(dv ~ a*b, data = fidler_thompson)
apa.aov.table(lm_output,filename = "ex2_anova_table.doc")

#Example 3: 2-way from Field et al. (2012) Discovery Statistics Using R
# You must set these contrasts to ensure values match SPSS
options(contrasts = c("contr.helmert", "contr.poly"))
lm_output <- lm(attractiveness ~ gender*alcohol, data = goggles)
apa.aov.table(lm_output, filename = "ex3_anova_table.doc")

## End(Not run)

Creates a correlation table in APA style with means and standard deviations

Description

Creates a correlation table in APA style with means and standard deviations

Usage

apa.cor.table(
  data,
  filename = NA,
  table.number = NA,
  show.conf.interval = TRUE,
  show.sig.stars = TRUE,
  landscape = TRUE
)

Arguments

data

Project data frame

filename

(optional) Output filename document filename (must end in .rtf or .doc only)

table.number

Integer to use in table number output line

show.conf.interval

(TRUE/FALSE) Display confidence intervals in table. This argument is deprecated and will be removed from later versions.

show.sig.stars

(TRUE/FALSE) Display stars for significance in table.

landscape

(TRUE/FALSE) Make RTF file landscape

Value

APA table object

Examples

## Not run: 
# View top few rows of attitude data set
head(attitude)

# Use apa.cor.table function
apa.cor.table(attitude)
apa.cor.table(attitude, filename="ex.CorTable1.doc")

## End(Not run)

Creates a d-values for all paired comparisons in APA style

Description

Creates a d-values for all paired comparisons in APA style

Usage

apa.d.table(
  iv,
  dv,
  data,
  filename = NA,
  table.number = NA,
  show.conf.interval = TRUE,
  landscape = TRUE
)

Arguments

iv

Name of independent variable column in data frame for all paired comparisons

dv

Name of dependent variable column in data frame for all paired comparisons

data

Project data frame name

filename

(optional) Output filename document filename (must end in .rtf or .doc only)

table.number

Integer to use in table number output line

show.conf.interval

(TRUE/FALSE) Display confidence intervals in table. This argument is deprecated and will be removed from later versions.

landscape

(TRUE/FALSE) Make RTF file landscape

Value

APA table object

Examples

## Not run: 
# View top few rows of viagra data set from Discovering Statistics Using R
head(viagra)

# Use apa.d.table function
apa.d.table(iv = dose, dv = libido, data = viagra, filename = "ex1_d_table.doc")

## End(Not run)

Creates an ANOVA table in APA style based output of ezANOVA command from ez package

Description

Creates an ANOVA table in APA style based output of ezANOVA command from ez package

Usage

apa.ezANOVA.table(
  ez.output,
  correction = "GG",
  table.title = "",
  filename,
  table.number = NA
)

Arguments

ez.output

Output object from ezANOVA command from ez package

correction

Type of sphercity correction: "none", "GG", or "HF" corresponding to none, Greenhouse-Geisser and Huynh-Feldt, respectively.

table.title

String containing text for table title

filename

(optional) Output filename document filename (must end in .rtf or .doc only)

table.number

Integer to use in table number output line

Value

APA table object

Examples

## Not run: 
# ** Example 1: Between Participant Predictors
#

library(apaTables)
library(ez)

# See format where one row represents one PERSON
# Note that participant, gender, and alcohol are factors

print(goggles)


# Use ezANOVA
# Be sure use the options command, as below, to ensure sufficient digits

options(digits = 10)
goggles_results <- ezANOVA(data = goggles,
                          dv = attractiveness,
                          between = .(gender, alcohol),
                          participant ,
                          detailed = TRUE)


# Make APA table

goggles_table <- apa.ezANOVA.table(goggles_results,
                                  filename="ex1_ez_independent.doc")

print(goggles_table)



#
# ** Example 2: Within Participant Predictors
#

library(apaTables)
library(tidyr)
library(forcats)
library(ez)

# See initial wide format where one row represents one PERSON
print(drink_attitude_wide)

# Convert data from wide format to long format where one row represents one OBSERVATION.
# Wide format column names MUST represent levels of each variable separated by an underscore.
# See vignette for further details.

drink_attitude_long <- gather(data = drink_attitude_wide,
                              key = cell, value = attitude,
                              beer_positive:water_neutral,
                              factor_key=TRUE)

drink_attitude_long <- separate(data = drink_attitude_long,
                                col = cell, into = c("drink","imagery"),
                                sep = "_", remove = TRUE)

drink_attitude_long$drink <- as_factor(drink_attitude_long$drink)
drink_attitude_long$imagery <- as_factor(drink_attitude_long$imagery)

# See new long format of data, where one row is one OBSERVATION.
# As well, notice that we have two columns (drink, imagery)
# drink, imagery, and participant are factors
print(drink_attitude_long)


# Set contrasts to match Field et al. (2012) textbook output

alcohol_vs_water <- c(1, 1, -2)
beer_vs_wine <- c(-1, 1, 0)
negative_vs_other <- c(1, -2, 1)
positive_vs_neutral <- c(-1, 0, 1)
contrasts(drink_attitude_long$drink) <- cbind(alcohol_vs_water, beer_vs_wine)
contrasts(drink_attitude_long$imagery) <- cbind(negative_vs_other, positive_vs_neutral)


# Use ezANOVA
# Be sure use the options command, as below, to ensure sufficient digits

options(digits = 10)
drink_attitude_results <- ezANOVA(data = drink_attitude_long,
                   dv = .(attitude), wid = .(participant),
                   within = .(drink, imagery),
                   type = 3, detailed = TRUE)


# Make APA table

drink_table <- apa.ezANOVA.table(drink_attitude_results,
                                 filename="ex2_repeated_table.doc")

print(drink_table)


#
# ** Example 3: Between and Within Participant Predictors
#

library(apaTables)
library(tidyr)
library(forcats)
library(ez)

# See initial wide format where one row represents one PERSON
print(dating_wide)


# Convert data from wide format to long format where one row represents one OBSERVATION.
# Wide format column names MUST represent levels of each variable separated by an underscore.
# See vignette for further details.

dating_long <- gather(data = dating_wide,
                     key = cell, value = date_rating,
                     attractive_high:ugly_none,
                     factor_key = TRUE)

dating_long <- separate(data = dating_long,
                       col = cell, into = c("looks","personality"),
                       sep = "_", remove = TRUE)

dating_long$looks <- as_factor(dating_long$looks)
dating_long$personality <- as_factor(dating_long$personality)


# See new long format of data, where one row is one OBSERVATION.
# As well, notice that we have two columns (looks, personality)
# looks, personality, and participant are factors

print(dating_long)

# Set contrasts to match Field et al. (2012) textbook output

some_vs_none <- c(1, 1, -2)
hi_vs_av <- c(1, -1, 0)
attractive_vs_ugly <- c(1, 1, -2)
attractive_vs_average <- c(1, -1, 0)
contrasts(dating_long$personality) <- cbind(some_vs_none, hi_vs_av)
contrasts(dating_long$looks) <- cbind(attractive_vs_ugly, attractive_vs_average)


# Use ezANOVA

library(ez)
options(digits = 10)
dating_results <-ezANOVA(data = dating_long, dv = .(date_rating), wid = .(participant),
                        between = .(gender), within = .(looks, personality),
                        type = 3, detailed = TRUE)


# Make APA table

dating_table <- apa.ezANOVA.table(dating_results,
                                 filename = "ex3_mixed_table.doc")
print(dating_table)

## End(Not run)

Creates a regresion table in APA style with bootstrap confidence intervals

Description

Creates a regresion table in APA style with bootstrap confidence intervals

Usage

apa.reg.boot.table(
  ...,
  filename = NA,
  table.number = NA,
  number.samples = 1000
)

Arguments

...

Regression (i.e., lm) result objects. Typically, one for each block in the regression.

filename

(optional) Output filename document filename (must end in .rtf or .doc only)

table.number

Integer to use in table number output line

number.samples

Number of samples to create for bootstrap CIs

Value

APA table object

References

Algina, J. Keselman, H.J. & Penfield, R.J. (2008). Note on a confidence interval for the squared semipartial correlation coefficient. Educational and Psychological Measurement, 68, 734-741.

Examples

## Not run: 
#Note: number.samples = 50 below.
#      However, please use a value of 1000 or higher

# View top few rows of goggles data set
# from Discovering Statistics Using R
set.seed(1)
head(album)

# Single block example
blk1 <- lm(sales ~ adverts + airplay, data=album)
apa.reg.boot.table(blk1)
apa.reg.boot.table(blk1,filename="exRegTable.doc")

# Two block example, more than two blocks can be used
blk1 <- lm(sales ~ adverts, data=album)
blk2 <- lm(sales ~ adverts + airplay + attract, data=album)
apa.reg.boot.table(blk1,blk2,filename="exRegBlocksTable.doc")

# Interaction product-term test with blocks
blk1 <- lm(sales ~ adverts + airplay, data=album)
blk2 <- lm(sales ~ adverts + airplay + I(adverts * airplay), data=album)
apa.reg.boot.table(blk1,blk2,filename="exInteraction1.doc")

## End(Not run)

Creates a regresion table in APA style

Description

Creates a regresion table in APA style

Usage

apa.reg.table(
  ...,
  filename = NA,
  table.number = NA,
  prop.var.conf.level = 0.95
)

Arguments

...

Regression (i.e., lm) result objects. Typically, one for each block in the regression.

filename

(optional) Output filename document filename (must end in .rtf or .doc only)

table.number

Integer to use in table number output line

prop.var.conf.level

Level of confidence (.90 or .95, default .95) for interval around sr2, R2, and Delta R2. Use of .90 confidence level helps to create consistency between the CI overlapping with zero and conclusions based on the p-value for that block (or block difference).

Value

APA table object

References

sr2 and delta R2 confidence intervals calculated via:

Alf Jr, E. F., & Graf, R. G. (1999). Asymptotic confidence limits for the difference between two squared multiple correlations: A simplified approach. Psychological Methods, 4(1), 70.

Note that Algina, Keselman, & Penfield (2008) found this approach can under some circumstances lead to inaccurate CIs on proportion of variance values. You might consider using the Algina, Keselman, & Penfield (2008) approach via the apa.reg.boot.table function

Examples

## Not run: 
# View top few rows of goggles data set
# from Discovering Statistics Using R
head(album)

# Single block example
blk1 <- lm(sales ~ adverts + airplay, data=album)
apa.reg.table(blk1)
apa.reg.table(blk1,filename="exRegTable.doc")

# Two block example, more than two blocks can be used
blk1 <- lm(sales ~ adverts, data=album)
blk2 <- lm(sales ~ adverts + airplay + attract, data=album)
apa.reg.table(blk1,blk2,filename="exRegBlocksTable.doc")

# Interaction product-term test with blocks
blk1 <- lm(sales ~ adverts + airplay, data=album)
blk2 <- lm(sales ~ adverts + airplay + I(adverts * airplay), data=album)
apa.reg.table(blk1,blk2,filename="exInteraction1.doc")

# Interaction product-term test with blocks and additional product terms
blk1<-lm(sales ~ adverts + airplay, data=album)
blk2<-lm(sales ~ adverts + airplay + I(adverts*adverts) + I(airplay*airplay), data=album)
blk3<-lm(sales~adverts+airplay+I(adverts*adverts)+I(airplay*airplay)+I(adverts*airplay),data=album)
apa.reg.table(blk1,blk2,blk3,filename="exInteraction2.doc")

#Interaction product-term test with single regression (i.e., semi-partial correlation focus)
blk1 <- lm(sales ~ adverts + airplay + I(adverts * airplay), data=album)
apa.reg.table(blk1,filename="exInteraction3.doc")

## End(Not run)

Create American Psychological Association (APA) Style Tables

Description

A common task faced by researchers is the creation of APA style (i.e., American Psychological Association style) tables from statistical output. In R a large number of function calls are often needed to obtain all of the desired information for a single APA style table. As well, the process of manually creating APA style tables in a word processor is prone to transcription errors. This package creates Word files (.doc files) containing APA style tables for several types of analyses. Using this package minimizes transcription errors and reduces the number commands needed by the user. Examples are provided in this documentation and at http://www.StatsCanBeFun.com.

Details

Bugs and feature requests can be reported at: https://github.com/dstanley4/apaTables/issues

Tutorial at: https://dstanley4.github.io/apaTables/articles/apaTables.html

Currently, the following tables can be created:

Package: apaTables
Type: Package
Version: 2.0.8
Date: 2020-12-18
License: MIT

Author(s)

Author: David J. Stanley dstanley@uoguelph.ca
Maintainer: David J. Stanley dstanley@uoguelph.ca

dating data from textbook

Description

A data set from Field et al (2012)

Usage

data(dating_wide)

Format

A data frame with 20 rows and 11 columns. Gender is a between subjects variable. Looks and Personality are within subject variables. Both gender and particpant are factors.

participant

Factor: Participant ID number

gender

Factor: Gender: Male/Female

attractive_high

Date rating where looks=attractive and personality=high

average_high

Date rating where looks=average and personality=high

ugly_high

Date rating where looks=ugly and personality=high

attractive_some

Date rating where looks=attractive and personality=some

average_some

Date rating where looks=average and personality=some

ugly_some

Date rating where looks=ugly and personality=some

attractive_none

Date rating where looks=attractive and personality=none

average_none

Date rating where looks=average and personality=none

ugly_none

Date rating where looks=ugly and personality=none

Source

https://studysites.sagepub.com/dsur/study/

References

Field, A., Miles, J., & Field, Z. (2012) Discovering Statistics Using R. Sage: Chicago.


drink attitude data from textbook

Description

A data set from Field et al (2012)

Usage

data(drink_attitude_wide)

Format

A data frame with 20 rows and 10 columns. Drink and Imagery are within subject variables. Particpant is a factor.

participant

Factor: Participant ID number

beer_positive

Attitude where drink=beer and imagery=positive

beer_negative

Attitude where drink=beer and imagery=negative

beer_neutral

Attitude where drink=beer and imagery=neutral

wine_positive

Attitude where drink=wine and imagery=positive

wine_negative

Attitude where drink=wine and imagery=negative

wine_neutral

Attitude where drink=wine and imagery=neutral

water_positive

Attitude where drink=water and imagery=positive

water_negative

Attitude where drink=water and imagery=negative

water_neutral

Attitude where drink=water and imagery=neutral

Source

https://studysites.sagepub.com/dsur/study/

References

Field, A., Miles, J., & Field, Z. (2012) Discovering Statistics Using R. Sage: Chicago.


Fidler & Thompson (2001) Fixed-Effects ANOVA data

Description

A data set from Fidler & Thompson (2001)

Usage

data(fidler_thompson)

Format

A data frame with 24 rows and 3 variables:

a

Independent variable: a

b

Independent variable: b

dv

Dependent variable: dv

References

Fidler, F. & Thompson, B. (2001). Computing correct confidence intervals for ANOVA fixed- and random-effects effect sizes. Educational and Psychological Measurement, 61, 575-604.


Calculates confidence interval for partial eta-squared in a fixed-effects ANOVA

Description

Calculates confidence interval for partial eta-squared in a fixed-effects ANOVA

Usage

get.ci.partial.eta.squared(F.value, df1, df2, conf.level = 0.9)

Arguments

F.value

The F-value for the fixed-effect

df1

Degrees of freedom for the fixed-effect

df2

Degrees of freedom error

conf.level

Confidence level (0 to 1). For partial eta-squared a confidence level of .90 is traditionally used rather than .95.

Value

List with confidence interval values (LL and UL)

Examples

# Smithson (2001) p. 619
get.ci.partial.eta.squared(F.value=6.00, df1=1, df2=42, conf.level=.90)
get.ci.partial.eta.squared(F.value=2.65, df1=6, df2=42, conf.level=.90)
get.ci.partial.eta.squared(F.value=2.60, df1=6, df2=42, conf.level=.90)

# Fidler & Thompson (2001) Fixed Effects 2x4 p. 594 (Table 6) / p. 596 (Table 8)
get.ci.partial.eta.squared(F.value=1.50, df1=1, df2=16, conf.level=.90)
get.ci.partial.eta.squared(F.value=4.00, df1=3, df2=16, conf.level=.90)
get.ci.partial.eta.squared(F.value=1.50, df1=3, df2=16, conf.level=.90)

goggles data from textbook

Description

A data set from Field et al (2012)

Usage

data(goggles)

Format

A data frame with 48 rows and 3 variables:

participant

Participant identification number

gender

Gender of participant

alcohol

Amount alcohol consumed

attractiveness

Perceived attractiveness

Source

https://studysites.sagepub.com/dsur/study/

References

Field, A., Miles, J., & Field, Z. (2012) Discovering Statistics Using R. Sage: Chicago.


viagra data from textbook

Description

A data set from Field et al (2012)

Usage

data(viagra)

Format

A data frame with 15 rows and 2 variables:

dose

Level of viagra dose

libido

Libido after taking viagra

Source

https://studysites.sagepub.com/dsur/study/

References

Field, A., Miles, J., & Field, Z. (2012) Discovering Statistics Using R. Sage: Chicago.