READ ME

Explaination of variables (further info down below)

  • DSE : Data protection / informed consent
  • EF : Introduction Scenario without information
  • EFInfo_EFHer : Interest in additional information for conventional concrete staircase element
  • EFInfo_EFRec : Interest in additional information for recycled concrete staircase element
  • EFChoice : Choice option between conventional vs. recycled concrete staircase element in introduction scenario
  • Att : Choice of attributes (checked yes/no)
  • WTP : Willingness to pay (1 item answered on a scale from 0€ to 2000€)
  • PEV : perceived environmental value (4 items answered on a scale from 1 (strongly disagree) to 7 (strongly agree))
  • PFR : perceived functional risk (4 items answered on a scale from 1 (strongly disagree) to 7 (strongly agree))
  • Pref : product preference (1 item answered on a scale from 1 (strongly disagree) to 7 (strongly agree))

Description of the 8 Vignettes shown

  • Sz1 : recycled aggregate concrete & low environmental impact & low structural performance (RAC_lowENV_lowSTR)
  • Sz2 : recycled aggregate concrete & low environmental impact & high structural performance (RAC_lowENV_highSTR)
  • Sz3 : recycled aggregate concrete & high environmental impact & low structural performance (RAC_highENV_lowSTR)
  • Sz4 : recycled aggregate concrete & high environmental impact & high structural performance (RAC_highENV_highSTR)
  • Sz5 : natural aggregate concrete & low environmental impact & low structural performance (NAC_lowENV_lowSTR)
  • Sz6 : natural aggregate concrete & low environmental impact & high structural performance (NAC_lowENV_highSTR)
  • Sz7 : natural aggregate concrete & high environmental impact & low structural performance (NAC_highENV_lowSTR)
  • Sz8 : natural aggregate concrete & high environmental impact & high structural performance (NAC_highENV_highSTR)

Data preparation

Clean-up

Exclusion of participants

filteredData<-processedData
##VP exclusion
n_all<-nrow(filteredData)

#consent
filteredData<-filteredData%>%filter(DSE_DS1=="Y"&DSE_DS2=="Y"&DSE_DS3=="Y"&DSE_DS4=="Y"&DSE_DS5=="Y")
n_excl_con<-n_all-nrow(filteredData)

#age
filteredData<-filteredData%>%filter(Age>=18&Age<=200)
n_excl_age<-(n_all-n_excl_con)-nrow(filteredData)

##overview
filteredData %>% select("EFInfo_EFHer","EFInfo_EFRec","EF_WTP","EF_PEVMean","EF_PFRMean","EF_Choice","Age","Gender","Prior_knowledge","UB_Mean","UBaff_Mean","UBkog_Mean","UBkon_Mean","interviewtime","time", "Confidence") %>% summary()
##   EFInfo_EFHer    EFInfo_EFRec       EF_WTP       EF_PEVMean      EF_PFRMean   
##  Min.   :1.000   Min.   :3.000   Min.   : 554   Min.   :3.250   Min.   :1.000  
##  1st Qu.:2.000   1st Qu.:6.000   1st Qu.:1000   1st Qu.:5.500   1st Qu.:2.000  
##  Median :4.000   Median :7.000   Median :1109   Median :6.000   Median :2.500  
##  Mean   :4.072   Mean   :6.133   Mean   :1119   Mean   :5.895   Mean   :2.563  
##  3rd Qu.:5.500   3rd Qu.:7.000   3rd Qu.:1276   3rd Qu.:6.500   3rd Qu.:3.250  
##  Max.   :7.000   Max.   :7.000   Max.   :2000   Max.   :7.000   Max.   :5.500  
##    EF_Choice          Age           Gender                    Prior_knowledge
##  Min.   :1.000   Min.   :18   male     : 7   no prior knowledge       :80    
##  1st Qu.:2.000   1st Qu.:19   female   :75   limited prior knowledge  : 3    
##  Median :2.000   Median :21   diverse  : 1   extensive prior knowledge: 0    
##  Mean   :1.819   Mean   :21   no_Answer: 0                                   
##  3rd Qu.:2.000   3rd Qu.:22                                                  
##  Max.   :2.000   Max.   :31                                                  
##     UB_Mean        UBaff_Mean      UBkog_Mean      UBkon_Mean   
##  Min.   :1.667   Min.   :1.667   Min.   :2.333   Min.   :1.000  
##  1st Qu.:3.667   1st Qu.:3.667   1st Qu.:3.667   1st Qu.:3.333  
##  Median :4.111   Median :4.333   Median :4.333   Median :3.667  
##  Mean   :4.024   Mean   :4.116   Mean   :4.185   Mean   :3.771  
##  3rd Qu.:4.444   3rd Qu.:4.667   3rd Qu.:4.667   3rd Qu.:4.333  
##  Max.   :5.000   Max.   :5.000   Max.   :5.000   Max.   :5.000  
##  interviewtime         time         Confidence   
##  Min.   : 332.4   Min.   : 5.54   Min.   :1.000  
##  1st Qu.: 656.4   1st Qu.:10.94   1st Qu.:2.000  
##  Median : 787.1   Median :13.12   Median :3.000  
##  Mean   : 865.2   Mean   :14.42   Mean   :3.602  
##  3rd Qu.: 966.2   3rd Qu.:16.10   3rd Qu.:5.000  
##  Max.   :2393.9   Max.   :39.90   Max.   :7.000
filteredData %>% select("Age","EF_WTP","EF_PEVMean","EF_PFRMean")%>%describe()
##            vars  n    mean     sd median trimmed    mad    min    max   range
## Age           1 83   21.00   2.60   21.0   20.57   1.48  18.00   31.0   13.00
## EF_WTP        2 83 1119.04 258.53 1109.0 1123.04 163.09 554.00 2000.0 1446.00
## EF_PEVMean    3 83    5.89   0.84    6.0    5.97   0.74   3.25    7.0    3.75
## EF_PFRMean    4 83    2.56   1.10    2.5    2.49   1.11   1.00    5.5    4.50
##             skew kurtosis    se
## Age         1.79     3.64  0.29
## EF_WTP      0.13     0.61 28.38
## EF_PEVMean -0.75     0.29  0.09
## EF_PFRMean  0.50    -0.29  0.12

Reliability analysis

###scale reliabilities: raw_alpha = Cronbach's alpha
UBaff_Mean<-select(filteredData,Umweltbewusstsein_UBaff1:Umweltbewusstsein_UBaff3)
scale_reli<-psych::alpha(UBaff_Mean)$total

UBkog_Mean<-select(filteredData,Umweltbewusstsein_UBkog1:Umweltbewusstsein_UBkog3)
scale_reli<-rbind(scale_reli,psych::alpha(UBkog_Mean)$total)

UBkon_Mean<-select(filteredData,Umweltbewusstsein_UBkon1:Umweltbewusstsein_UBkon3)
scale_reli<-rbind(scale_reli,psych::alpha(UBkon_Mean)$total)

UB_Mean<-select(filteredData,Umweltbewusstsein_UBaff1:Umweltbewusstsein_UBkon3)
scale_reli<-rbind(scale_reli,psych::alpha(UB_Mean)$total)

EF_PEVMean<-select(filteredData,EFPEV_EFPEV1:EFPEV_EFPEV4)
scale_reli<-rbind(scale_reli,psych::alpha(EF_PEVMean)$total)

EF_PFRMean<-select(filteredData,EFPFR_EFPFR1:EFPFR_EFPFR4)
scale_reli<-rbind(scale_reli,psych::alpha(EF_PFRMean)$total)

Sz1_PEVMean<-select(filteredData,Sz1PEV_Sz1PEV1:Sz1PEV_Sz1PEV4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz1_PEVMean)$total)

Sz1_PFRMean<-select(filteredData,Sz1PFR_Sz1PFR1:Sz1PFR_Sz1PFR4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz1_PFRMean)$total)

Sz2_PEVMean<-select(filteredData,Sz2PEV_Sz2PEV1:Sz2PEV_Sz2PEV4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz2_PEVMean)$total)

Sz2_PFRMean<-select(filteredData,Sz2PFR_Sz2PFR1:Sz2PFR_Sz2PFR4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz2_PFRMean)$total)

Sz3_PEVMean<-select(filteredData,Sz3PEV_Sz3PEV1:Sz3PEV_Sz3PEV4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz3_PEVMean)$total)

Sz3_PFRMean<-select(filteredData,Sz3PFR_Sz3PFR1:Sz3PFR_Sz3PFR4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz3_PFRMean)$total)

Sz4_PEVMean<-select(filteredData,Sz4PEV_Sz4PEV1:Sz4PEV_Sz4PEV4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz4_PEVMean)$total)

Sz4_PFRMean<-select(filteredData,Sz4PFR_Sz4PFR1:Sz4PFR_Sz4PFR4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz4_PFRMean)$total)

Sz5_PEVMean<-select(filteredData,Sz5PEV_Sz5PEV1:Sz5PEV_Sz5PEV4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz5_PEVMean)$total)

Sz5_PFRMean<-select(filteredData,Sz5PFR_Sz5PFR1:Sz5PFR_Sz5PFR4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz5_PFRMean)$total)

Sz6_PEVMean<-select(filteredData,Sz6PEV_Sz6PEV1:Sz6PEV_Sz6PEV4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz6_PEVMean)$total)

Sz6_PFRMean<-select(filteredData,Sz6PFR_Sz6PFR1:Sz6PFR_Sz6PFR4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz6_PFRMean)$total)

Sz7_PEVMean<-select(filteredData,Sz7PEV_Sz7PEV1:Sz7PEV_Sz7PEV4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz7_PEVMean)$total)

Sz7_PFRMean<-select(filteredData,Sz7PFR_Sz7PFR1:Sz7PFR_Sz7PFR4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz7_PFRMean)$total)

