***BEGIN README*** ***This do-file requires "levels" by Nick Cox to be installed. --> ssc install levels ***END README*** clear set more off set matsize 800 set memory 500m cd "C:\Users\Elina\DATA" insheet using FULL1.csv drop if keep!=1 drop keep globsub profit totalprofit participate type dummyreport dummypartner rndnum1 rndnum2 n rank1 rank2 idother1 a b c timeweiterinfoontypeok timeweiterpodecisionok timeweitercitizendecisionok timeweiterqualitydecisionok timeweiterreportdecisionmidpok timeweiterreportdecisionlowpok timeweiterreportdecisionhighpok v38 pwof deducted poprofit service pwoc cprofit destring, replace ***generate unique session #, treatment id, group # in treatment, group # in session, unique group #, subject # in group, subject id in session gen session=. replace session=10 if treatment=="REP_P" replace session=20 if treatment=="REP_S" replace session=30 if treatment=="REC_P" replace session=40 if treatment=="REC_S" label var session "unique session number (chronological from low to high)" gen treat=. replace treat=10 if treatment=="REP_P" replace treat=20 if treatment=="REP_S" replace treat=30 if treatment=="REC_P" replace treat=40 if treatment=="REC_S" egen unsubnr=concat(session subject) label var unsubnr "unique subject number" destring, replace label var treat "treatment id (10=REP_P 20=REP_S 30=REC_P 40=REC_S)" rename group grpinses label var grpinses "group number in session" egen newgroup=concat(session grpinses) rename newgroup ungrpnr label var ungrpnr "unique group number" rename subject subid label var subid "subject id in session" gen subid2=subid replace subid2=1 if subid==3 | subid==5 | subid==7 | subid==9 | subid==11 | subid==13 | subid==15 | subid==17 | subid==19 | subid==21 | subid==23 replace subid2=2 if subid==4 | subid==6 | subid==8 | subid==10 | subid==12 | subid==14 | subid==16 | subid==18 | subid==20 | subid==22 | subid==24 rename subid2 subingrp label var subingrp "subject number in group" destring, replace gen grpintreat=grpinses label var grpintreat "group number in treatment" label var aprofit "profit per subject and round" label var paid "bribes paid per period" destring, replace ***preparing questionnaire data for analysis rename trust_1 trust1 rename trust_2 trust2 rename trust_3 trust3 replace trust1="1" if trust1=="Stimme voll zu" replace trust1="2" if trust1=="Stimme eher zu" replace trust1="3" if trust1=="Lehne eher ab" replace trust1="4" if trust1=="Lehne voll ab" replace trust2="1" if trust2=="Stimme voll zu" replace trust2="2" if trust2=="Stimme eher zu" replace trust2="3" if trust2=="Lehne eher ab" replace trust2="4" if trust2=="Lehne voll ab" replace trust3="1" if trust3=="Stimme voll zu" replace trust3="2" if trust3=="Stimme eher zu" replace trust3="3" if trust3=="Lehne eher ab" replace trust3="4" if trust3=="Lehne voll ab" label var trust1 "Im Allgemeinen kann man den Menschen vertrauen, 1 (agree) to 4 (disagree)" label var trust2 "Heutzutage kann man sich auf niemanden mehr verlassen, 1 (agree) to 4 (disagree)" label var trust3 "Mit Fremden ist es besser, vorsichtig zu sein, bevor man vertraut; 1 (agree) to 4 (disagree)" replace drive="1" if drive=="Ich würde ihm ins Gewissen reden und den Kontakt mit ihm abkühlen." replace drive="2" if drive=="Ich würde ihm ins Gewissen reden, das in Zukunft nicht mehr zu machen." replace drive="3" if drive=="Es wäre mir egal, ich würde nichts unternehmen." replace drive="4" if drive=="Ich würde ihm bloß raten, sich nicht erwischen zu lassen." replace drive="5" if drive=="Es würde mir imponieren, und das würde ich ihm auch zu erkennen geben." label var drive "friend drives drunk, 1 (disagreement) to 5 (admiration)" replace nofare="1" if nofare=="Ich würde ihm ins Gewissen reden und den Kontakt mit ihm abkühlen." replace nofare="2" if nofare=="Ich würde ihm ins Gewissen reden, das in Zukunft nicht mehr zu machen." replace nofare="3" if nofare=="Es wäre mir egal, ich würde nichts unternehmen." replace nofare="4" if nofare=="Ich würde ihm bloß raten, sich nicht erwischen zu lassen." replace nofare="5" if nofare=="Es würde mir imponieren, und das würde ich ihm auch zu erkennen geben." label var nofare "friend rides the train without a ticket, 1 (disagreement) to 5 (admiration)" replace schwarzarbeit="1" if schwarzarbeit=="Ich würde ihm ins Gewissen reden und den Kontakt mit ihm abkühlen." replace schwarzarbeit="2" if schwarzarbeit=="Ich würde ihm ins Gewissen reden, das in Zukunft nicht mehr zu machen." replace schwarzarbeit="3" if schwarzarbeit=="Es wäre mir egal, ich würde nichts unternehmen." replace schwarzarbeit="4" if schwarzarbeit=="Ich würde ihm bloß raten, sich nicht erwischen zu lassen." replace schwarzarbeit="5" if schwarzarbeit=="Es würde mir imponieren, und das würde ich ihm auch zu erkennen geben." label var schwarzarbeit "friend hires worker and pays no tax, 1 (disagreement) to 5 (admiration)" rename schwarzarbeit shadowecon replace ult_offer="10" if ult_offer=="Sie erhalten 10 EUR, der andere Teilnehmer 0 EUR." replace ult_offer="9" if ult_offer=="Sie erhalten 9 EUR, der andere Teilnehmer 1 EUR." replace ult_offer="8" if ult_offer=="Sie erhalten 8 EUR, der andere Teilnehmer 2 EUR." replace ult_offer="7" if ult_offer=="Sie erhalten 7 EUR, der andere Teilnehmer 3 EUR." replace ult_offer="6" if ult_offer=="Sie erhalten 6 EUR, der andere Teilnehmer 4 EUR." replace ult_offer="5" if ult_offer=="Sie erhalten 5 EUR, der andere Teilnehmer 5 EUR." replace ult_offer="4" if ult_offer=="Sie erhalten 4 EUR, der andere Teilnehmer 6 EUR." replace ult_offer="3" if ult_offer=="Sie erhalten 3 EUR, der andere Teilnehmer 7 EUR." replace ult_offer="2" if ult_offer=="Sie erhalten 2 EUR, der andere Teilnehmer 8 EUR." replace ult_offer="1" if ult_offer=="Sie erhalten 1 EUR, der andere Teilnehmer 9 EUR." replace ult_offer="0" if ult_offer=="Sie erhalten 0 EUR, der andere Teilnehmer 10 EUR." label var ult_offer "ultimatum game, subject is offering; 10 (stinginess) to 0 (generosity)" replace ult_min="10" if ult_min=="Sie erhalten 10 EUR, der andere Teilnehmer 0 EUR." replace ult_min="9" if ult_min=="Sie erhalten 9 EUR, der andere Teilnehmer 1 EUR." replace ult_min="8" if ult_min=="Sie erhalten 8 EUR, der andere Teilnehmer 2 EUR." replace ult_min="7" if ult_min=="Sie erhalten 7 EUR, der andere Teilnehmer 3 EUR." replace ult_min="6" if ult_min=="Sie erhalten 6 EUR, der andere Teilnehmer 4 EUR." replace ult_min="5" if ult_min=="Sie erhalten 5 EUR, der andere Teilnehmer 5 EUR." replace ult_min="4" if ult_min=="Sie erhalten 4 EUR, der andere Teilnehmer 6 EUR." replace ult_min="3" if ult_min=="Sie erhalten 3 EUR, der andere Teilnehmer 7 EUR." replace ult_min="2" if ult_min=="Sie erhalten 2 EUR, der andere Teilnehmer 8 EUR." replace ult_min="1" if ult_min=="Sie erhalten 1 EUR, der andere Teilnehmer 9 EUR." replace ult_min="0" if ult_min=="Sie erhalten 0 EUR, der andere Teilnehmer 10 EUR." label var ult_offer "ultimatum game, the minimum subject is willing to accept; 10 (revengeful) to 0 (non-revengeful)" replace dict_offer=0 if dict_offer==10 replace dict_offer=1 if dict_offer==9 replace dict_offer=2 if dict_offer==8 replace dict_offer=3 if dict_offer==7 replace dict_offer=4 if dict_offer==6 replace dict_offer=5 if dict_offer==5 replace dict_offer=6 if dict_offer==4 replace dict_offer=7 if dict_offer==3 replace dict_offer=8 if dict_offer==2 replace dict_offer=9 if dict_offer==1 replace dict_offer=10 if dict_offer==0 label var dict_offer "dictator game, 10 (stinginess) to 0 (generosity)" replace bf1="1" if bf1=="Trifft überhaupt nicht zu" replace bf1="2" if bf1=="Trifft eher nicht zu" replace bf1="3" if bf1=="Weder noch" replace bf1="4" if bf1=="Eher zutreffend" replace bf1="5" if bf1=="Trifft voll und ganz zu" label var bf1 "Ich bin zurückhaltend. 1 (disagree) to 5 (agree)" replace bf2="1" if bf2=="Trifft überhaupt nicht zu" replace bf2="2" if bf2=="Trifft eher nicht zu" replace bf2="3" if bf2=="Weder noch" replace bf2="4" if bf2=="Eher zutreffend" replace bf2="5" if bf2=="Trifft voll und ganz zu" label var bf2 "Ich schenke anderen leicht Vertrauen. 1 (disagree) to 5 (agree)" replace bf3="1" if bf3=="Trifft überhaupt nicht zu" replace bf3="2" if bf3=="Trifft eher nicht zu" replace bf3="3" if bf3=="Weder noch" replace bf3="4" if bf3=="Eher zutreffend" replace bf3="5" if bf3=="Trifft voll und ganz zu" label var bf3 "Ich bin bequem, neige zur Faulheit. 1 (disagree) to 5 (agree)" replace bf4="1" if bf4=="Trifft überhaupt nicht zu" replace bf4="2" if bf4=="Trifft eher nicht zu" replace bf4="3" if bf4=="Weder noch" replace bf4="4" if bf4=="Eher zutreffend" replace bf4="5" if bf4=="Trifft voll und ganz zu" label var bf4 "Bin entspannt, lasse mich nicht aus der Ruhe bringen. 1 (disagree) to 5 (agree)" replace bf5="1" if bf5=="Trifft überhaupt nicht zu" replace bf5="2" if bf5=="Trifft eher nicht zu" replace bf5="3" if bf5=="Weder noch" replace bf5="4" if bf5=="Eher zutreffend" replace bf5="5" if bf5=="Trifft voll und ganz zu" label var bf5 "Ich habe nur wenig künstlerisches Interesse. 1 (disagree) to 5 (agree)" replace bf6="1" if bf6=="Trifft überhaupt nicht zu" replace bf6="2" if bf6=="Trifft eher nicht zu" replace bf6="3" if bf6=="Weder noch" replace bf6="4" if bf6=="Eher zutreffend" replace bf6="5" if bf6=="Trifft voll und ganz zu" label var bf6 "Ich gehe aus mir heraus, bin gesellig. 1 (disagree) to 5 (agree)" replace bf7="1" if bf7=="Trifft überhaupt nicht zu" replace bf7="2" if bf7=="Trifft eher nicht zu" replace bf7="3" if bf7=="Weder noch" replace bf7="4" if bf7=="Eher zutreffend" replace bf7="5" if bf7=="Trifft voll und ganz zu" label var bf7 "Ich neige dazu, andere zu kritisieren. 1 (disagree) to 5 (agree)" replace bf8="1" if bf8=="Trifft überhaupt nicht zu" replace bf8="2" if bf8=="Trifft eher nicht zu" replace bf8="3" if bf8=="Weder noch" replace bf8="4" if bf8=="Eher zutreffend" replace bf8="5" if bf8=="Trifft voll und ganz zu" label var bf8 "Ich erledige Aufgaben gründlich. 1 (disagree) to 5 (agree)" replace bf9="1" if bf9=="Trifft überhaupt nicht zu" replace bf9="2" if bf9=="Trifft eher nicht zu" replace bf9="3" if bf9=="Weder noch" replace bf9="4" if bf9=="Eher zutreffend" replace bf9="5" if bf9=="Trifft voll und ganz zu" label var bf9 "Ich werde leicht nervös und unsicher. 1 (disagree) to 5 (agree)" replace bf10="1" if bf10=="Trifft überhaupt nicht zu" replace bf10="2" if bf10=="Trifft eher nicht zu" replace bf10="3" if bf10=="Weder noch" replace bf10="4" if bf10=="Eher zutreffend" replace bf10="5" if bf10=="Trifft voll und ganz zu" label var bf10 "Ich habe eine aktive Vorstellungskraft. 1 (disagree) to 5 (agree)" rename risk_1 risk label var risk "risk attitude, from 1 (averse) to 10 (loving)" replace sex="1" if sex=="männlich" replace sex="0" if sex=="weiblich" rename sex male label var male "subject is male (1 yes, 0 no)" label var sib "number of siblings of subject" label var age "age of subject" replace polint="1" if polint=="Sehr stark" replace polint="2" if polint=="Stark" replace polint="3" if polint=="Nicht so stark" replace polint="4" if polint=="Überhaupt nicht" label var polint "subject's interest in politics" replace party="1" if party=="SPD" replace party="2" if party=="CDU/CSU" replace party="3" if party=="FDP" replace party="4" if party=="Bündnis 90 / Die Grünen" replace party="5" if party=="Die Linke" replace party="6" if party=="Piratenpartei" replace party="7" if party=="DVU / Republikaner / NPD" replace party="8" if party=="Andere" replace party="9" if party=="Keiner" label var party "prefered political party of subject" replace strparty="1" if strparty=="Sehr stark" replace strparty="2" if strparty=="Ziemlich stark" replace strparty="3" if strparty=="Mäßig" replace strparty="4" if strparty=="Ziemlich schwach" replace strparty="5" if strparty=="Sehr schwach" label var strparty "subject's degree of support for particular political party" replace s1="1" if s1=="Große Sorgen" replace s1="2" if s1=="Einige Sorgen" replace s1="3" if s1=="Keine Sorgen" label var s1 "Um die allgemeine wirtschaftliche Entwicklung. 1 (highly concerned) to 3 (not concerned)" replace s2="1" if s2=="Große Sorgen" replace s2="2" if s2=="Einige Sorgen" replace s2="3" if s2=="Keine Sorgen" label var s2 "Um Ihre eigene wirtschaftliche Situation. 1 (highly concerned) to 3 (not concerned)" replace s3="1" if s3=="Große Sorgen" replace s3="2" if s3=="Einige Sorgen" replace s3="3" if s3=="Keine Sorgen" label var s3 "Um die Stabilität der Finanzmärkte. 1 (highly concerned) to 3 (not concerned)" replace s4="1" if s4=="Große Sorgen" replace s4="2" if s4=="Einige Sorgen" replace s4="3" if s4=="Keine Sorgen" label var s4 "Um den Schutz der Umwelt. 1 (highly concerned) to 3 (not concerned)" replace s5="1" if s5=="Große Sorgen" replace s5="2" if s5=="Einige Sorgen" replace s5="3" if s5=="Keine Sorgen" label var s5 "Um die Folgen des Klimawandels. 1 (highly concerned) to 3 (not concerned)" replace s6="1" if s6=="Große Sorgen" replace s6="2" if s6=="Einige Sorgen" replace s6="3" if s6=="Keine Sorgen" label var s6 "Um die Erhaltung des Friedens. 1 (highly concerned) to 3 (not concerned)" replace s7="1" if s7=="Große Sorgen" replace s7="2" if s7=="Einige Sorgen" replace s7="3" if s7=="Keine Sorgen" label var s7 "Um die Transparenz in der Politik und in öffentlichen Verwaltungseinrichtungen. 1 (highly concerned) to 3 (not concerned)" replace s8="1" if s8=="Große Sorgen" replace s8="2" if s8=="Einige Sorgen" replace s8="3" if s8=="Keine Sorgen" label var s8 "Über den globalen Terrorismus. 1 (highly concerned) to 3 (not concerned)" replace s9="1" if s9=="Große Sorgen" replace s9="2" if s9=="Einige Sorgen" replace s9="3" if s9=="Keine Sorgen" label var s9 "Über die Entwicklung der Kriminalität in Deutschland. 1 (highly concerned) to 3 (not concerned)" replace s10="1" if s10=="Große Sorgen" replace s10="2" if s10=="Einige Sorgen" replace s10="3" if s10=="Keine Sorgen" label var s10 "Über die Zuwanderung nach Deutschland. 1 (highly concerned) to 3 (not concerned)" replace s11="1" if s11=="Große Sorgen" replace s11="2" if s11=="Einige Sorgen" replace s11="3" if s11=="Keine Sorgen" label var s11 "Über Ausländerfeindlichkeit und Fremdenhass in Deutschland. 1 (highly concerned) to 3 (not concerned)" replace imp1="1" if imp1=="Trifft gar nicht zu" replace imp1="2" if imp1=="Trifft wenig zu" replace imp1="3" if imp1=="Trifft etwas zu" replace imp1="4" if imp1=="Trifft ziemlich zu" replace imp1="5" if imp1=="Trifft voll und ganz zu" label var imp1 "Manchmal tue ich spontan Dinge, die ich besser nicht getan hätte. 1 (disagree) to 5 (agree)" replace imp2="1" if imp2=="Trifft gar nicht zu" replace imp2="2" if imp2=="Trifft wenig zu" replace imp2="3" if imp2=="Trifft etwas zu" replace imp2="4" if imp2=="Trifft ziemlich zu" replace imp2="5" if imp2=="Trifft voll und ganz zu" label var imp2 "Um mich besser zu fühlen, mache ich manchmal Sachen, die ich später bereue. 1 (disagree) to 5 (agree)" replace imp3="1" if imp3=="Trifft gar nicht zu" replace imp3="2" if imp3=="Trifft wenig zu" replace imp3="3" if imp3=="Trifft etwas zu" replace imp3="4" if imp3=="Trifft ziemlich zu" replace imp3="5" if imp3=="Trifft voll und ganz zu" label var imp3 "Ich denke normalerweise genau nach, bevor ich etwas unternehme. 1 (disagree) to 5 (agree)" replace imp4="1" if imp4=="Trifft gar nicht zu" replace imp4="2" if imp4=="Trifft wenig zu" replace imp4="3" if imp4=="Trifft etwas zu" replace imp4="4" if imp4=="Trifft ziemlich zu" replace imp4="5" if imp4=="Trifft voll und ganz zu" label var imp4 "Ich entscheide meist nach sorgfältigem und logischem Überlegen. 1 (disagree) to 5 (agree)" replace imp5="1" if imp5=="Trifft gar nicht zu" replace imp5="2" if imp5=="Trifft wenig zu" replace imp5="3" if imp5=="Trifft etwas zu" replace imp5="4" if imp5=="Trifft ziemlich zu" replace imp5="5" if imp5=="Trifft voll und ganz zu" label var imp5 "Was ich begonnen habe, führe ich auch zu Ende. 1 (disagree) to 5 (agree)" replace imp6="1" if imp6=="Trifft gar nicht zu" replace imp6="2" if imp6=="Trifft wenig zu" replace imp6="3" if imp6=="Trifft etwas zu" replace imp6="4" if imp6=="Trifft ziemlich zu" replace imp6="5" if imp6=="Trifft voll und ganz zu" label var imp6 "Ich teile meine Zeit gut ein, so dass ich Aufgabe rechtzeitig erledigen kann. 1 (disagree) to 5 (agree)" replace imp7="1" if imp7=="Trifft gar nicht zu" replace imp7="2" if imp7=="Trifft wenig zu" replace imp7="3" if imp7=="Trifft etwas zu" replace imp7="4" if imp7=="Trifft ziemlich zu" replace imp7="5" if imp7=="Trifft voll und ganz zu" label var imp7 "Ich bin bereit Risiken einzugehen. 1 (disagree) to 5 (agree)" replace imp8="1" if imp8=="Trifft gar nicht zu" replace imp8="2" if imp8=="Trifft wenig zu" replace imp8="3" if imp8=="Trifft etwas zu" replace imp8="4" if imp8=="Trifft ziemlich zu" replace imp8="5" if imp8=="Trifft voll und ganz zu" label var imp8 "Ich bin gerne bereit, etwas zu wagen. 1 (disagree) to 5 (agree)" replace religion="1" if religion=="Als religiöse Person" replace religion="2" if religion=="Als nicht-religiöse Person" replace religion="3" if religion=="Als Atheist" label var religion "religiosity of subject" replace rtype="1" if rtype=="Keiner" replace rtype="1" if rtype=="Römisch-katholisch" replace rtype="1" if rtype=="Evangelisch" replace rtype="1" if rtype=="Orthodox (Russisch/Griechisch/ etc.)" replace rtype="1" if rtype=="Jüdisch" replace rtype="1" if rtype=="Muslimisch" replace rtype="1" if rtype=="Hinduistisch" replace rtype="1" if rtype=="Buddhistisch" replace rtype="1" if rtype=="Andere" label var rtype "religious affiliation of subject" ***adding period dummies, as well as endgame and learning dummies tab period, gen(p_) gen learn=0 replace learn=1 if p_1==1 | p_2==1 | p_3==1 gen endgame=0 replace endgame=1 if p_10==1 | p_20==1 ****check why only 23 periods are listed & eventually add p_30==1 in endgame label var learn "dummy for first three periods" label var endgame "dummy for final period in each part" ***adding LAGGED VARIABLES: own last-period profit, own profit of last three periods, own last-period decision, bys unsubnr (period): gen bribel1=bribe[_n-1] bys unsubnr (period): gen bribel3=bribe[_n-3]+bribe[_n-2]+bribe[_n-1] bys unsubnr (period): gen paidl1=paid[_n-1] bys unsubnr (period): gen paidl3=paid[_n-3]+paid[_n-2]+paid[_n-1] bys unsubnr (period): gen ownl1profit=aprofit[_n-1] bys unsubnr (period): gen ownl3profit=aprofit[_n-3]+aprofit[_n-2]+aprofit[_n-1] bys unsubnr (period): gen qualityl1=quality[_n-1] bys unsubnr (period): gen reportl1=report[_n-1] bys unsubnr (period): gen reportl3=report[_n-3]+report[_n-2]+report[_n-1] bys unsubnr (period): gen detectedl3=detected[_n-3]+detected[_n-2]+detected[_n-1] label var bribel1 "bribe asked in last period" label var bribel3 "bribe(s) asked in last three periods" label var paidl1 "bribe paid in last period" label var paidl3 "bribe(s) paid in the last three periods" label var ownl1profit "own earnings in last period" label var ownl3profit "own earnings in the last three periods" label var qualityl1 "quality provided in last period" label var reportl1 "report or recommendation of the PO in last period" label var reportl3 "report or recommendation of the PO in the last three periods" label var detectedl3 "detected bribe-asking or law-abiding behaviour of the PO in the last three periods" destring, replace compress sort ungrpnr period subingrp save data_regression_working2.dta, replace