Load packages
library(tidyverse) ## Wrangling data
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.6
## ✔ forcats 1.0.1 ✔ stringr 1.6.0
## ✔ ggplot2 4.0.1 ✔ tibble 3.3.1
## ✔ lubridate 1.9.4 ✔ tidyr 1.3.2
## ✔ purrr 1.2.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(psych) ## basic statistics
##
## Attaching package: 'psych'
##
## The following objects are masked from 'package:ggplot2':
##
## %+%, alpha
library(rio) ## import and export datasets
library(DescTools) ## calculate Mode
##
## Attaching package: 'DescTools'
##
## The following objects are masked from 'package:psych':
##
## AUC, ICC, SD
library(readr)
import dataset
MediaMarketingDataset <- read_csv("MediaMarketingDataset.csv")
## Rows: 20 Columns: 28
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (8): Full_Name, Background, Country, Ethnicity, Disability, Education_L...
## dbl (20): Student_ID, Age, Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, Q10, Q11, Q12...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
head(MediaMarketingDataset)
## # A tibble: 6 × 28
## Student_ID Full_Name Background Country Ethnicity Disability Education_Level
## <dbl> <chr> <chr> <chr> <chr> <chr> <chr>
## 1 1 Alex Johns… Urban USA White None Undergraduate
## 2 2 Maria Chen Internati… China Asian None Graduate
## 3 3 David Kim Urban USA Asian None Undergraduate
## 4 4 Sarah Ahmed Internati… UAE Middle E… None Graduate
## 5 5 James Smith Rural USA White None Undergraduate
## 6 6 Emily Davis Urban USA Black None Undergraduate
## # ℹ 21 more variables: Age <dbl>, `Major/Field_of_Study` <chr>, Gender <chr>,
## # Q1 <dbl>, Q2 <dbl>, Q3 <dbl>, Q4 <dbl>, Q5 <dbl>, Q6 <dbl>, Q7 <dbl>,
## # Q8 <dbl>, Q9 <dbl>, Q10 <dbl>, Q11 <dbl>, Q12 <dbl>, Q13 <dbl>, Q14 <dbl>,
## # Q15 <dbl>, Q16 <dbl>, Q17 <dbl>, Q18 <dbl>
response_data <- MediaMarketingDataset %>%
select(Q1:Q18)
response_data %>%
describe()
## vars n mean sd median trimmed mad min max range skew kurtosis se
## Q1 1 20 3.50 1.19 4.0 3.50 1.48 2 5 3 -0.09 -1.61 0.27
## Q2 2 20 3.30 0.98 3.0 3.25 1.48 2 5 3 0.06 -1.22 0.22
## Q3 3 20 3.35 0.67 3.0 3.44 1.48 2 4 2 -0.47 -0.93 0.15
## Q4 4 20 3.95 1.15 4.0 4.06 1.48 2 5 3 -0.51 -1.33 0.26
## Q5 5 20 4.25 0.85 4.5 4.31 0.74 3 5 2 -0.46 -1.53 0.19
## Q6 6 20 4.30 0.86 5.0 4.38 0.00 3 5 2 -0.57 -1.48 0.19
## Q7 7 20 4.20 1.01 4.5 4.38 0.74 2 5 3 -0.97 -0.30 0.22
## Q8 8 20 3.55 1.43 4.0 3.69 1.48 1 5 4 -0.45 -1.35 0.32
## Q9 9 20 4.05 1.05 4.0 4.19 1.48 2 5 3 -0.61 -1.05 0.23
## Q10 10 20 3.30 0.98 3.0 3.25 1.48 2 5 3 0.06 -1.22 0.22
## Q11 11 20 3.35 0.67 3.0 3.44 1.48 2 4 2 -0.47 -0.93 0.15
## Q12 12 20 2.55 1.15 3.0 2.56 1.48 1 4 3 -0.12 -1.50 0.26
## Q13 13 20 4.45 0.76 5.0 4.56 0.00 3 5 2 -0.87 -0.81 0.17
## Q14 14 20 4.55 0.76 5.0 4.69 0.00 3 5 2 -1.19 -0.27 0.17
## Q15 15 20 2.30 0.47 2.0 2.25 0.00 2 3 1 0.81 -1.41 0.11
## Q16 16 20 1.50 0.51 1.5 1.50 0.74 1 2 1 0.00 -2.10 0.11
## Q17 17 20 2.40 0.50 2.0 2.38 0.00 2 3 1 0.38 -1.95 0.11
## Q18 18 20 2.10 1.12 2.0 2.00 1.48 1 4 3 0.46 -1.30 0.25
Mode
response_data %>%
pull(Q12) %>%
Mode()
## [1] 3
## attr(,"freq")
## [1] 6
Histogram
response_data %>%
pull(Q12) %>%
hist()

Boxplot
response_data %>%
pull(Q12) %>%
boxplot()

Reliability
MediaMarketingDataset %>%
select(Q1:Q18) %>%
alpha ()
## Warning in cor.smooth(r): Matrix was not positive definite, smoothing was done
##
## Reliability analysis
## Call: alpha(x = .)
##
## raw_alpha std.alpha G6(smc) average_r S/N ase mean sd median_r
## 0.97 0.97 1 0.63 31 0.0073 3.4 0.75 0.76
##
## 95% confidence boundaries
## lower alpha upper
## Feldt 0.95 0.97 0.99
## Duhachek 0.95 0.97 0.98
##
## Reliability if an item is dropped:
## raw_alpha std.alpha G6(smc) average_r S/N alpha se var.r med.r
## Q1 0.97 0.97 1.00 0.63 29 0.0081 0.087 0.76
## Q2 0.97 0.97 1.00 0.62 28 0.0081 0.087 0.75
## Q3 0.97 0.97 1.00 0.62 28 0.0079 0.091 0.75
## Q4 0.96 0.96 0.99 0.62 27 0.0085 0.087 0.74
## Q5 0.97 0.97 1.00 0.62 28 0.0081 0.089 0.75
## Q6 0.97 0.97 1.00 0.62 28 0.0080 0.091 0.74
## Q7 0.97 0.97 1.00 0.62 28 0.0078 0.093 0.76
## Q8 0.97 0.96 1.00 0.62 27 0.0090 0.090 0.74
## Q9 0.96 0.97 1.00 0.62 28 0.0083 0.087 0.75
## Q10 0.97 0.97 1.00 0.62 28 0.0081 0.087 0.75
## Q11 0.97 0.97 0.99 0.63 28 0.0080 0.087 0.75
## Q12 0.97 0.97 1.00 0.62 28 0.0083 0.088 0.74
## Q13 0.97 0.97 1.00 0.62 28 0.0079 0.092 0.75
## Q14 0.97 0.97 0.99 0.64 30 0.0073 0.095 0.79
## Q15 0.97 0.97 1.00 0.69 38 0.0068 0.063 0.79
## Q16 0.97 0.97 1.00 0.64 30 0.0076 0.092 0.79
## Q17 0.97 0.97 0.99 0.68 37 0.0068 0.072 0.79
## Q18 0.97 0.97 1.00 0.67 35 0.0057 0.085 0.80
##
## Item statistics
## n raw.r std.r r.cor r.drop mean sd
## Q1 20 0.91 0.88 0.88 0.89 3.5 1.19
## Q2 20 0.92 0.90 0.89 0.91 3.3 0.98
## Q3 20 0.90 0.91 0.91 0.89 3.4 0.67
## Q4 20 0.97 0.96 0.97 0.97 4.0 1.15
## Q5 20 0.92 0.91 0.92 0.91 4.2 0.85
## Q6 20 0.91 0.92 0.92 0.90 4.3 0.86
## Q7 20 0.89 0.90 0.90 0.87 4.2 1.01
## Q8 20 0.98 0.98 0.98 0.98 3.5 1.43
## Q9 20 0.95 0.94 0.94 0.94 4.0 1.05
## Q10 20 0.92 0.90 0.89 0.91 3.3 0.98
## Q11 20 0.91 0.90 0.90 0.90 3.4 0.67
## Q12 20 0.94 0.92 0.92 0.93 2.5 1.15
## Q13 20 0.90 0.90 0.90 0.89 4.5 0.76
## Q14 20 0.73 0.75 0.75 0.71 4.5 0.76
## Q15 20 0.22 0.27 0.27 0.18 2.3 0.47
## Q16 20 0.80 0.80 0.80 0.78 1.5 0.51
## Q17 20 0.29 0.34 0.34 0.25 2.4 0.50
## Q18 20 0.47 0.46 0.45 0.40 2.1 1.12
##
## Non missing response frequency for each item
## 1 2 3 4 5 miss
## Q1 0.00 0.30 0.15 0.30 0.25 0
## Q2 0.00 0.25 0.30 0.35 0.10 0
## Q3 0.00 0.10 0.45 0.45 0.00 0
## Q4 0.00 0.15 0.20 0.20 0.45 0
## Q5 0.00 0.00 0.25 0.25 0.50 0
## Q6 0.00 0.00 0.25 0.20 0.55 0
## Q7 0.00 0.10 0.10 0.30 0.50 0
## Q8 0.10 0.20 0.10 0.25 0.35 0
## Q9 0.00 0.10 0.20 0.25 0.45 0
## Q10 0.00 0.25 0.30 0.35 0.10 0
## Q11 0.00 0.10 0.45 0.45 0.00 0
## Q12 0.25 0.20 0.30 0.25 0.00 0
## Q13 0.00 0.00 0.15 0.25 0.60 0
## Q14 0.00 0.00 0.15 0.15 0.70 0
## Q15 0.00 0.70 0.30 0.00 0.00 0
## Q16 0.50 0.50 0.00 0.00 0.00 0
## Q17 0.00 0.60 0.40 0.00 0.00 0
## Q18 0.40 0.25 0.20 0.15 0.00 0