Sz8_PEVMean<-select(filteredData,Sz8PEV_Sz8PEV1:Sz8PEV_Sz8PEV4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz8_PEVMean)$total)

Sz8_PFRMean<-select(filteredData,Sz8PFR_Sz8PFR1:Sz8PFR_Sz8PFR4)
scale_reli<-rbind(scale_reli,psych::alpha(Sz8_PFRMean)$total)

scale_reli<-cbind(Scale=c("UBaff_Mean","UBkog_Mean","UBkon_Mean","UB_Mean","EF_PEVMean","EF_PFRMean","Sz1_PEVMean","Sz1_PFRMean","Sz2_PEVMean","Sz2_PFRMean","Sz3_PEVMean","Sz3_PFRMean","Sz4_PEVMean","Sz4_PFRMean","Sz5_PEVMean","Sz5_PFRMean","Sz6_PEVMean","Sz6_PFRMean","Sz7_PEVMean","Sz7_PFRMean","Sz8_PEVMean","Sz8_PFRMean"),scale_reli)

scale_reli
##          Scale raw_alpha std.alpha   G6(smc) average_r        S/N         ase
##     UBaff_Mean 0.7405063 0.7463002 0.6711080 0.4950912  2.9416666 0.047385685
## 1   UBkog_Mean 0.4876243 0.4920832 0.4069853 0.2441091  0.9688266 0.098054723
## 2   UBkon_Mean 0.6849801 0.6858057 0.5932979 0.4211560  2.1827437 0.059903609
## 3      UB_Mean 0.8297030 0.8300242 0.8358992 0.3517340  4.8831908 0.027720322
## 4   EF_PEVMean 0.7483056 0.7657887 0.7773307 0.4497670  3.2696479 0.045030478
## 5   EF_PFRMean 0.8699542 0.8745620 0.8534184 0.6354379  6.9720679 0.023426177
## 6  Sz1_PEVMean 0.9091208 0.9111473 0.8955784 0.7193886 10.2545869 0.016642459
## 7  Sz1_PFRMean 0.9234355 0.9264903 0.9222333 0.7590891 12.6036483 0.014549013
## 8  Sz2_PEVMean 0.8966461 0.8998599 0.8839071 0.6919762  8.9860106 0.018962736
## 9  Sz2_PFRMean 0.9004305 0.9119979 0.9033202 0.7215137 10.3633652 0.018889503
## 10 Sz3_PEVMean 0.9163454 0.9163621 0.9099280 0.7325542 10.9563000 0.015324576
## 11 Sz3_PFRMean 0.9188248 0.9205471 0.9250637 0.7433605 11.5860679 0.015266376
## 12 Sz4_PEVMean 0.9266583 0.9259707 0.9232696 0.7576958 12.5081737 0.013252063
## 13 Sz4_PFRMean 0.8943005 0.8967299 0.8978592 0.6846257  8.6833424 0.019755189
## 14 Sz5_PEVMean 0.9112713 0.9119410 0.9087840 0.7213713 10.3560226 0.016099052
## 15 Sz5_PFRMean 0.8646672 0.8712090 0.8841077 0.6284089  6.7645199 0.026028759
## 16 Sz6_PEVMean 0.9244455 0.9250499 0.9224830 0.7552350 12.3422047 0.014042473
## 17 Sz6_PFRMean 0.8952959 0.9019323 0.8983536 0.6969017  9.1970377 0.020349819
## 18 Sz7_PEVMean 0.9582235 0.9584649 0.9583986 0.8522680 23.0760499 0.007772836
## 19 Sz7_PFRMean 0.9013558 0.9018831 0.9005003 0.6967841  9.1919224 0.018268407
## 20 Sz8_PEVMean 0.9423222 0.9434869 0.9355430 0.8067166 16.6950049 0.010454419
## 21 Sz8_PFRMean 0.8558373 0.8654570 0.8605967 0.6165852  6.4325655 0.027176596
##        mean        sd  median_r
##    4.116466 0.7868047 0.5192685
## 1  4.184739 0.6507303 0.2931987
## 2  3.771084 0.7305337 0.4244829
## 3  4.024096 0.6135203 0.3554926
## 4  5.894578 0.8447475 0.3799512
## 5  2.563253 1.0986712 0.6390993
## 6  5.156627 1.2516519 0.7017560
## 7  2.996988 1.2448026 0.7554914
## 8  5.132530 1.1623786 0.6672624
## 9  2.521084 1.0368256 0.7112624
## 10 4.228916 1.4213125 0.7255262
## 11 3.015060 1.2785456 0.7590525
## 12 3.972892 1.5191923 0.7748283
## 13 2.515060 1.0478996 0.6929356
## 14 3.439759 1.4337984 0.7169903
## 15 2.743976 1.1008422 0.6540761
## 16 3.484940 1.5047432 0.7535688
## 17 2.334337 1.0522023 0.7028599
## 18 2.195783 1.2210353 0.8540406
## 19 2.617470 1.2330172 0.6964924
## 20 2.376506 1.2465645 0.7987268
## 21 2.286145 1.0353011 0.6303157

Sample description

##sample description
n_incl<-nrow(filteredData)
descr_age<-describe(filteredData$Age)
descr_age
##    vars  n mean  sd median trimmed  mad min max range skew kurtosis   se
## X1    1 83   21 2.6     21   20.57 1.48  18  31    13 1.79     3.64 0.29
descr_gender <- filteredData %>% count(Gender)
descr_gender
## # A tibble: 3 × 2
##   Gender      n
##   <fct>   <int>
## 1 male        7
## 2 female     75
## 3 diverse     1
descr_fem<-(descr_gender[2,"n"]/n_incl)*100
descr_Prior_knowledge <- filteredData %>% count(Prior_knowledge)
descr_Prior_knowledge
## # A tibble: 2 × 2
##   Prior_knowledge             n
##   <fct>                   <int>
## 1 no prior knowledge         80
## 2 limited prior knowledge     3
descr_noVW <- (descr_Prior_knowledge[1,"n"]/n_incl)*100
descr_partVW <- (descr_Prior_knowledge[2,"n"]/n_incl)*100
descr_lotVW <- (descr_Prior_knowledge[3,"n"]/n_incl)*100

#variable description
descr_UB<-describe(filteredData$UB_Mean)
descr_UB
##    vars  n mean   sd median trimmed  mad  min max range  skew kurtosis   se
## X1    1 83 4.02 0.61   4.11    4.07 0.66 1.67   5  3.33 -0.87      1.4 0.07
descr_time <- describe(filteredData$time)
descr_time
##    vars  n  mean   sd median trimmed  mad  min  max range skew kurtosis   se
## X1    1 83 14.42 6.11  13.12   13.63 4.04 5.54 39.9 34.36 1.88     4.93 0.67
#confidence
descr_Con<-describe(filteredData$Confidence)
descr_Con
##    vars  n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 83  3.6 1.69      3    3.52 1.48   1   7     6 0.37    -0.82 0.19

Participants

After exclusion of non-viable answers, data of 83 participants (90.36 % female, M (age) = 21, SD (age) = 2.6) was analyzed. Overall, 96.39% of participants did not have prior knowledge of the construction industry, 3.61% had limited prior knowledge and NA% had extensive prior knowledge of topics related to the construction industry. The mean environmental consciousness was high, with M = 4.02 (SD = 0.61) out of five. For the second part of the study, participants indicated a mean confidence in their answers of M = 3.6 (SD = 1.69) out of 7. Participants spend an average of M = 14.42 minutes with the entire study (SD = 6.11 minutes).There was no monetary compensation, but psychology students had the option to gain course credit for their participation.

Descriptive statistics

#Interest in additional information
describe(filteredData$EFInfo_EFHer)
##    vars  n mean   sd median trimmed  mad min max range  skew kurtosis   se
## X1    1 83 4.07 1.88      4    4.09 2.97   1   7     6 -0.05    -1.18 0.21
describe(filteredData$EFInfo_EFRec)
##    vars  n mean   sd median trimmed mad min max range  skew kurtosis   se
## X1    1 83 6.13 1.11      7    6.33   0   3   7     4 -1.26     0.87 0.12
#Mean Perceived Environmental Value over all eight scenarios per item
filteredData$PEVMean1<-rowMeans(subset(filteredData,select=c("Sz1PEV_Sz1PEV1","Sz2PEV_Sz2PEV1","Sz3PEV_Sz3PEV1","Sz4PEV_Sz4PEV1","Sz5PEV_Sz5PEV1","Sz6PEV_Sz6PEV1","Sz7PEV_Sz7PEV1","Sz8PEV_Sz8PEV1")))
filteredData$PEVMean2<-rowMeans(subset(filteredData,select=c("Sz1PEV_Sz1PEV2","Sz2PEV_Sz2PEV2","Sz3PEV_Sz3PEV2","Sz4PEV_Sz4PEV2","Sz5PEV_Sz5PEV2","Sz6PEV_Sz6PEV2","Sz7PEV_Sz7PEV2","Sz8PEV_Sz8PEV2")))
filteredData$PEVMean3<-rowMeans(subset(filteredData,select=c("Sz1PEV_Sz1PEV3","Sz2PEV_Sz2PEV3","Sz3PEV_Sz3PEV3","Sz4PEV_Sz4PEV3","Sz5PEV_Sz5PEV3","Sz6PEV_Sz6PEV3","Sz7PEV_Sz7PEV3","Sz8PEV_Sz8PEV3")))
filteredData$PEVMean4<-rowMeans(subset(filteredData,select=c("Sz1PEV_Sz1PEV4","Sz2PEV_Sz2PEV4","Sz3PEV_Sz3PEV4","Sz4PEV_Sz4PEV4","Sz5PEV_Sz5PEV4","Sz6PEV_Sz6PEV4","Sz7PEV_Sz7PEV4","Sz8PEV_Sz8PEV4")))

