Last active
February 22, 2023 08:57
-
-
Save vanatteveldt/4892f92e2c53b155993dc2317d94e491 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Encoding: UTF-8. | |
DATASET ACTIVATE DataSet1. | |
FREQUENCIES VARIABLES=Q14 Q37 A4.1_ A4.2_ A4.3_ Q37_1 Q37_2 Q37_3 Q37_4 Q37_5 Q37_6 Q37_7 Q37_8 | |
Q38_1 Q38_2 Q38_3 Q38_4 Q38_5 Q38_6 Q38_7 Q38_8 Q38_9 Q40_1 Q40_2 Q40_3 Q40_4 Q40_5 Q40_6 Q40_7 | |
Q40_8 Q15 | |
/STATISTICS=MEAN MEDIAN MODE | |
/ORDER=ANALYSIS. | |
*** hieronder de variabele veranderd (andere naam) | |
RENAME VARIABLES | |
Q37= Controle_vraag | |
A4.1_= Leeftijd. | |
A4.2_ = Gender. | |
RENAME VARIABLES | |
A4.3_ = Opleidingsniveau. | |
RENAME VARIABLES | |
Q37_1 = Vertrouwen_1. | |
RENAME VARIABLES | |
Q37_2 = Vertrouwen_2 | |
Q37_3 = Vertrouwen_3. | |
RENAME VARIABLES | |
Q37_4 = Vertrouwen_4 | |
Q37_5 = Vertrouwen_5 | |
Q37_6 = Vertrouwen_6 | |
Q37_7 = Vertrouwen_7 | |
Q37_8 = Vertrouwen_8. | |
RENAME VARIABLES | |
Q38_1 = Privacygevoeligheid_1 | |
Q38_2 = Privacygevoeligheid_2 | |
Q38_3 = Privacygevoeligheid_3 | |
Q38_4 = Privacygevoeligheid_4. | |
RENAME VARIABLES | |
Q38_5 = Privacygevoeligheid_5 | |
Q38_6 = Privacygevoeligheid_6 | |
Q38_7 = Privacygevoeligheid_7 | |
Q38_8 = Privacygevoeligheid_8 | |
Q38_9 = Privacygevoeligheid_9. | |
RENAME VARIABLES | |
Q40_1 = Perceptie_medewerkers_1 | |
Q40_2 = Perceptie_medewerkers_2 | |
Q40_3 = Perceptie_medewerkers_3 | |
Q40_4 = Perceptie_medewerkers_4 | |
Q40_5 = Perceptie_medewerkers_5 | |
Q40_6 = Perceptie_medewerkers_6 | |
Q40_7 = Perceptie_medewerkers_7 | |
Q40_8 = Perceptie_medewerkers_8. | |
** hierboven namen veranderd. | |
DATASET ACTIVATE DataSet3. | |
RELIABILITY | |
/VARIABLES=Vertrouwen_1 Vertrouwen_2 Vertrouwen_3 Vertrouwen_4 Vertrouwen_5 Vertrouwen_6 | |
Vertrouwen_7 Vertrouwen_8 | |
/SCALE('ALL VARIABLES') ALL | |
/MODEL=ALPHA | |
/STATISTICS=SCALE | |
/SUMMARY=TOTAL. | |
** betrouwbaarheidsanalyse 'vertrouwen' cronbach's alpha .897 | |
RELIABILITY | |
/VARIABLES=Privacygevoeligheid_1 Privacygevoeligheid_2 Privacygevoeligheid_3 | |
Privacygevoeligheid_4 Privacygevoeligheid_5 Privacygevoeligheid_6 Privacygevoeligheid_7 | |
Privacygevoeligheid_8 Privacygevoeligheid_9 | |
/SCALE('ALL VARIABLES') ALL | |
/MODEL=ALPHA | |
/STATISTICS=SCALE | |
/SUMMARY=TOTAL. | |
*** betrouwbaarheidsanalyse 'privacygevoeligheid' cronbach's alpha .849 | |
RELIABILITY | |
/VARIABLES=Perceptie_medewerkers_1 Perceptie_medewerkers_2 Perceptie_medewerkers_3 | |
Perceptie_medewerkers_4 Perceptie_medewerkers_5 Perceptie_medewerkers_6 Perceptie_medewerkers_7 | |
Perceptie_medewerkers_8 | |
/SCALE('ALL VARIABLES') ALL | |
/MODEL=ALPHA | |
/STATISTICS=SCALE | |
/SUMMARY=TOTAL. | |
** betrouwbaarheidsanalyse 'perceptie medewerkers' cronbach's alpha .887 | |
COMPUTE vertrouwen=MEAN(Vertrouwen_1,Vertrouwen_2,Vertrouwen_3,Vertrouwen_4,Vertrouwen_5, | |
Vertrouwen_6,Vertrouwen_7,Vertrouwen_8). | |
EXECUTE. | |
** schaal van vertrouwen | |
FREQUENCIES VARIABLES=vetrouwen | |
/STATISTICS=STDDEV MEAN MEDIAN MODE | |
/ORDER=ANALYSIS. | |
**uitrekenen van het gemiddelde etc vertrouwen (met de juiste schaal, onderaan te vinden in de variable view) | |
COMPUTE privacygevoeligheid=MEAN(Privacygevoeligheid_1,Privacygevoeligheid_2,Privacygevoeligheid_3, | |
Privacygevoeligheid_4,Privacygevoeligheid_5,Privacygevoeligheid_6,Privacygevoeligheid_7, | |
Privacygevoeligheid_8,Privacygevoeligheid_9). | |
EXECUTE. | |
** schaal van privacy gevoeligheid | |
FREQUENCIES VARIABLES=privacygevoeligheid | |
/STATISTICS=STDDEV MEAN MEDIAN MODE | |
/ORDER=ANALYSIS. | |
**uitrekenen gemiddelde van privacy (met de juiste schaal, onderaan te vinden in de variable view) | |
COMPUTE perceptie_medewerkers=MEAN(Perceptie_medewerkers_1,Perceptie_medewerkers_2, | |
Perceptie_medewerkers_3,Perceptie_medewerkers_4,Perceptie_medewerkers_5,Perceptie_medewerkers_6, | |
Perceptie_medewerkers_7,Perceptie_medewerkers_8). | |
EXECUTE. | |
** schaal van perceptie | |
FREQUENCIES VARIABLES=perceptie_medewerkers | |
/STATISTICS=STDDEV MEAN MEDIAN MODE | |
/ORDER=ANALYSIS. | |
** uitrekenen gemiddelde etc van perceptie medewerkers (met de juiste schaal, onderaan te vinden in de variable view) | |
DATASET ACTIVATE DataSet1. | |
CORRELATIONS | |
/VARIABLES=Vertrouwen_1 Vertrouwen_2 Vertrouwen_3 Vertrouwen_4 Vertrouwen_5 Vertrouwen_6 | |
Vertrouwen_7 Vertrouwen_8 Privacygevoeligheid_1 Privacygevoeligheid_2 Privacygevoeligheid_3 | |
Privacygevoeligheid_4 Privacygevoeligheid_5 Privacygevoeligheid_6 Privacygevoeligheid_7 | |
Privacygevoeligheid_8 Privacygevoeligheid_9 Perceptie_medewerkers_1 Perceptie_medewerkers_2 | |
Perceptie_medewerkers_3 Perceptie_medewerkers_4 Perceptie_medewerkers_5 Perceptie_medewerkers_6 | |
Perceptie_medewerkers_7 Perceptie_medewerkers_8 | |
/PRINT=TWOTAIL NOSIG FULL | |
/STATISTICS DESCRIPTIVES | |
/MISSING=PAIRWISE. | |
** correlatiematrix poging --> mislukt | |
CORRELATIONS | |
/VARIABLES=privacygevoeligheid vertrouwen perceptie_medewerkers | |
/PRINT=TWOTAIL NOSIG FULL | |
/STATISTICS DESCRIPTIVES | |
/MISSING=PAIRWISE. | |
** correlatiematrix van de schalen | |
REGRESSION | |
/MISSING LISTWISE | |
/STATISTICS COEFF OUTS CI(95) R ANOVA | |
/CRITERIA=PIN(.05) POUT(.10) | |
/NOORIGIN | |
/DEPENDENT vertrouwen | |
/METHOD=ENTER privacygevoeligheid perceptie_medewerkers. | |
** regressieanalyse poging --> gelukt | |
DATASET ACTIVATE DataSet1. | |
CORRELATIONS | |
/VARIABLES=vertrouwen privacygevoeligheid perceptie_medewerkers Gender Opleidingsniveau | |
/PRINT=TWOTAIL NOSIG FULL | |
/STATISTICS DESCRIPTIVES | |
/MISSING=PAIRWISE. | |
** correlatiematrix incl gender + opleidingsniveau | |
CORRELATIONS | |
/VARIABLES=vertrouwen privacygevoeligheid perceptie_medewerkers Leeftijd Gender Opleidingsniveau | |
/PRINT=TWOTAIL NOSIG FULL | |
/STATISTICS DESCRIPTIVES | |
/MISSING=PAIRWISE. | |
** nieuwe correlatiematrix incl leeftijd | |
DATASET ACTIVATE DataSet1. | |
DESCRIPTIVES VARIABLES=Leeftijd | |
/STATISTICS=MEAN STDDEV MIN MAX. | |
** gemiddelde leeftijd berekend | |
T-TEST GROUPS=Gender(1 2) | |
/MISSING=ANALYSIS | |
/VARIABLES=vertrouwen | |
/ES DISPLAY(TRUE) | |
/CRITERIA=CI(.95). | |
** t-test uitgevoerd gender vergelijken met vertrouwen. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# The goal: OLS regression of vertrouwen ~ privacygevoeligheid + perceptie_medewerkers | |
# Steps to be taken | |
# - read in data | |
# - data cleaning: select and rename columns | |
# - check reliability (cronbach's alpha) and create scales | |
# - compute pairwise correlations | |
# - regression analysis | |
# Read in data | |
library(haven) | |
d = read_sav("~/Downloads/Project 2 GGD_February 21, 2023_03.46.sav") | |
View(d) | |
# (1) Data cleaning | |
# RENAME VARIABLES | |
# Q37_1 = Vertrouwen_1. | |
# Q37_2 = Vertrouwen_2 | |
# Q37_3 = Vertrouwen_3. | |
# Q37_4 = Vertrouwen_4 | |
# Q37_5 = Vertrouwen_5 | |
# Q37_6 = Vertrouwen_6 | |
# Q37_7 = Vertrouwen_7 | |
# Q37_8 = Vertrouwen_8. | |
# RENAME VARIABLES | |
# Q38_1 = Privacygevoeligheid_1 | |
# Q38_2 = Privacygevoeligheid_2 | |
# Q38_3 = Privacygevoeligheid_3 | |
# Q38_4 = Privacygevoeligheid_4. | |
# Q38_5 = Privacygevoeligheid_5 | |
# Q38_6 = Privacygevoeligheid_6 | |
# Q38_7 = Privacygevoeligheid_7 | |
# Q38_8 = Privacygevoeligheid_8 | |
# Q38_9 = Privacygevoeligheid_9. | |
# RENAME VARIABLES | |
# Q40_1 = Perceptie_medewerkers_1 | |
# Q40_2 = Perceptie_medewerkers_2 | |
# Q40_3 = Perceptie_medewerkers_3 | |
# Q40_4 = Perceptie_medewerkers_4 | |
# Q40_5 = Perceptie_medewerkers_5 | |
# Q40_6 = Perceptie_medewerkers_6 | |
# Q40_7 = Perceptie_medewerkers_7 | |
# Q40_8 = Perceptie_medewerkers_8. | |
library(tidyverse) | |
# Filter on status: | |
cleaned = filter(d, Status != 1) | |
# Note: equivalent with pipelines: | |
cleaned = d |> filter(status != 1) | |
# The 'traditional' way: Rename one by one | |
cleaned = select(cleaned, ResponseId, | |
Vertrouwen_1 = Q37_1, Vertrouwen_2 = Q37_2, Vertrouwen_3 = Q37_3, Vertrouwen_4 = Q37_4, | |
Vertrouwen_5 = Q37_5, Vertrouwen_6 = Q37_6, Vertrouwen_7 = Q37_7, Vertrouwen_8 = Q37_8, | |
Privacygevoeligheid_1 = Q38_1, Privacygevoeligheid_2 = Q38_2,Privacygevoeligheid_3 = Q38_3,Privacygevoeligheid_4 = Q38_4, | |
Privacygevoeligheid_5 = Q38_5, Privacygevoeligheid_6 = Q38_6,Privacygevoeligheid_7 = Q38_7,Privacygevoeligheid_8 = Q38_8, Privacygevoeligheid_9 = Q38_9, | |
Perceptie_medewerkers_1 = Q40_1, Perceptie_medewerkers_2 = Q40_2, Perceptie_medewerkers_3 = Q40_3, Perceptie_medewerkers_4 = Q40_4, | |
Perceptie_medewerkers_5 = Q40_5, Perceptie_medewerkers_6 = Q40_6, Perceptie_medewerkers_7 = Q40_7, Perceptie_medewerkers_8 = Q40_8) | |
# Alternatively, automatically rename and select based on prefix | |
cleaned = cleaned |> | |
rename_with(~str_replace(., "Q37", "Vertrouwen"), starts_with("Q37")) |> | |
rename_with(~str_replace(., "Q38", "Privacygevoeligheid"), starts_with("Q38")) |> | |
rename_with(~str_replace(., "Q40", "Perceptie_medewerkers"), starts_with("Q40")) |> | |
select(ResponseId, starts_with("Vertrouwen_"), starts_with("Privacy"), starts_with("Perceptie")) | |
# (2) Reliability and scale construction | |
# RELIABILITY /VARIABLES=Vertrouwen_1 Vertrouwen_2 Vertrouwen_3 Vertrouwen_4 Vertrouwen_5 Vertrouwen_6 Vertrouwen_7 Vertrouwen_8 | |
# /SCALE('ALL VARIABLES') ALL | |
# /MODEL=ALPHA | |
# /STATISTICS=SCALE | |
# /SUMMARY=TOTAL. | |
# askgpt::askgpt("How do I compute cronbach's alpha in R?") | |
library(psych) | |
cleaned |> select(starts_with("Vertrouwen")) |> alpha() | |
cleaned |> select(starts_with("Privacygevoeligheid")) |> alpha() | |
cleaned |> select(starts_with("Perceptie_medewerkers")) |>alpha() | |
# COMPUTE vertrouwen=MEAN(Vertrouwen_1,Vertrouwen_2,Vertrouwen_3,Vertrouwen_4,Vertrouwen_5, | |
# Vertrouwen_6,Vertrouwen_7,Vertrouwen_8). | |
# etc for other variables | |
# The 'traditional' way: | |
scaled = cleaned |> mutate( | |
Vertrouwen = (Vertrouwen_1 + Vertrouwen_2 + Vertrouwen_3 + Vertrouwen_4 + Vertrouwen_5 + Vertrouwen_6 + Vertrouwen_7 + Vertrouwen_8)/8, | |
Privacygevoeligheid = (Privacygevoeligheid_1 + Privacygevoeligheid_2 + Privacygevoeligheid_3 + Privacygevoeligheid_4 + | |
Privacygevoeligheid_5 + Privacygevoeligheid_6 + Privacygevoeligheid_7 + Privacygevoeligheid_8 + Privacygevoeligheid_9)/9, | |
Perceptie_medewerkers = (Perceptie_medewerkers_1 + Perceptie_medewerkers_2 + Perceptie_medewerkers_3 + Perceptie_medewerkers_4 + | |
Perceptie_medewerkers_5 + Perceptie_medewerkers_6 + Perceptie_medewerkers_7 + Perceptie_medewerkers_8) | |
) |> | |
select(ResponseId, Vertrouwen, Privacygevoeligheid, Perceptie_medewerkers) |> | |
arrange(ResponseId) | |
# Using rowwise operations (needed because by default, mean takes mean across whole column) | |
scaled = cleaned |> | |
rowwise() |> | |
mutate(Vertrouwen=mean(c_across(Vertrouwen_1:Vertrouwen_8)), | |
Privacygevoeligheid=mean(c_across(Privacygevoeligheid_1:Privacygevoeligheid_9)), | |
Perceptie_medewerkers=mean(c_across(Perceptie_medewerkers_1:Perceptie_medewerkers_8)) | |
) |> | |
select(ResponseId, Vertrouwen, Privacygevoeligheid, Perceptie_medewerkers) |> | |
arrange(ResponseId) | |
# And as another alternative, use pivoting | |
scaled = cleaned |> | |
pivot_longer(-ResponseId) |> | |
mutate(scale=str_remove_all(name, "_\\d")) |> | |
group_by(ResponseId, scale) |> | |
summarize(value=mean(value)) |> | |
pivot_wider(names_from=scale) |> | |
arrange(ResponseId) | |
# (3) Pairwise correlations | |
#CORRELATIONS | |
#/VARIABLES=privacygevoeligheid vertrouwen perceptie_medewerkers | |
#/PRINT=TWOTAIL NOSIG FULL | |
#/STATISTICS DESCRIPTIVES | |
#/MISSING=PAIRWISE. | |
scaled |> select(-ResponseId) |> cor(use = "pairwise") | |
cor.test(scaled$Vertrouwen, scaled$Privacygevoeligheid) | |
library(corrplot) | |
cleaned |> | |
select(-ResponseId) |> | |
cor(use = "pairwise") |> | |
corrplot(diag = F) | |
# (4) Regression | |
#REGRESSION | |
#/MISSING LISTWISE | |
#/STATISTICS COEFF OUTS CI(95) R ANOVA | |
#/CRITERIA=PIN(.05) POUT(.10) | |
#/NOORIGIN | |
#/DEPENDENT vertrouwen | |
#/METHOD=ENTER privacygevoeligheid perceptie_medewerkers. | |
m = lm(Vertrouwen ~ Privacygevoeligheid + Perceptie_medewerkers, data=scaled) | |
summary(m) | |
library(sjPlot) | |
sjPlot::tab_model(m, show.std=T, show.ci=F) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(psych) | |
library(tidyverse) | |
library(haven) | |
d = read_sav("~/Downloads/Project 2 GGD_February 21, 2023_03.46.sav") | |
cleaned = d |> filter(status != 1) |> | |
rename_with(~str_replace(., "Q37", "Vertrouwen"), starts_with("Q37")) |> | |
rename_with(~str_replace(., "Q38", "Privacygevoeligheid"), starts_with("Q38")) |> | |
rename_with(~str_replace(., "Q40", "Perceptie_medewerkers"), starts_with("Q40")) |> | |
select(ResponseId, starts_with("Vertrouwen_"), starts_with("Privacy"), starts_with("Perceptie")) | |
cleaned |> select(starts_with("Vertrouwen")) |> alpha() | |
cleaned |> select(starts_with("Privacygevoeligheid")) |> alpha() | |
cleaned |> select(starts_with("Perceptie_medewerkers")) |>alpha() | |
scaled = cleaned |> | |
rowwise() |> | |
mutate(Vertrouwen=mean(c_across(Vertrouwen_1:Vertrouwen_8)), | |
Privacygevoeligheid=mean(c_across(Privacygevoeligheid_1:Privacygevoeligheid_9)), | |
Perceptie_medewerkers=mean(c_across(Perceptie_medewerkers_1:Perceptie_medewerkers_8)) | |
) |> | |
select(ResponseId, Vertrouwen, Privacygevoeligheid, Perceptie_medewerkers) |> | |
arrange(ResponseId) | |
scaled |> select(-ResponseId) |> cor(use = "pairwise") | |
cor.test(scaled$Vertrouwen, scaled$Privacygevoeligheid) | |
library(corrplot) | |
cleaned |> | |
select(-ResponseId) |> | |
cor(use = "pairwise") |> | |
corrplot(diag = F) | |
m = lm(Vertrouwen ~ Privacygevoeligheid + Perceptie_medewerkers, data=scaled) | |
summary(m) | |
library(sjPlot) | |
sjPlot::tab_model(m, show.std=T, show.ci=F) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment