Load Packages

haven

# Check if haven is already installed and if it is, load it.
if (!require(haven)){
  # If it's not intalled, then tell R to install it.
  install.packages("haven", dependencies = TRUE)
  # Once it's installed, tell R to load it.
  library(haven)

tidyverse

  library(tidyverse)
── Attaching core tidyverse packages ──────────────
✔ dplyr     1.1.2     ✔ readr     2.1.4
✔ forcats   1.0.0     ✔ stringr   1.5.0
✔ ggplot2   3.4.4     ✔ tibble    3.2.1
✔ lubridate 1.9.2     ✔ tidyr     1.3.0
✔ purrr     1.0.2     ── Conflicts ───────────── tidyverse_conflicts() ──
✖ dplyr::filter() masks stats::filter()
✖ dplyr::lag()    masks stats::lag()
ℹ Use the ]8;;http://conflicted.r-lib.org/conflicted package]8;; to force all conflicts to become errors

summarytools

```{r}
Error: attempt to use zero-length variable name

Import Data

dataset <- read_sav("Harry Potter Data.sav") 

Codebook

#First select the variables you'd like to summarize
dataset %>%
  select (CoinFlip, FFM_3, Potter7) -> exampleDF

#Then print them with this command
print(dfSummary(exampleDF, graph.magnif = .75), method = 'render')
Warning: unable to open connection to X11 display ''

Data Frame Summary

exampleDF

Dimensions: 122 x 3
Duplicates: 90
No Variable Label Stats / Values Freqs (% of Valid) Graph Valid Missing
1 CoinFlip [haven_labelled, vctrs_vctr, double] Flip a coin. Is it heads or tails?
Min : 1
Mean : 1.3
Max : 2
1:83(70.3%)
2:35(29.7%)
118 (96.7%) 4 (3.3%)
2 FFM_3 [haven_labelled, vctrs_vctr, double] I see Myself as Someone Who..... - Does a thorough job
Mean (sd) : 4.3 (0.8)
min ≤ med ≤ max:
2 ≤ 4 ≤ 5
IQR (CV) : 1 (0.2)
2:4(4.1%)
3:10(10.2%)
4:40(40.8%)
5:44(44.9%)
98 (80.3%) 24 (19.7%)
3 Potter7 [haven_labelled, vctrs_vctr, double] Four boxes are placed before you. Which would you try and open?
Mean (sd) : 2.6 (1.2)
min ≤ med ≤ max:
1 ≤ 3 ≤ 4
IQR (CV) : 2 (0.5)
1:25(24.8%)
2:24(23.8%)
3:21(20.8%)
4:31(30.7%)
101 (82.8%) 21 (17.2%)

Generated by summarytools 1.0.1 (R version 4.3.2)
2024-02-20

LS0tCnRpdGxlOiAiTGVhcm5pbmcgaG93IHRvIGNyZWF0ZSBhIGRhdGEgY29kZWJvb2siCm91dHB1dDoKICBodG1sX25vdGVib29rOgogICAgdGhlbWU6IHNhbmRzdG9uZQogICAgdG9jOiB5ZXMKICAgIHRvY19mbG9hdDogeWVzCi0tLQoKIyBMb2FkIFBhY2thZ2VzIHsudGFic2V0fQoKIyMgaGF2ZW4KCmBgYHtyfQojIENoZWNrIGlmIGhhdmVuIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBpZiBpdCBpcywgbG9hZCBpdC4KaWYgKCFyZXF1aXJlKGhhdmVuKSl7CiAgIyBJZiBpdCdzIG5vdCBpbnRhbGxlZCwgdGhlbiB0ZWxsIFIgdG8gaW5zdGFsbCBpdC4KICBpbnN0YWxsLnBhY2thZ2VzKCJoYXZlbiIsIGRlcGVuZGVuY2llcyA9IFRSVUUpCiAgIyBPbmNlIGl0J3MgaW5zdGFsbGVkLCB0ZWxsIFIgdG8gbG9hZCBpdC4KICBsaWJyYXJ5KGhhdmVuKQpgYGAKCiMjIHRpZHl2ZXJzZQoKYGBge3J9CmlmICghcmVxdWlyZSh0aWR5dmVyc2UpKXsKICBpbnN0YWxsLnBhY2thZ2VzKCJ0aWR5dmVyc2UiLCBkZXBlbmRlbmNpZXMgPSBUUlVFKQogIGxpYnJhcnkodGlkeXZlcnNlKQp9CmBgYAoKIyMgc3VtbWFyeXRvb2xzCgpgYGB7cn0KaWYgKCFyZXF1aXJlKHN1bW1hcnl0b29scykpewogIGluc3RhbGwucGFja2FnZXMoInN1bW1hcnl0b29scyIsIGRlcGVuZGVuY2llcyA9IFRSVUUpCiAgbGlicmFyeShzdW1tYXJ5dG9vbHMpCn0KYGBgCgojIEltcG9ydCBEYXRhCgpgYGB7cn0gCmRhdGFzZXQgPC0gcmVhZF9zYXYoIkhhcnJ5IFBvdHRlciBEYXRhLnNhdiIpIApgYGAKCiMgQ29kZWJvb2sKCmBgYHtyfQojRmlyc3Qgc2VsZWN0IHRoZSB2YXJpYWJsZXMgeW91J2QgbGlrZSB0byBzdW1tYXJpemUKZGF0YXNldCAlPiUKICBzZWxlY3QgKENvaW5GbGlwLCBGRk1fMywgUG90dGVyNykgLT4gZXhhbXBsZURGCgojVGhlbiBwcmludCB0aGVtIHdpdGggdGhpcyBjb21tYW5kCnByaW50KGRmU3VtbWFyeShleGFtcGxlREYsIGdyYXBoLm1hZ25pZiA9IC43NSksIG1ldGhvZCA9ICdyZW5kZXInKQoKYGBgCgoK