#Mean Perceived Functional Risk over all eight scenarios per item
filteredData$PFRMean1<-rowMeans(subset(filteredData,select=c("Sz1PFR_Sz1PFR1","Sz2PFR_Sz2PFR1","Sz3PFR_Sz3PFR1","Sz4PFR_Sz4PFR1","Sz5PFR_Sz5PFR1","Sz6PFR_Sz6PFR1","Sz7PFR_Sz7PFR1","Sz8PFR_Sz8PFR1")))
filteredData$PFRMean2<-rowMeans(subset(filteredData,select=c("Sz1PFR_Sz1PFR2","Sz2PFR_Sz2PFR2","Sz3PFR_Sz3PFR2","Sz4PFR_Sz4PFR2","Sz5PFR_Sz5PFR2","Sz6PFR_Sz6PFR2","Sz7PFR_Sz7PFR2","Sz8PFR_Sz8PFR2")))
filteredData$PFRMean3<-rowMeans(subset(filteredData,select=c("Sz1PFR_Sz1PFR3","Sz2PFR_Sz2PFR3","Sz3PFR_Sz3PFR3","Sz4PFR_Sz4PFR3","Sz5PFR_Sz5PFR3","Sz6PFR_Sz6PFR3","Sz7PFR_Sz7PFR3","Sz8PFR_Sz8PFR3")))
filteredData$PFRMean4<-rowMeans(subset(filteredData,select=c("Sz1PFR_Sz1PFR4","Sz2PFR_Sz2PFR4","Sz3PFR_Sz3PFR4","Sz4PFR_Sz4PFR4","Sz5PFR_Sz5PFR4","Sz6PFR_Sz6PFR4","Sz7PFR_Sz7PFR4","Sz8PFR_Sz8PFR4")))

#Means over all eight scenarios over all items 
filteredData$PEVAllMean<-rowMeans(subset(filteredData,select=Sz1_PEVMean:Sz8_PEVMean))
filteredData$PFRAllMean<-rowMeans(subset(filteredData,select=Sz1_PFRMean:Sz8_PFRMean))
filteredData$WTPAll<-rowMeans(subset(filteredData,select=Sz1_WTP:Sz8_WTP))
filteredData$PrefAll<-rowMeans(subset(filteredData,select=Sz1_Pref:Sz8_Pref))

#give statistics
filteredData %>% select("PEVMean1":"PrefAll") %>% describe()
##            vars  n   mean     sd median trimmed    mad    min     max  range
## PEVMean1      1 83   3.80   0.83   3.75    3.82   0.74   1.75    5.62   3.88
## PEVMean2      2 83   3.75   0.75   3.75    3.74   0.74   1.88    5.62   3.75
## PEVMean3      3 83   3.65   0.89   3.75    3.71   0.74   1.00    5.38   4.38
## PEVMean4      4 83   3.79   0.82   3.88    3.79   0.74   1.75    6.00   4.25
## PFRMean1      5 83   2.58   0.92   2.50    2.56   1.11   1.00    4.75   3.75
## PFRMean2      6 83   2.49   0.90   2.38    2.46   0.93   1.00    4.38   3.38
## PFRMean3      7 83   2.56   0.85   2.50    2.55   0.93   1.00    4.25   3.25
## PFRMean4      8 83   2.88   1.04   2.75    2.81   1.11   1.00    7.00   6.00
## PEVAllMean    9 83   3.75   0.76   3.78    3.76   0.65   1.75    5.59   3.84
## PFRAllMean   10 83   2.63   0.81   2.50    2.62   0.83   1.06    4.22   3.16
## WTPAll       11 83 970.81 150.47 981.25  973.72 133.80 526.62 1345.75 819.12
## PrefAll      12 83   3.15   0.55   3.20    3.16   0.49   1.58    4.42   2.84
##             skew kurtosis    se
## PEVMean1   -0.23     0.17  0.09
## PEVMean2    0.06     0.13  0.08
## PEVMean3   -0.56     0.34  0.10
## PEVMean4    0.06     0.28  0.09
## PFRMean1    0.12    -0.92  0.10
## PFRMean2    0.28    -0.92  0.10
## PFRMean3    0.17    -0.78  0.09
## PFRMean4    0.95     1.76  0.11
## PEVAllMean -0.12     0.22  0.08
## PFRAllMean  0.18    -0.90  0.09
## WTPAll     -0.22     0.38 16.52
## PrefAll    -0.23    -0.03  0.06
#clean data frame
filteredData<-select(filteredData,-c("EFPEV_EFPEV1":"EFPFR_EFPFR4","Sz1PEV_Sz1PEV1":"Sz1PFR_Sz1PFR4","Sz2PEV_Sz2PEV1":"Sz2PFR_Sz2PFR4","Sz3PEV_Sz3PEV1":"Sz3PFR_Sz3PFR4","Sz4PEV_Sz4PEV1":"Sz4PFR_Sz4PFR4","Sz5PEV_Sz5PEV1":"Sz5PFR_Sz5PFR4","Sz6PEV_Sz6PEV1":"Sz6PFR_Sz6PFR4","Sz7PEV_Sz7PEV1":"Sz7PFR_Sz7PFR4","Sz8PEV_Sz8PEV1":"Sz8PFR_Sz8PFR4","Umweltbewusstsein_UBaff1":"Umweltbewusstsein_UBkon3","groupTime2675":"AbschlussTime","PEVMean1","PEVMean2","PEVMean3","PEVMean4","PFRMean1","PFRMean2","PFRMean3","PFRMean4"))

Perceptions of Stair Element without DPP

##interest in additional information
# create data frame in long format
filteredData_EFlong <- filteredData %>% pivot_longer(
  cols = EFInfo_EFHer:EFInfo_EFRec,
  names_to="EF_Material",
  names_pattern = "_EF(.*)",
  values_to="EF_Interest"
)

#create new factor for Material
filteredData_EFlong$EF_Material<-factor(filteredData_EFlong$EF_Material,levels=c("Her","Rec"))


#Visualize the interest in additional information depending of the material
boxplot(EF_Interest~EF_Material,filteredData_EFlong,
        xlab = "Material", ylab="Interest", names=c("NAC","RAC"))

#interest in additional info
descr_intNAC<-describe(filteredData$EFInfo_EFHer)
descr_intNAC
##    vars  n mean   sd median trimmed  mad min max range  skew kurtosis   se
## X1    1 83 4.07 1.88      4    4.09 2.97   1   7     6 -0.05    -1.18 0.21
descr_intRAC<-describe(filteredData$EFInfo_EFRec)
descr_intRAC
##    vars  n mean   sd median trimmed mad min max range  skew kurtosis   se
## X1    1 83 6.13 1.11      7    6.33   0   3   7     4 -1.26     0.87 0.12
#choice
descr_choice<-filteredData %>% count(EF_Choice)
descr_choice
## # A tibble: 2 × 2
##   EF_Choice     n
##       <dbl> <int>
## 1         1    15
## 2         2    68
num_NAC<-descr_choice[1,"n"]
num_RAC<-descr_choice[2,"n"]

#rating of RAC element
RAC_WTP<-describe(filteredData$EF_WTP)
RAC_WTP
##    vars  n    mean     sd median trimmed    mad min  max range skew kurtosis
## X1    1 83 1119.04 258.53   1109 1123.04 163.09 554 2000  1446 0.13     0.61
##       se
## X1 28.38
RAC_PEV<-describe(filteredData$EF_PEVMean)
RAC_PEV
##    vars  n mean   sd median trimmed  mad  min max range  skew kurtosis   se
## X1    1 83 5.89 0.84      6    5.97 0.74 3.25   7  3.75 -0.75     0.29 0.09
RAC_PFR<-describe(filteredData$EF_PFRMean)
RAC_PFR
##    vars  n mean  sd median trimmed  mad min max range skew kurtosis   se
## X1    1 83 2.56 1.1    2.5    2.49 1.11   1 5.5   4.5  0.5    -0.29 0.12
#comparing willingness to pay with default value of 1000
t_EF_ZB<-t.test(filteredData$EF_WTP, mu = 1000)

#comparison between conventional and recycled concrete
t_interest<-t.test(filteredData$EFInfo_EFHer, filteredData$EFInfo_EFRec, paired=TRUE)
t_interest
## 
##  Paired t-test
## 
## data:  filteredData$EFInfo_EFHer and filteredData$EFInfo_EFRec
## t = -9.8344, df = 82, p-value = 1.587e-15
## alternative hypothesis: true mean difference is not equal to 0
## 95 percent confidence interval:
##  -2.476990 -1.643491
## sample estimates:
## mean difference 
##       -2.060241
prop_choice<-prop.test(c(num_NAC$n,num_RAC$n),c(n_incl,n_incl))
prop_choice
## 
##  2-sample test for equality of proportions with continuity correction
## 
## data:  c(num_NAC$n, num_RAC$n) out of c(n_incl, n_incl)
## X-squared = 65.157, df = 1, p-value = 6.918e-16
## alternative hypothesis: two.sided
## 95 percent confidence interval:
##  -0.7676725 -0.5094359
## sample estimates:
##    prop 1    prop 2 
## 0.1807229 0.8192771
library("pwr")
ES.h(p1=num_RAC$n/n_incl,p2=num_NAC$n/n_incl)
## [1] 1.385236

Rating of RAC element

For the rating of a RAC stairway element without additional information, participants were willing to pay a mean of M = 1119.04 € (SD = 258.53), which did significantly differ from the default value of 1000 € provided for NAC elements, t(82) = 4.19, p = 0. The mean perceived environmental value was rated high, with M = 5.89 out of seven, and the mean perceived functional risk was rated low, with M = 2.56 out of seven.

