Learn R Programming

afex (version 0.22-1)

sk2011.2: Data from Singmann & Klauer (2011, Experiment 2)

Description

Singmann and Klauer (2011) were interested in whether or not conditional reasoning can be explained by a single process or whether multiple processes are necessary to explain it. To provide evidence for multiple processes we aimed to establish a double dissociation of two variables: instruction type and problem type. Instruction type was manipulated between-subjects, one group of participants received deductive instructions (i.e., to treat the premises as given and only draw necessary conclusions) and a second group of participants received probabilistic instructions (i.e., to reason as in an everyday situation; we called this "inductive instruction" in the manuscript). Problem type consisted of two different orthogonally crossed variables that were manipulated within-subjects, validity of the problem (formally valid or formally invalid) and type of the problem. Problem type consistent of three levels: prological problems (i.e., problems in which background knowledge suggested to accept valid but reject invalid conclusions), neutral problems (i.e., in which background knowledge suggested to reject all problems), and counterlogical problems (i.e., problems in which background knowledge suggested to reject valid but accept invalid conclusions).

Usage

sk2011.2

Arguments

Format

A data.frame with 2268 rows and 9 variables.

Details

This data set contains 63 participants in contrast to the originally reported 56 participants. The additional participants were not included in the original studies as they did not meet the inclusion criteria (i.e., no students, prior education in logic, or participated in a similar experiment). The IDs of those additional participants are: 7, 8, 9, 12, 17, 24, 30. The excluded participant reported in the paper has ID 16.

content has the following levels (C = content/conditional): 1 = Wenn eine Person in ein Schwimmbecken gefallen ist, dann ist sie nass. 2 = Wenn ein Hund Fl<U+00F6>he hat, dann kratzt er sich hin und wieder. 3 = Wenn eine Seifenblase mit einer Nadel gestochen wurde, dann platzt sie. 4 = Wenn ein M<U+00E4>dchen Geschlechtsverkehr vollzogen hat, dann ist es schwanger. 5 = Wenn eine Pflanze ausreichend gegossen wird, dann bleibt sie gr<U+00FC>n. 6 = Wenn sich eine Person die Z<U+00E4>hne putzt, dann bekommt sie KEIN Karies. 7 = Wenn eine Person viel Cola trinkt, dann nimmt sie an Gewicht zu. 8 = Wenn eine Person die Klimaanlage angeschaltet hat, dann fr<U+00F6>stelt sie. 9 = Wenn eine Person viel lernt, dann wird sie in der Klausur eine gute Note erhalten.

Examples

Run this code
# NOT RUN {
data("sk2011.2")

## remove excluded participants:

sk2_final <- droplevels(sk2011.2[!(sk2011.2$id %in% c(7, 8, 9, 12, 16, 17, 24, 30)),])
str(sk2_final)

## Table 2 (inference = problem):
aov_ez("id", "response", sk2_final[sk2_final$what == "affirmation",], 
       between = "instruction", within = c("inference", "type"),
       anova_table=list(es = "pes"))

aov_ez("id", "response", sk2_final[sk2_final$what == "denial",], 
       between = "instruction", within = c("inference", "type"),
       anova_table=list(es = "pes"))

# Recreate Figure 4 (corrected version):

sk2_aff <- droplevels(sk2_final[sk2_final$what == "affirmation",])
sk2_aff$type2 <- factor(sk2_aff$inference:sk2_aff$type, levels = c("MP:prological", 
                            "MP:neutral", "MP:counterlogical", "AC:counterlogical", 
                            "AC:neutral", "AC:prological"))
a1_b <- aov_ez("id", "response", sk2_aff, 
       between = "instruction", within = c("type2"))

sk2_den <- droplevels(sk2_final[sk2_final$what == "denial",])
sk2_den$type2 <- factor(sk2_den$inference:sk2_den$type, levels = c("MT:prological", 
                            "MT:neutral", "MT:counterlogical", "DA:counterlogical", 
                            "DA:neutral","DA:prological"))
a2_b <- aov_ez("id", "response", sk2_den, 
       between = "instruction", within = c("type2"))

if (requireNamespace("emmeans")) {
  emmeans::emmip(a1_b,instruction~type2, ylim = c(0, 100))
  emmeans::emmip(a2_b,instruction~type2, ylim = c(0, 100))
}
# }

Run the code above in your browser using DataLab