Interest in additional information

Generally, participants were interested in additional information, but more so for the recycled aggregate concrete (RAC; M = 6.13) compared to the natural aggregate concrete (NAC; M = 4.07), as shown by a significant t-test, t(82) = -9.83, p = 0. Additionally, more participants chose the stairway element made of RAC (81.93%) than the stairway element made of NAC (18.07%), X2(1) = 65.16, p = 0.

Interest in additional attributes

##analysis of attributes
attributeData<-filteredData %>% select(Att1_SQ001:Att5_SQ003) 
Att_Items<-colSums(attributeData, na.rm=TRUE)
attributeData<-rbind(attributeData,Att_Items)

names(Att_Items)[names(Att_Items)=="Att1_SQ001"] <- "Product identifier "
names(Att_Items)[names(Att_Items)=="Att1_SQ002"] <- "Product description"
names(Att_Items)[names(Att_Items)=="Att1_SQ003"] <- "Manufacturing description"
names(Att_Items)[names(Att_Items)=="Att1_SQ004"] <- "Supply chain traceability"

names(Att_Items)[names(Att_Items)=="Att2_SQ001"] <- "Concrete Composition  "
names(Att_Items)[names(Att_Items)=="Att2_SQ002"] <- "Type of concrete aggregates "
names(Att_Items)[names(Att_Items)=="Att2_SQ003"] <- "Reinforcement"
names(Att_Items)[names(Att_Items)=="Att2_SQ004"] <- "Hazardous materials "

names(Att_Items)[names(Att_Items)=="Att3_SQ001"] <- "Global Warming Potential "
names(Att_Items)[names(Att_Items)=="Att3_SQ002"] <- "Energy Consumption "
names(Att_Items)[names(Att_Items)=="Att3_SQ003"] <- "Resource depletion"
names(Att_Items)[names(Att_Items)=="Att3_SQ004"] <- "Air Pollution"
names(Att_Items)[names(Att_Items)=="Att3_SQ005"] <- "Land Use"
names(Att_Items)[names(Att_Items)=="Att3_SQ006"] <- "Eutrophication Potential "
names(Att_Items)[names(Att_Items)=="Att3_SQ007"] <- "Ozone Depletion Potential"
names(Att_Items)[names(Att_Items)=="Att3_SQ008"] <- "Acidification Potential"

names(Att_Items)[names(Att_Items)=="Att4_SQ001"] <- "Material properties  "
names(Att_Items)[names(Att_Items)=="Att4_SQ002"] <- "Structural Performance"
names(Att_Items)[names(Att_Items)=="Att4_SQ003"] <- "Fatigue Resistance"
names(Att_Items)[names(Att_Items)=="Att4_SQ004"] <- "Fire Resistance"
names(Att_Items)[names(Att_Items)=="Att4_SQ005"] <- "Durability Metrics "

names(Att_Items)[names(Att_Items)=="Att5_SQ001"] <- "Reuse Potential "
names(Att_Items)[names(Att_Items)=="Att5_SQ002"] <- "Disassembly instructions "
names(Att_Items)[names(Att_Items)=="Att5_SQ003"] <- "Waste management recommendations"

Att_Items<-Att_Items[order(Att_Items, decreasing=TRUE)]
Att_Items<-(Att_Items/n_incl)*100
Att_Items<-as.data.frame(Att_Items)

Att_sum<-(rowSums(attributeData[(n_incl+1),c("Att1_SQ001","Att1_SQ002","Att1_SQ003","Att1_SQ004") ],na.rm=TRUE))/4
Att_sum<-rbind(Att_sum,(rowSums(attributeData[(n_incl+1),c("Att2_SQ001","Att2_SQ002","Att2_SQ003","Att2_SQ004") ],na.rm=TRUE))/4)
Att_sum<-rbind(Att_sum,(rowSums(attributeData[(n_incl+1),c("Att3_SQ001","Att3_SQ002","Att3_SQ003","Att3_SQ004","Att3_SQ005","Att3_SQ006","Att3_SQ007","Att3_SQ008") ],na.rm=TRUE))/8)
Att_sum<-rbind(Att_sum,(rowSums(attributeData[(n_incl+1),c("Att4_SQ001","Att4_SQ002","Att4_SQ003","Att4_SQ004","Att4_SQ005") ],na.rm=TRUE))/5)
Att_sum<-rbind(Att_sum,(rowSums(attributeData[(n_incl+1),c("Att5_SQ001","Att5_SQ002","Att5_SQ003") ],na.rm=TRUE))/3)

Attribute<-data.frame(Attribute=c("Product Identification","Material Composition","Environmental Impact","Performance and Safety","Circularity and End-Of-Life"),chosen=Att_sum)

Table for attributes

knitr::kable(Att_Items,caption="Attribute")
Attribute
Att_Items
Hazardous materials 97.59036
Structural Performance 95.18072
Manufacturing description 92.77108
Material properties 91.56627
Product description 90.36145
Durability Metrics 87.95181
Concrete Composition 86.74699
Energy Consumption 86.74699
Resource depletion 86.74699
Supply chain traceability 77.10843
Global Warming Potential 74.69880
Fatigue Resistance 74.69880
Reuse Potential 73.49398
Fire Resistance 72.28916
Air Pollution 69.87952
Disassembly instructions 68.67470
Reinforcement 60.24096
Waste management recommendations 59.03614
Land Use 31.32530
Type of concrete aggregates 27.71084
Acidification Potential 27.71084
Product identifier 25.30120
Ozone Depletion Potential 21.68675
Eutrophication Potential 16.86747
knitr::kable(Attribute,caption="Attribute-categories")
Attribute-categories
Attribute chosen
Att_sum Product Identification 59.25000
X Material Composition 56.50000
X.1 Environmental Impact 43.12500
X.2 Performance and Safety 70.00000
X.3 Circularity and End-Of-Life 55.66667

Preparation of data for ANOVAs

###vignettes
##rename for pivoting
#Sz1: RAC_lowENV_lowSTR
#Sz2: RAC_lowENV_highSTR
#Sz3: RAC_highENV_lowSTR
#Sz4: RAC_highENV_highSTR
#Sz5: NAC_lowENV_lowSTR
#Sz6: NAC_lowENV_highSTR
#Sz7: NAC_highENV_lowSTR
#Sz8: NAC_highENV_highSTR
colnames(filteredData)<- gsub("Sz1", "RAC_lowENV_lowSTR", colnames(filteredData))
colnames(filteredData)<- gsub("Sz2", "RAC_lowENV_highSTR", colnames(filteredData))
colnames(filteredData)<- gsub("Sz3", "RAC_highENV_lowSTR", colnames(filteredData))
colnames(filteredData)<- gsub("Sz4", "RAC_highENV_highSTR", colnames(filteredData))
colnames(filteredData)<- gsub("Sz5", "NAC_lowENV_lowSTR", colnames(filteredData))
colnames(filteredData)<- gsub("Sz6", "NAC_lowENV_highSTR", colnames(filteredData))
colnames(filteredData)<- gsub("Sz7", "NAC_highENV_lowSTR", colnames(filteredData))
colnames(filteredData)<- gsub("Sz8", "NAC_highENV_highSTR", colnames(filteredData))


##data processing into long format for ANOVAs
filteredData_long <- filteredData %>% pivot_longer(
  cols = RAC_lowENV_lowSTR_PEVMean:NAC_highENV_highSTR_Pref,
  names_to=c("Material","EnvironmentalImpact","StructuralPerformance", ".value"),
  names_pattern = "(.*)_(.*)_(.*)_(.*)"
)

#recode factors into factors
filteredData_long$Material<-factor(filteredData_long$Material,levels=c("RAC","NAC"))
filteredData_long$EnvironmentalImpact<-factor(filteredData_long$EnvironmentalImpact,levels=c("lowENV","highENV"))
filteredData_long$StructuralPerformance<-factor(filteredData_long$StructuralPerformance,levels=c("lowSTR","highSTR"))

Visualize dependent variables

filteredData_RAC_long<-filteredData_long%>%filter(Material=="RAC")
filteredData_NAC_long<-filteredData_long%>%filter(Material=="NAC")

### environmental value
bplot_PEV<-ggplot(filteredData_long, aes(Material, PEVMean, fill = EnvironmentalImpact)) + geom_boxplot() + labs(x = "Material", y = "Perceived Environmental Value") + scale_x_discrete(labels=c("RAC","NAC")) + scale_fill_hue(labels=c("lowENV","highENV"))
bplot_PEV

bplot_RAC_PEV<-ggplot(filteredData_RAC_long, aes(EnvironmentalImpact, PEVMean, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "Environmental Impact", y = "Perceived Environmental Value")+ ggtitle ("Environmental value RAC") + scale_x_discrete(labels=c("low Impact","high Impact")) + scale_fill_hue(labels=c("low Structural Performance","high Structural Performance"))

bplot_NAC_PEV<-ggplot(filteredData_NAC_long, aes(EnvironmentalImpact, PEVMean, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "EnvImpact", y = "Perceived Environmental Value")+ ggtitle ("Environmental value NAC") + scale_x_discrete(labels=c("low Impact","high Impact")) + scale_fill_hue(labels=c("low structural performance","high structural performance"))


### risk perception
bplot_PFR<-ggplot(filteredData_long, aes(Material, PFRMean, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "Material", y = "Perceived Risk") + scale_x_discrete(labels=c("RAC","NAC")) + scale_fill_hue(labels=c("low STR","high STR"))
bplot_PFR

bplot_RAC_PFR<-ggplot(filteredData_RAC_long, aes(EnvironmentalImpact, PFRMean, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "Environmental Impact", y = "Perceived Rsik") + ggtitle ("Functional risk RAC") + scale_x_discrete(labels=c("low Impact","high Impact")) + scale_fill_hue(labels=c("low structural performance","high structural performance"))

bplot_NAC_PFR<-ggplot(filteredData_NAC_long, aes(EnvironmentalImpact, PFRMean, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "Environmental Impact", y = "Perceived Rsik") + ggtitle ("Functional risk NAC") + scale_x_discrete(labels=c("low Impact","high Impact")) + scale_fill_hue(labels=c("low structural performance","high structural performance"))

grid.arrange(bplot_RAC_PEV,bplot_NAC_PEV,bplot_RAC_PFR,bplot_NAC_PFR,ncol=2, nrow=2)

####willingness to pay

bplot_RAC_WTP<-ggplot(filteredData_RAC_long, aes(EnvironmentalImpact, WTP, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "Environmental Impact", y = "Willigness to pay") + ggtitle ("WTP RAC") + scale_x_discrete(labels=c("low Impact","high Impact")) + scale_fill_manual(values=c("lowSTR"= "#66B3E8","highSTR" = "#005EB8"),labels=c("low structural performance","high structural performance")) 

bplot_NAC_WTP<-ggplot(filteredData_NAC_long, aes(EnvironmentalImpact, WTP, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "EnvImpact", y = "Willigness to pay") + ggtitle ("WTP NAC") + scale_x_discrete(labels=c("low Env Impact","high Env Impact")) + scale_fill_manual(values=c("lowSTR"= "#66B3E8","highSTR" = "#005EB8"),labels=c("low structural performance","high structural performance")) 

### preference
bplot_RAC_Pref<-ggplot(filteredData_RAC_long, aes(EnvironmentalImpact, Pref, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "Environmental Impact", y = "Preference") + ggtitle ("Preference RAC") + scale_x_discrete(labels=c("low Impact","high Impact")) + scale_fill_manual(values=c("lowSTR"= "#66B3E8","highSTR" = "#005EB8"),labels=c("low structural performance","high structural performance")) 

bplot_NAC_Pref<-ggplot(filteredData_NAC_long, aes(EnvironmentalImpact, Pref, fill = StructuralPerformance)) + geom_boxplot() + labs(x = "EnvImpact", y = "Preference") + ggtitle ("Preference NAC") + scale_x_discrete(labels=c("low Env Impact","high Env Impact")) + scale_fill_manual(values=c("lowSTR"= "#66B3E8","highSTR" = "#005EB8"),labels=c("low structural performance","high structural performance")) 

grid.arrange(bplot_RAC_WTP,bplot_NAC_WTP,bplot_RAC_Pref,bplot_NAC_Pref,ncol=2, nrow=2)

filteredData %>% select(RAC_lowENV_lowSTR_PEVMean,RAC_lowENV_highSTR_PEVMean, RAC_highENV_lowSTR_PEVMean,RAC_highENV_highSTR_PEVMean,NAC_lowENV_lowSTR_PEVMean,NAC_lowENV_highSTR_PEVMean,NAC_highENV_lowSTR_PEVMean,NAC_highENV_highSTR_PEVMean) %>% describe()
##                             vars  n mean   sd median trimmed  mad  min  max
## RAC_lowENV_lowSTR_PEVMean      1 83 5.16 1.25   5.25    5.26 1.11 1.25 7.00
## RAC_lowENV_highSTR_PEVMean     2 83 5.13 1.16   5.25    5.18 1.11 2.50 7.00
## RAC_highENV_lowSTR_PEVMean     3 83 4.23 1.42   4.25    4.26 1.48 1.00 7.00
## RAC_highENV_highSTR_PEVMean    4 83 3.97 1.52   4.50    4.03 1.48 1.00 7.00
## NAC_lowENV_lowSTR_PEVMean      5 83 3.44 1.43   3.25    3.41 1.85 1.00 7.00
## NAC_lowENV_highSTR_PEVMean     6 83 3.48 1.50   3.50    3.45 1.85 1.00 7.00
## NAC_highENV_lowSTR_PEVMean     7 83 2.20 1.22   2.00    2.03 1.48 1.00 5.25
## NAC_highENV_highSTR_PEVMean    8 83 2.38 1.25   2.00    2.23 1.11 1.00 6.00
##                             range  skew kurtosis   se
## RAC_lowENV_lowSTR_PEVMean    5.75 -0.83     0.58 0.14
## RAC_lowENV_highSTR_PEVMean   4.50 -0.35    -0.33 0.13
## RAC_highENV_lowSTR_PEVMean   6.00 -0.14    -0.73 0.16
## RAC_highENV_highSTR_PEVMean  6.00 -0.35    -0.85 0.17
## NAC_lowENV_lowSTR_PEVMean    6.00  0.20    -0.63 0.16
## NAC_lowENV_highSTR_PEVMean   6.00  0.16    -0.80 0.17
## NAC_highENV_lowSTR_PEVMean   4.25  0.99    -0.10 0.13
## NAC_highENV_highSTR_PEVMean  5.00  0.86    -0.12 0.14
values_PEV<-mean(filteredData$RAC_lowENV_lowSTR_PEVMean)
values_PEV<-rbind(values_PEV,mean(filteredData$RAC_lowENV_highSTR_PEVMean))
values_PEV<-rbind(values_PEV,mean(filteredData$RAC_highENV_lowSTR_PEVMean))
values_PEV<-rbind(values_PEV,mean(filteredData$RAC_highENV_highSTR_PEVMean))
values_PEV<-rbind(values_PEV,mean(filteredData$NAC_lowENV_lowSTR_PEVMean))
values_PEV<-rbind(values_PEV,mean(filteredData$NAC_lowENV_highSTR_PEVMean))
values_PEV<-rbind(values_PEV,mean(filteredData$NAC_highENV_lowSTR_PEVMean))
values_PEV<-rbind(values_PEV,mean(filteredData$NAC_highENV_highSTR_PEVMean))

barplot_envir<-data.frame(
  kategorien = c("RAC_lowEnv_lowSTR","RAC_lowEnv_highSTR","RAC_highEnv_lowSTR","RAC_highEnv_highSTR","NAC_lowEnv_lowSTR","NAC_lowEnv_highSTR","NAC_highEnv_lowSTR","NAC_highEnv_highSTR"),
  Perceived_Environmental_Value = values_PEV
)

ggplot(barplot_envir, aes(x = kategorien, y = Perceived_Environmental_Value)) +
  geom_bar(stat = "identity", fill = "#66A3E8")+
  labs(title = "Perceived Environmental Value", x = "Scenarios", y = "Perceived Environmental Value")+ coord_flip()+theme_minimal()

filteredData %>% select(RAC_lowENV_lowSTR_PFRMean,RAC_lowENV_highSTR_PFRMean, RAC_highENV_lowSTR_PFRMean,RAC_highENV_highSTR_PFRMean,NAC_lowENV_lowSTR_PFRMean,NAC_lowENV_highSTR_PFRMean,NAC_highENV_lowSTR_PFRMean,NAC_highENV_highSTR_PFRMean) %>% describe()
##                             vars  n mean   sd median trimmed  mad min max range
## RAC_lowENV_lowSTR_PFRMean      1 83 3.00 1.24   3.00    2.93 1.48   1 6.0   5.0
## RAC_lowENV_highSTR_PFRMean     2 83 2.52 1.04   2.25    2.47 1.11   1 5.0   4.0
## RAC_highENV_lowSTR_PFRMean     3 83 3.02 1.28   3.00    2.96 1.48   1 6.5   5.5
## RAC_highENV_highSTR_PFRMean    4 83 2.52 1.05   2.25    2.45 1.11   1 5.5   4.5
## NAC_lowENV_lowSTR_PFRMean      5 83 2.74 1.10   2.75    2.71 1.11   1 5.5   4.5
## NAC_lowENV_highSTR_PFRMean     6 83 2.33 1.05   2.00    2.26 1.11   1 6.0   5.0
## NAC_highENV_lowSTR_PFRMean     7 83 2.62 1.23   2.25    2.52 1.11   1 6.0   5.0
## NAC_highENV_highSTR_PFRMean    8 83 2.29 1.04   2.00    2.22 1.11   1 4.5   3.5
##                             skew kurtosis   se
## RAC_lowENV_lowSTR_PFRMean   0.51    -0.46 0.14
## RAC_lowENV_highSTR_PFRMean  0.55    -0.61 0.11
## RAC_highENV_lowSTR_PFRMean  0.43    -0.35 0.14
## RAC_highENV_highSTR_PFRMean 0.61    -0.11 0.12
## NAC_lowENV_lowSTR_PFRMean   0.31    -0.57 0.12
## NAC_lowENV_highSTR_PFRMean  0.70     0.30 0.12
## NAC_highENV_lowSTR_PFRMean  0.71    -0.11 0.14
## NAC_highENV_highSTR_PFRMean 0.48    -0.89 0.11
### risk perception
values_PFR<-mean(filteredData$RAC_lowENV_lowSTR_PFRMean)
values_PFR<-rbind(values_PFR,mean(filteredData$RAC_lowENV_highSTR_PFRMean))
values_PFR<-rbind(values_PFR,mean(filteredData$RAC_highENV_lowSTR_PFRMean))
values_PFR<-rbind(values_PFR,mean(filteredData$RAC_highENV_highSTR_PFRMean))
values_PFR<-rbind(values_PFR,mean(filteredData$NAC_lowENV_lowSTR_PFRMean))
values_PFR<-rbind(values_PFR,mean(filteredData$NAC_lowENV_highSTR_PFRMean))
values_PFR<-rbind(values_PFR,mean(filteredData$NAC_highENV_lowSTR_PFRMean))
values_PFR<-rbind(values_PFR,mean(filteredData$NAC_highENV_highSTR_PFRMean))

barplot_risk<-data.frame(
  kategorien = c("RAC_lowEnv_lowSTR","RAC_lowEnv_highSTR","RAC_highEnv_lowSTR","RAC_highEnv_highSTR","NAC_lowEnv_lowSTR","NAC_lowEnv_highSTR","NAC_highEnv_lowSTR","NAC_highEnv_highSTR"),
  Perceived_Function_Risk = values_PFR
)

ggplot(barplot_risk, aes(x = reorder(kategorien, Perceived_Function_Risk), y = Perceived_Function_Risk, fill = kategorien)) +
  geom_bar(stat = "identity", fill = "#66B3E8")+
  labs(title = "Perceived Functional Risk", x = "Scenarios", y = "Perceived Functional Risk")+ coord_flip()+theme_minimal()

### willingness to pay
values_WTP<-mean(filteredData$RAC_lowENV_lowSTR_WTP)
values_WTP<-rbind(values_WTP,mean(filteredData$RAC_lowENV_highSTR_WTP))
values_WTP<-rbind(values_WTP,mean(filteredData$RAC_highENV_lowSTR_WTP))
values_WTP<-rbind(values_WTP,mean(filteredData$RAC_highENV_highSTR_WTP))
values_WTP<-rbind(values_WTP,mean(filteredData$NAC_lowENV_lowSTR_WTP))
values_WTP<-rbind(values_WTP,mean(filteredData$NAC_lowENV_highSTR_WTP))
values_WTP<-rbind(values_WTP,mean(filteredData$NAC_highENV_lowSTR_WTP))
values_WTP<-rbind(values_WTP,mean(filteredData$NAC_highENV_highSTR_WTP))

barplot_WIP<-data.frame(
  kategorien = c("RAC_lowEnv_lowSTR","RAC_lowEnv_highSTR","RAC_highEnv_lowSTR","RAC_highEnv_highSTR","NAC_lowEnv_lowSTR","NAC_lowEnv_highSTR","NAC_highEnv_lowSTR","NAC_highEnv_highSTR"),
  WIP = values_WTP
)

ggplot(barplot_WIP, aes(x = reorder(kategorien, WIP), y = WIP, fill = kategorien)) +
  geom_bar(stat = "identity", fill = "#66C3E8")+
  labs(title = "Willingness to pay", x = "Scenarios", y = "Willingness to pay")+ coord_flip()+theme_minimal()

### product preference
values_Pref<-mean(filteredData$RAC_lowENV_lowSTR_Pref)
values_Pref<-rbind(values_Pref,mean(filteredData$RAC_lowENV_highSTR_Pref))
values_Pref<-rbind(values_Pref,mean(filteredData$RAC_highENV_lowSTR_Pref))
values_Pref<-rbind(values_Pref,mean(filteredData$RAC_highENV_highSTR_Pref))
values_Pref<-rbind(values_Pref,mean(filteredData$NAC_lowENV_lowSTR_Pref))
values_Pref<-rbind(values_Pref,mean(filteredData$NAC_lowENV_highSTR_Pref))
values_Pref<-rbind(values_Pref,mean(filteredData$NAC_highENV_lowSTR_Pref))
values_Pref<-rbind(values_Pref,mean(filteredData$NAC_highENV_highSTR_Pref))

barplot_Pref<-data.frame(
  kategorien = c("RAC_lowEnv_lowSTR","RAC_lowEnv_highSTR","RAC_highEnv_lowSTR","RAC_highEnv_highSTR","NAC_lowEnv_lowSTR","NAC_lowEnv_highSTR","NAC_highEnv_lowSTR","NAC_highEnv_highSTR"),
  Product_Preference = values_Pref
)

ggplot(barplot_Pref, aes(x = reorder(kategorien, Product_Preference), y = Product_Preference)) +
  geom_bar(stat = "identity", fill = "#66D3E8")+
  labs(title = "Product Preference", x = "Scenarios", y = "Product Preference")+ coord_flip()+theme_minimal()

Perceptions of Stair Elements with DPP

Perceived Environmental Value

##anova 2x2x2 within
#Environmental Value
PEV_aov <- aov_ez(
  id="id",
  dv="PEVMean",
  data=filteredData_long,
  within=c("Material","EnvironmentalImpact","StructuralPerformance"),
  anova_table=list(es="pes")
)
PEV_aov
## Anova Table (Type 3 tests)
## 
## Response: PEVMean
##                                               Effect    df  MSE          F
## 1                                           Material 1, 82 4.66 109.01 ***
## 2                                EnvironmentalImpact 1, 82 1.71 119.94 ***
## 3                              StructuralPerformance 1, 82 0.57       0.05
## 4                       Material:EnvironmentalImpact 1, 82 1.05       0.69
## 5                     Material:StructuralPerformance 1, 82 0.72     3.68 +
## 6          EnvironmentalImpact:StructuralPerformance 1, 82 0.65       0.15
## 7 Material:EnvironmentalImpact:StructuralPerformance 1, 82 0.61       2.28
##     pes p.value
## 1  .571   <.001
## 2  .594   <.001
## 3 <.001    .817
## 4  .008    .408
## 5  .043    .059
## 6  .002    .701
## 7  .027    .135
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '+' 0.1 ' ' 1
PEV_aov_table<-PEV_aov[["anova_table"]]

#post-hoc tests

PEV_aov_ph1<-emmeans(PEV_aov,"Material")
pairs(PEV_aov_ph1,  adjust="tukey")
##  contrast  estimate    SE df t.ratio p.value
##  RAC - NAC     1.75 0.167 82  10.441  <.0001
## 
## Results are averaged over the levels of: StructuralPerformance, EnvironmentalImpact
PEV_aov_ph1<-as.data.frame(PEV_aov_ph1)
PEV_aov_ph2<-emmeans(PEV_aov,"EnvironmentalImpact")
pairs(PEV_aov_ph2, adjust="tukey")
##  contrast         estimate    SE df t.ratio p.value
##  lowENV - highENV     1.11 0.101 82  10.951  <.0001
## 
## Results are averaged over the levels of: StructuralPerformance, Material
PEV_aov_ph2<-as.data.frame(PEV_aov_ph2)
PEV_aov_ph3<-emmeans(PEV_aov,"StructuralPerformance")
pairs(PEV_aov_ph3, adjust="tukey")
##  contrast         estimate     SE df t.ratio p.value
##  lowSTR - highSTR   0.0136 0.0585 82   0.232  0.8174
## 
## Results are averaged over the levels of: EnvironmentalImpact, Material
PEV_aov_ph3<-as.data.frame(PEV_aov_ph3)

emmeans(PEV_aov,"EnvironmentalImpact", by = "Material")
## Material = RAC:
##  EnvironmentalImpact emmean    SE df lower.CL upper.CL
##  lowENV                5.14 0.120 82     4.91     5.38
##  highENV               4.10 0.147 82     3.81     4.39
## 
## Material = NAC:
##  EnvironmentalImpact emmean    SE df lower.CL upper.CL
##  lowENV                3.46 0.146 82     3.17     3.75
##  highENV               2.29 0.124 82     2.04     2.53
## 
## Results are averaged over the levels of: StructuralPerformance 
## Confidence level used: 0.95
PEV_aov_ph4<-emmeans(PEV_aov,"EnvironmentalImpact", by = "Material")
pairs(PEV_aov_ph4,adjust = "tukey")
## Material = RAC:
##  contrast         estimate    SE df t.ratio p.value
##  lowENV - highENV     1.04 0.113 82   9.215  <.0001
## 
## Material = NAC:
##  contrast         estimate    SE df t.ratio p.value
##  lowENV - highENV     1.18 0.143 82   8.231  <.0001
## 
## Results are averaged over the levels of: StructuralPerformance
emmeans(PEV_aov,"Material", by = "EnvironmentalImpact")
## EnvironmentalImpact = lowENV:
##  Material emmean    SE df lower.CL upper.CL
##  RAC        5.14 0.120 82     4.91     5.38
##  NAC        3.46 0.146 82     3.17     3.75
## 
## EnvironmentalImpact = highENV:
##  Material emmean    SE df lower.CL upper.CL
##  RAC        4.10 0.147 82     3.81     4.39
##  NAC        2.29 0.124 82     2.04     2.53
## 
## Results are averaged over the levels of: StructuralPerformance 
## Confidence level used: 0.95
PEV_aov_ph5<-emmeans(PEV_aov,"Material", by = "EnvironmentalImpact")
pairs(PEV_aov_ph5,adjust = "tukey")
## EnvironmentalImpact = lowENV:
##  contrast  estimate    SE df t.ratio p.value
##  RAC - NAC     1.68 0.188 82   8.955  <.0001
## 
## EnvironmentalImpact = highENV:
##  contrast  estimate    SE df t.ratio p.value
##  RAC - NAC     1.81 0.183 82   9.915  <.0001
## 
## Results are averaged over the levels of: StructuralPerformance

Result for Perceived Environmental Value

To compare the perception of the stairways element, a 2 (material: RAC vs. NAC) x 2 (environmental impact: low vs high) x 2 (structural performance: high vs. low) repeated measures ANOVA was calculated for four different dependent variables. For perceived environmental value, the analysis yielded a significant main effect of material, F(1, 82) = 109.01, p = 0, \(\eta_{p}^{2}\) = 0.570696. Tukey post-hoc tests revealed higher perceived environmental value for stairways made of RAC (M = 4.62) compared to stairways made of NAC (M = 2.87). The main effect of environmental impact was also significant, F(1, 82) = 119.94, p = 0, \(\eta_{p}^{2}\) = 0.5939288, with Tukey post-hoc tests revealing higher perceived environmental value for stairways with a low environmental impact (M = 4.3) compared to stairways made of RAC (M = 3.19). The main effect of structural performance as well as all interactions were non-significant (all p > .05).

Perceived Functional Risk

#functional risk
PFR_aov <- aov_ez(
  id="id",
  dv="PFRMean",
  data=filteredData_long,
  within=c("Material","EnvironmentalImpact","StructuralPerformance"),
  anova_table=list(es="pes")
)
summary(PFR_aov)
## 
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
## 
##                                                    Sum Sq num Df Error SS
## (Intercept)                                        4588.5      1   426.88
## Material                                             11.8      1    91.53
## EnvironmentalImpact                                   0.3      1    46.30
## StructuralPerformance                                30.6      1   107.03
## Material:EnvironmentalImpact                          0.4      1    42.22
## Material:StructuralPerformance                        0.6      1    46.97
## EnvironmentalImpact:StructuralPerformance             0.0      1    42.08
## Material:EnvironmentalImpact:StructuralPerformance    0.1      1    39.00
##                                                    den Df  F value    Pr(>F)
## (Intercept)                                            82 881.4109 < 2.2e-16
## Material                                               82  10.5671  0.001671
## EnvironmentalImpact                                    82   0.4861  0.487658
## StructuralPerformance                                  82  23.4304 6.005e-06
## Material:EnvironmentalImpact                           82   0.7028  0.404283
## Material:StructuralPerformance                         82   0.9997  0.320332
## EnvironmentalImpact:StructuralPerformance              82   0.0594  0.808008
## Material:EnvironmentalImpact:StructuralPerformance     82   0.2288  0.633705
##                                                       
## (Intercept)                                        ***
## Material                                           ** 
## EnvironmentalImpact                                   
## StructuralPerformance                              ***
## Material:EnvironmentalImpact                          
## Material:StructuralPerformance                        
## EnvironmentalImpact:StructuralPerformance             
## Material:EnvironmentalImpact:StructuralPerformance    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
PFR_aov_table<-PFR_aov[["anova_table"]]

#post hoc tests

PFR_aov_ph1<-emmeans(PFR_aov,specs="Material")
contrast(PFR_aov_ph1, "pairwise", adjust="tukey")
##  contrast  estimate    SE df t.ratio p.value
##  RAC - NAC    0.267 0.082 82   3.251  0.0017
## 
## Results are averaged over the levels of: StructuralPerformance, EnvironmentalImpact
pairs(PFR_aov_ph1,  adjust="tukey")
##  contrast  estimate    SE df t.ratio p.value
##  RAC - NAC    0.267 0.082 82   3.251  0.0017
## 
## Results are averaged over the levels of: StructuralPerformance, EnvironmentalImpact
PFR_aov_ph1<-as.data.frame(PFR_aov_ph1)
PFR_aov_ph2<-emmeans(PFR_aov,"StructuralPerformance")
pairs(PFR_aov_ph2, adjust="tukey")
##  contrast         estimate     SE df t.ratio p.value
##  lowSTR - highSTR    0.429 0.0887 82   4.840  <.0001
## 
## Results are averaged over the levels of: EnvironmentalImpact, Material
PFR_aov_ph2<-as.data.frame(PFR_aov_ph2)
PFR_aov_ph3<-emmeans(PFR_aov,"EnvironmentalImpact")
pairs(PFR_aov_ph3, adjust="tukey")
##  contrast         estimate     SE df t.ratio p.value
##  lowENV - highENV   0.0407 0.0583 82   0.697  0.4877
## 
## Results are averaged over the levels of: StructuralPerformance, Material
PFR_aov_ph3<-as.data.frame(PFR_aov_ph3)

##Means
emmeans(PFR_aov,"StructuralPerformance", by = "Material")
## Material = RAC:
##  StructuralPerformance emmean     SE df lower.CL upper.CL
##  lowSTR                  3.01 0.1310 82     2.75     3.27
##  highSTR                 2.52 0.0978 82     2.32     2.71
## 
## Material = NAC:
##  StructuralPerformance emmean     SE df lower.CL upper.CL
##  lowSTR                  2.68 0.1120 82     2.46     2.90
##  highSTR                 2.31 0.1010 82     2.11     2.51
## 
## Results are averaged over the levels of: EnvironmentalImpact 
## Confidence level used: 0.95
PEV_aov_ph4<-emmeans(PFR_aov,"StructuralPerformance", by = "Material")
pairs(PEV_aov_ph4,adjust = "tukey")
## Material = RAC:
##  contrast         estimate    SE df t.ratio p.value
##  lowSTR - highSTR    0.488 0.112 82   4.356  <.0001
## 
## Material = NAC:
##  contrast         estimate    SE df t.ratio p.value
##  lowSTR - highSTR    0.370 0.100 82   3.690  0.0004
## 
## Results are averaged over the levels of: EnvironmentalImpact
emmeans(PFR_aov,"Material", by = "StructuralPerformance")
## StructuralPerformance = lowSTR:
##  Material emmean     SE df lower.CL upper.CL
##  RAC        3.01 0.1310 82     2.75     3.27
##  NAC        2.68 0.1120 82     2.46     2.90
## 
## StructuralPerformance = highSTR:
##  Material emmean     SE df lower.CL upper.CL
##  RAC        2.52 0.0978 82     2.32     2.71
##  NAC        2.31 0.1010 82     2.11     2.51
## 
## Results are averaged over the levels of: EnvironmentalImpact 
## Confidence level used: 0.95
PEV_aov_ph5<-emmeans(PFR_aov,"Material", by = "StructuralPerformance")
pairs(PEV_aov_ph5,adjust = "tukey")
## StructuralPerformance = lowSTR:
##  contrast  estimate    SE df t.ratio p.value
##  RAC - NAC    0.325 0.109 82   2.983  0.0038
## 
## StructuralPerformance = highSTR:
##  contrast  estimate    SE df t.ratio p.value
##  RAC - NAC    0.208 0.092 82   2.260  0.0265
## 
## Results are averaged over the levels of: EnvironmentalImpact

Result for Perceived Functional Risk

For perceived functional risk, the analysis yielded a significant main effect of material, F(1, 82) = 10.57, p = 0.002. Tukey post-hoc tests revealed higher perceived functional risk for stairways made of RAC (M = 2.76) compared to stairways made of NAC (M = 2.5). The main effect of structural performance was also significant, F(1, 82) = 23.43, p = 0, with Tukey post-hoc tests revealing higher perceived functional risk for stairways with a low structural performance (M = 2.84) compared to stairways made of RAC (M = 2.41). The main effect of environmental impact as well as all interactions were non-significant (all p > .05).

Willingness to pay

#WTP
WTP_aov <- aov_ez(
  id="id",
  dv="WTP",
  data=filteredData_long,
  within=c("Material","EnvironmentalImpact","StructuralPerformance"),
  anova_table=list(es="pes")
)
WTP_aov
## Anova Table (Type 3 tests)
## 
## Response: WTP
##                                               Effect    df      MSE         F
## 1                                           Material 1, 82 73255.91 15.16 ***
## 2                                EnvironmentalImpact 1, 82 33181.10 30.95 ***
## 3                              StructuralPerformance 1, 82 15458.43 15.86 ***
## 4                       Material:EnvironmentalImpact 1, 82 12025.30      1.46
## 5                     Material:StructuralPerformance 1, 82 10391.05      0.47
## 6          EnvironmentalImpact:StructuralPerformance 1, 82 13912.80      2.59
## 7 Material:EnvironmentalImpact:StructuralPerformance 1, 82 15602.24      2.02
##    pes p.value
## 1 .156   <.001
## 2 .274   <.001
## 3 .162   <.001
## 4 .017    .231
## 5 .006    .496
## 6 .031    .111
## 7 .024    .159
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '+' 0.1 ' ' 1
WTP_aov_table<-WTP_aov[["anova_table"]]

#post hoc tests
WTP_aov_ph1<-emmeans(WTP_aov,"Material")
pairs(WTP_aov_ph1,  adjust="tukey")
##  contrast  estimate SE df t.ratio p.value
##  RAC - NAC     81.8 21 82   3.894  0.0002
## 
## Results are averaged over the levels of: StructuralPerformance, EnvironmentalImpact
WTP_aov_ph1<-as.data.frame(WTP_aov_ph1)
WTP_aov_ph2<-emmeans(WTP_aov,"EnvironmentalImpact")
pairs(WTP_aov_ph2, adjust="tukey")
##  contrast         estimate   SE df t.ratio p.value
##  lowENV - highENV     78.7 14.1 82   5.563  <.0001
## 
## Results are averaged over the levels of: StructuralPerformance, Material
WTP_aov_ph2<-as.data.frame(WTP_aov_ph2)
WTP_aov_ph3<-emmeans(WTP_aov,"StructuralPerformance")
pairs(WTP_aov_ph3, adjust="tukey")
##  contrast         estimate   SE df t.ratio p.value
##  lowSTR - highSTR    -38.4 9.65 82  -3.982  0.0001
## 
## Results are averaged over the levels of: EnvironmentalImpact, Material
WTP_aov_ph3<-as.data.frame(WTP_aov_ph3)

Result for willingness to pay

For willingness to pay, the analysis yielded a significant main effect of material, F(1, 82) = 15.16, p = 0. Tukey post-hoc tests revealed higher willingness to pay for stairways made of RAC (M = 1011.71) compared to stairways made of NAC (M = 929.91). The main effect of environmental impact was also significant, F(1, 82) = 30.95, p = 0, with Tukey post-hoc tests revealing higher willingness to pay for stairways with a low environmental impact (M = 1010.14) compared to stairways with a high environmental impact (M = 931.49). The main effect of structural performance was also significant, F(1, 82) = 15.86, p = 0, with Tukey post-hoc tests revealing higher willingness to pay for stairways with a high structural performance (M = 990.03) compared to stairways made of RAC (M = 951.6). All interactions were non-significant (all p > .05).

Product Preference

#Preference
Pref_aov <- aov_ez(
  id="id",
  dv="Pref",
  data=filteredData_long,
  within=c("Material","EnvironmentalImpact","StructuralPerformance"),
  anova_table=list(es="pes")
)
Pref_aov
## Anova Table (Type 3 tests)
## 
## Response: Pref
##                                               Effect    df  MSE         F  pes
## 1                                           Material 1, 82 3.91 32.37 *** .283
## 2                                EnvironmentalImpact 1, 82 2.28 57.14 *** .411
## 3                              StructuralPerformance 1, 82 1.53  10.63 ** .115
## 4                       Material:EnvironmentalImpact 1, 82 1.31      1.32 .016
## 5                     Material:StructuralPerformance 1, 82 0.87    2.78 + .033
## 6          EnvironmentalImpact:StructuralPerformance 1, 82 0.98      1.57 .019
## 7 Material:EnvironmentalImpact:StructuralPerformance 1, 82 0.91      1.69 .020
##   p.value
## 1   <.001
## 2   <.001
## 3    .002
## 4    .253
## 5    .099
## 6    .214
## 7    .198
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '+' 0.1 ' ' 1
Pref_aov_table<-Pref_aov[["anova_table"]]

#post hoc tests
Pref_aov_ph1<-emmeans(Pref_aov,"Material")
pairs(Pref_aov_ph1,  adjust="tukey")
##  contrast  estimate    SE df t.ratio p.value
##  RAC - NAC    0.873 0.154 82   5.690  <.0001
## 
## Results are averaged over the levels of: StructuralPerformance, EnvironmentalImpact
Pref_aov_ph1<-as.data.frame(Pref_aov_ph1)
Pref_aov_ph2<-emmeans(Pref_aov,"EnvironmentalImpact")
pairs(Pref_aov_ph2, adjust="tukey")
##  contrast         estimate    SE df t.ratio p.value
##  lowENV - highENV    0.886 0.117 82   7.559  <.0001
## 
## Results are averaged over the levels of: StructuralPerformance, Material
Pref_aov_ph2<-as.data.frame(Pref_aov_ph2)
Pref_aov_ph3<-emmeans(Pref_aov,"StructuralPerformance")
pairs(Pref_aov_ph3, adjust="tukey")
##  contrast         estimate     SE df t.ratio p.value
##  lowSTR - highSTR   -0.313 0.0961 82  -3.260  0.0016
## 
## Results are averaged over the levels of: EnvironmentalImpact, Material
Pref_aov_ph3<-as.data.frame(Pref_aov_ph3)

Result for Product Preference

For preference, the analysis yielded a significant main effect of material, F(1, 82) = 32.37, p = 0. Tukey post-hoc tests revealed higher preference for stairways made of RAC (M = 4.19) compared to stairways made of NAC (M = 3.32). The main effect of environmental impact was also significant, F(1, 82) = 57.14, p = 0, with Tukey post-hoc tests revealing higher preference for stairways with a low environmental impact (M = 4.2) compared to stairways with a high environmental impact (M = 3.31). The main effect of structural performance was also significant, F(1, 82) = 10.63, p = 0.002, with Tukey post-hoc tests revealing higher preference for stairways with a high structural performance (M = 3.91) compared to stairways made of RAC (M = 3.6). All interactions were non-significant (all p > .05).

Comparision of RAC Stair Elements with and without DPP

###comparison of RAC with vs without info
##comparison of EF with Sz1 (low ENV - low STR)
#rating of RAC element without info
RAC_PEV<-describe(filteredData$EF_PEVMean)
RAC_PEV
##    vars  n mean   sd median trimmed  mad  min max range  skew kurtosis   se
## X1    1 83 5.89 0.84      6    5.97 0.74 3.25   7  3.75 -0.75     0.29 0.09
RAC_PFR<-describe(filteredData$EF_PFRMean)
RAC_PFR
##    vars  n mean  sd median trimmed  mad min max range skew kurtosis   se
## X1    1 83 2.56 1.1    2.5    2.49 1.11   1 5.5   4.5  0.5    -0.29 0.12
RAC_WTP<-describe(filteredData$EF_WTP)
RAC_WTP
##    vars  n    mean     sd median trimmed    mad min  max range skew kurtosis
## X1    1 83 1119.04 258.53   1109 1123.04 163.09 554 2000  1446 0.13     0.61
##       se
## X1 28.38
#rating of RAC element with info
RAC_wInfo_PEV<-describe(filteredData$RAC_lowENV_lowSTR_PEVMean)
RAC_wInfo_PEV
##    vars  n mean   sd median trimmed  mad  min max range  skew kurtosis   se
## X1    1 83 5.16 1.25   5.25    5.26 1.11 1.25   7  5.75 -0.83     0.58 0.14
RAC_wInfo_PFR<-describe(filteredData$RAC_lowENV_lowSTR_PFRMean)
RAC_wInfo_PFR
##    vars  n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 83    3 1.24      3    2.93 1.48   1   6     5 0.51    -0.46 0.14
RAC_wInfo_WTP<-describe(filteredData$RAC_lowENV_lowSTR_WTP)
RAC_wInfo_WTP
##    vars  n    mean     sd median trimmed    mad min  max range  skew kurtosis
## X1    1 83 1024.46 213.76   1000 1024.88 151.23 379 1615  1236 -0.02     1.09
##       se
## X1 23.46
#t test for comparison

t_info_PEV<-t.test(filteredData$EF_PEVMean, filteredData$RAC_lowENV_lowSTR_PEVMean, paired=TRUE)
t_info_PEV
## 
##  Paired t-test
## 
## data:  filteredData$EF_PEVMean and filteredData$RAC_lowENV_lowSTR_PEVMean
## t = 5.0215, df = 82, p-value = 2.94e-06
## alternative hypothesis: true mean difference is not equal to 0
## 95 percent confidence interval:
##  0.4456044 1.0302992
## sample estimates:
## mean difference 
##       0.7379518
t_info_PFR<-t.test(filteredData$EF_PFRMean, filteredData$RAC_lowENV_lowSTR_PFRMean, paired=TRUE)
t_info_PFR
## 
##  Paired t-test
## 
## data:  filteredData$EF_PFRMean and filteredData$RAC_lowENV_lowSTR_PFRMean
## t = -3.0281, df = 82, p-value = 0.003289
## alternative hypothesis: true mean difference is not equal to 0
## 95 percent confidence interval:
##  -0.7186769 -0.1487930
## sample estimates:
## mean difference 
##      -0.4337349
t_info_WTP<-t.test(filteredData$EF_WTP, filteredData$RAC_lowENV_lowSTR_WTP, paired=TRUE)
t_info_WTP
## 
##  Paired t-test
## 
## data:  filteredData$EF_WTP and filteredData$RAC_lowENV_lowSTR_WTP
## t = 3.7148, df = 82, p-value = 0.00037
## alternative hypothesis: true mean difference is not equal to 0
## 95 percent confidence interval:
##   43.93057 145.22605
## sample estimates:
## mean difference 
##        94.57831
filteredData_ttest<-filteredData%>%select("id","EF_PEVMean","RAC_lowENV_lowSTR_PEVMean","EF_PFRMean","RAC_lowENV_lowSTR_PFRMean","EF_WTP","RAC_lowENV_lowSTR_WTP")

filteredData_ttest_long<-filteredData_ttest%>% pivot_longer(
  cols = EF_PEVMean:RAC_lowENV_lowSTR_WTP,
  names_to=c("DPP",".value"),
  names_pattern = "(EF|RAC_lowENV_lowSTR)_(.*)"
)

filteredData_ttest_long  %>% cohens_d(PEVMean ~ DPP, paired = TRUE)
## # A tibble: 1 × 7
##   .y.     group1 group2            effsize    n1    n2 magnitude
## * <chr>   <chr>  <chr>               <dbl> <int> <int> <ord>    
## 1 PEVMean EF     RAC_lowENV_lowSTR   0.551    83    83 moderate
filteredData_ttest_long  %>% cohens_d(PFRMean ~ DPP, paired = TRUE)
## # A tibble: 1 × 7
##   .y.     group1 group2            effsize    n1    n2 magnitude
## * <chr>   <chr>  <chr>               <dbl> <int> <int> <ord>    
## 1 PFRMean EF     RAC_lowENV_lowSTR  -0.332    83    83 small
filteredData_ttest_long  %>% cohens_d(WTP ~ DPP, paired = TRUE)
## # A tibble: 1 × 7
##   .y.   group1 group2            effsize    n1    n2 magnitude
## * <chr> <chr>  <chr>               <dbl> <int> <int> <ord>    
## 1 WTP   EF     RAC_lowENV_lowSTR   0.408    83    83 small

Results of Comparison of RAC Stair Element with and without DPP

Lastly, the RAC element without additional information, presented in the first part of the study, was compared to the RAC element with additional information as presented in the second part of the study. Perceived environmental value was significantly higher for the RAC element without additional information, M = 5.89 (SD = 0.84), compared to the RAC element presented with additional information M = 5.16 (SD = 1.25), t(82) = 5.02, p = 0.

Perceived functional risk was significantly lower for the RAC element without additional information, M = 2.56 (SD = 1.1), compared to the RAC element presented with additional information M = 3 (SD = 1.24), t(82) = -3.03, p = 0.003.

Willingness to pay was significantly higher for the RAC element without additional information, M = 1119.04 € (SD = 258.53), compared to the RAC element presented with additional information M = 1024.46 € (SD = 213.76), t(82) = 3.71, p = 0.