#predict(fit1,newx=x[1:10,],s=c(0.01,0.005)) # make predictions
plot(fit1)
fitdist(categ_het$contr_ratio, "norm")
layout(1:1)
categ_het <- read.csv("C:/Users/USER/Desktop/Public-Goods---TFM/dades/categ_het.csv")
categ_hom <- read.csv("C:/Users/USER/Desktop/Public-Goods---TFM/dades/categ_hom.csv")
colnames(categ_het)[colnames(categ_het) == 'contr.budget'] <- 'contr_ratio'
colnames(categ_hom)[colnames(categ_hom) == 'contr.budget'] <- 'contr_ratio'
fitdist(categ_het$contr_ratio, "norm")
layout(1:1)
fitdist(categ_hom$contr_ratio, "norm")
library(data.table)
library(plyr)
library(dplyr)
library(fitdistrplus)
library(logspline)
# CLIMATE DAU
#ronda_dau <- read.csv("~/dades/dades_csv/climatedau/game_user.csv")
partida_dau <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dades_csv/climatedau/game_partida.csv")
ronda_dau <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dades_csv/climatedau/game_ronda.csv")
user_dau<- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dades_csv/climatedau/game_user.csv")
user_dau = user_dau[-c(4), ]
userronda_dau<- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dades_csv/climatedau/game_userronda.csv")
encuestas <- function(user_ds){
user_ds$prfinal1<-as.factor(user_ds$prfinal1)
levels(user_ds$prfinal1)<-c('','No','Yes','Yes, in previous ds experiments')
user_ds$prfinal2<-as.factor(user_ds$prfinal2)
levels(user_ds$prfinal2)<-c('','Very Much','Somewhat','Not Really','Not at all')
user_ds$prfinal3<-as.factor(user_ds$prfinal3)
levels(user_ds$prfinal3)<-c('','Yes, from the beginning','Yes, after a few rounds',
'No, from the beginning','No, after a few rounds')
user_ds$prfinal4<-as.factor(user_ds$prfinal4)
levels(user_ds$prfinal4)<-c('','Agree','Disagree','My contribution should not depend on this','n/a')
user_ds$prfinal5<-as.factor(user_ds$prfinal5)
levels(user_ds$prfinal5)<-c('','Agree','Disagree','My contribution should not depend on this','n/a')
user_ds$prfinal6<-as.factor(user_ds$prfinal6)
levels(user_ds$prfinal6)<-c('','Agree','Disagree','n/a')
user_ds$prfinal7<-as.factor(user_ds$prfinal7)
levels(user_ds$prfinal7)<-c('','Agree','Disagree','n/a')
user_ds$prfinal8<-as.factor(user_ds$prfinal8)
levels(user_ds$prfinal8)<-c('','Agree','Disagree','n/a')
user_ds$prfinal9<-as.factor(user_ds$prfinal9)
levels(user_ds$prfinal9)<-c('','Agree','Disagree','n/a')
user_ds$prfinal10<-as.factor(user_ds$prfinal10)
levels(user_ds$prfinal10)<-c('','Doppler Effect','Greenhouse Effect','Faraday Effect','Refrigerator Effect')
user_ds$prfinal11<-as.factor(user_ds$prfinal11)
levels(user_ds$prfinal11)<-c('','U.S','Italy','China','Japan')
user_ds$prfinal12<-as.factor(user_ds$prfinal12)
levels(user_ds$prfinal12)<-c('','Oil','Carbon','Solar energy','Nuclear energy')
user_ds$prfinal13<-as.factor(user_ds$prfinal13)
levels(user_ds$prfinal13)<-c('','Declaration of Helsinki','Kyoto Protocol','Schengen Agreement','Treaty of Versailles')
user_ds$prfinal14<-as.factor(user_ds$prfinal14)
levels(user_ds$prfinal14)<-c('','Carbon footprint','Eco-Impact','Individual gas fee','Reduced environmental cost')
user_ds$prfinal15<-as.factor(user_ds$prfinal15)
levels(user_ds$prfinal15)<-c('','2%','5%','15%','20%')
return(user_ds)
}
user_dau = encuestas(user_dau)
#Dades usuaris:
#prop.table(as.data.frame.matrix(user_dau), 2)
#as.data.frame.matrix(user_dau)
#Eliminar rondes que han arribat al 0:
#id_elimin = filter(ronda_dau, bucket_inici_ronda <=0)
#names(id_elimin)[names(id_elimin) == 'num_ronda'] <- 'ronda_id'
#contr_dau<-contributions.round(userronda_dau,6,as.numeric(tail(userronda_dau["ronda_id"], n=1)/10))
#contr_dau <- subset(contr_dau, partida%in%unique(eq[,"partida_id"]))
#
#
#rounds=10
#players=6
#ngames = as.numeric(tail(userronda_dau["ronda_id"], n=1)/10)
#userronda_dau$partida_id <- rep(seq(1,ngames,length=ngames), each=players*rounds,times=1)
#
#
#
#library(dplyr)
#x =anti_join(userronda_dau, id_elimin, by = "ronda_id")
# CLIMATE STREET
partida_street <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dades_csv/climatestreet/game_partida_street.csv")
ronda_street <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dades_csv/climatestreet/game_ronda_street.csv")
user_street <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dades_csv/climatestreet/game_user_street.csv")
userronda_street <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dades_csv/climatestreet/game_userronda_street.csv")
user_street <-subset(user_street, partida_id!=0)
#install.packages("Hmisc")
library("Hmisc")
userronda_street = userronda_street[which(userronda_street[['user_id']] %in% user_street[['id']]), ]
user_street=encuestas(user_street)
# CLIMATE VILANOVA
## vilanova: import
partida_vil <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dadesvil/partida.csv")
user_vil <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dadesvil/user.csv")
userronda_vil <- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dadesvil/userronda.csv")
ronda_vil<- read.csv("C:/Users/USER/Desktop/masterdatascience/TFM/dades/dadesvil/ronda.csv")
user_vil$rang_edat<-as.factor(user_vil$rang_edat)
levels(user_vil$rang_edat)<-c('','14-19','18-24','25-34','35-44','45-54','55-64','65+')
user_vil$enquesta_final_pr1<-as.factor(user_vil$enquesta_final_pr1)
levels(user_vil$enquesta_final_pr1)<-c('','Cada dia','Cada setmana','Cada mes','Molt poc','Mai')
user_vil$enquesta_final_pr2<-as.factor(user_vil$enquesta_final_pr2)
levels(user_vil$enquesta_final_pr2)<-c('','Matí','Tarda','Nit','Mai')
user_vil$enquesta_final_pr3<-as.factor(user_vil$enquesta_final_pr3)
levels(user_vil$enquesta_final_pr3)<-c('','places','pistes esportives','parcs','espais verds','platja','altres')
user_vil$enquesta_final_pr4<-as.factor(user_vil$enquesta_final_pr4)
levels(user_vil$enquesta_final_pr4)<-c('','Passejo','Surto amb amics','Conec gent','Faig esport',
'Activitats lúdiques','Altres')
user_vil$enquesta_final_pr5<-as.factor(user_vil$enquesta_final_pr5)
levels(user_vil$enquesta_final_pr5)<-c('','Sí','No','n/a')
#user_vil$enquesta_final_pr6<-as.factor(user_vil$enquesta_final_pr6)
#levels(user_vil$enquesta_final_pr6)<-c('','No em sento segur','Està brut','Hi ha massa trànsit de vehicles',
#                                        'Hi ha massa soroll','No hi ha prou verd','Falta espai','Està en mal estat',
#                                        'No hi ha prou pistes esportives','No és accessible per a tothom (nens, gent gran, persones amb discapacitats...)',
#                                        'No és segur per tothom (nens, gent gran, persones amb discapacitats...)','Altres')
user_vil$enquesta_final_pr7<-as.factor(user_vil$enquesta_final_pr7)
levels(user_vil$enquesta_final_pr7)<-c('','Torrent Ballester','Parc de la Marina','La Rambla','Camí del Mar i platja',
'Torre-roja','Plaça Europa','Jardins de Magdalena Modolell','Parc de Can Xic')
user_vil$enquesta_final_pr8<-as.factor(user_vil$enquesta_final_pr8)
levels(user_vil$enquesta_final_pr8)<-c('','Gens','Poc','Regular','Bastant','Molt')
user_vil$enquesta_final_pr9<-as.factor(user_vil$enquesta_final_pr9)
levels(user_vil$enquesta_final_pr9)<-c('','Paviment','Enllumenat','Soroll','Neteja','Espai verd')
user_vil$enquesta_final_pr10<-as.factor(user_vil$enquesta_final_pr10)
levels(user_vil$enquesta_final_pr10)<-c('','Cada dia','Cada setmana','Cada mes','Molt poc','Mai')
user_vil$enquesta_final_pr11<-as.factor(user_vil$enquesta_final_pr11)
levels(user_vil$enquesta_final_pr11)<-c('','Matí','Tarda','Nit','Mai')
user_vil$enquesta_final_pr12<-as.factor(user_vil$enquesta_final_pr12)
levels(user_vil$enquesta_final_pr12)<-c('','Passejo','Surto amb amics','Conec a gent','Activitats lúdiques',
'Estic de pas','Altres')
##1) Subdataset: users / round.
contributions.round <- function(userronda, players, ngames,user_ds) {
col <- rep(seq(1,10,length=10), each=players,times=ngames)
contrib <- userronda[c("seleccio","ronda_id", "user_id")]
contrib["ronda_id"]<- col
res <- reshape(contrib, timevar = "ronda_id", idvar = "user_id", direction = "wide")
rownames(res) <- res$user_id
res$user_id <- NULL
return(res)
}
contributions.norm <- function(csv){
contr_norm<- read.csv(paste("C:/Users/USER/Desktop/Public-Goods---TFM/dades/contr_norm/",csv , sep = ""),
header = TRUE)
rownames(contr_norm) <- contr_norm$user_id
contr_norm$user_id <- NULL
return(contr_norm)
}
contr_dau <- contributions.round(userronda_dau,6,54, user_dau)
contr_street <- contributions.round(userronda_street,6,18,user_street)
contr_vil <- contributions.round(userronda_vil,6, 30, user_vil)
ineq_contr_dau_norm <- contributions.norm("ineq_contr_dau_norm.csv")
eq_contr_dau_norm <-contributions.norm("eq_contr_dau_norm.csv")
contr_street_norm<-contributions.norm("contr_street_norm.csv")
contr_vil_norm<-contributions.norm("contr_vil_norm.csv")
heterogeneous <- rbind(ineq_contr_dau_norm, contr_street_norm)
homogeneous <- rbind(eq_contr_dau_norm, contr_vil_norm)
## Mean contribution per round with INEQUALITY
col_mean_ineqdau = colMeans(ineq_contr_dau_norm,na.rm=FALSE, dim=1)
col_mean_eqdau = colMeans(eq_contr_dau_norm,na.rm=FALSE, dim=1)
col_mean_street = colMeans(contr_street_norm,na.rm=FALSE, dim=1)
col_mean_vil = colMeans(contr_vil_norm,na.rm=FALSE, dim=1)
x <- seq(1,10,length=10)
#sdev <-apply(contr_dau[,2:11],2,sd,na.rm=TRUE)
plot(x,col_mean_ineqdau, col="blue", lwd=2, type="l",xlab = "Round",
ylab = "Mean contribution", main="Mean Contribution with all games")
lines(x,col_mean_eqdau, col ="orange", lwd=2)
#arrows(x, col_mean_dau-sdev, x, col_mean_dau+sdev, length=0.05, angle=90, code=3)
#sdev <-apply(contr_street[,2:11],2,sd,na.rm=TRUE)
lines(x,col_mean_street, col ="green", lwd=2)
#arrows(x, col_mean_street-sdev, x, col_mean_street+sdev, length=0.05, angle=90, code=3)
#sdev <-apply(contr_vil[,2:11],2,sd,na.rm=TRUE)
lines(x,col_mean_vil,col = "red", lwd=2)
#arrows(x, col_mean_vil-sdev, x, avg+sdev, length=0.05, angle=90, code=3)
legend("topright",legend=c("Heterogeneous DAU", "Homogeneous DAU","STREET","VIL"),lwd=3.0,col=c("blue", "orange","green","red"))
#user_dau = user_dau[-c(4), ]
table(user_dau[,"genere"])
table(user_street[,"genere"])
table(user_vil[,"genere"])
socio.demog.data <- function(user_ds,ds){
names(user_ds)[names(user_ds) == 'id'] <- 'user_id'
ds_user <- merge(ds, user_ds, by='user_id')
# Genere:
ds_user$genere<-as.factor(ds_user$genere)
levels(ds_user$genere)<-c('female','male')
# Ages:
agebreaks <- c(0,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,100)
#agelabels <- c("0-1","1-4","5-9","10-14","15-19","20-24","25-29","30-34",
#               "35-39","40-44","45-49","50-54","55-59","60-64","65-69",
#               "70-74","75-79","80-84","85+")
agelabels <- c("0-9","10-14","15-19","20-24","25-29","30-34",
"35-39","40-44","45-49","50-54","55-59","60-64","65-69",
"70-74","75-79","80+")
setDT(ds_user)[ , agegroups := cut(ds_user$rang_edat,
breaks = agebreaks,
right = FALSE,
labels = agelabels)]
#Studies level:
ds_user$nivell_estudis<-as.factor(ds_user$nivell_estudis)
levels(ds_user$nivell_estudis)<-c('','none','primary','secondary','bachillerat','prof','univ','other')
return(ds_user)
}
#DAU:
dau_socio = socio.demog.data(user_dau,dau)
#Dades socio:
table(dau_socio$agegroups)
#plot(dau_socio$agegroups)
plot(dau_socio$agegroups,xlab="age",ylab="counts", main= "Age distribution DAU",col="cyan")
table(dau_socio$nivell_estudis)
plot(dau_socio$nivell_estudis,xlab="studies",ylab="counts", main= "Studies distribution DAU",col="cyan")
#STREET:
street_socio = socio.demog.data(user_street,street)
table(street_socio$agegroups)
plot(street_socio$agegroups,xlab="age",ylab="counts", main= "Age distribution STREET",col="cyan")
table(street_socio$nivell_estudis)
plot(street_socio$nivell_estudis,xlab="studies",ylab="counts", main= "Studies distribution STREET",col="cyan")
#VIL:
names(user_vil)[names(user_vil) == 'id'] <- 'user_id'
vil_user <- merge(vil, user_vil, by='user_id')
#Genere
vil_user$genere<-as.factor(vil_user$genere)
levels(vil_user$genere)<-c('female','male')
#Age
vil_user$rang_edat<-as.factor(vil_user$rang_edat)
#levels(vil_user$rang_edat)<-c('0-10','11-15','16-18','19-25','26-35','36-45','46-55','56-65','66 +')
levels(vil_user$rang_edat)<-c('14-19','20-24','25-34','35-44','45-54','55-64','65+')
#levels(vil_user$rang_edat) <- c("0-9","10-14","15-19","20-24","25-29","30-34",
#               "35-39","40-44","45-49","50-54","55-59","60-64","65-69",
#               "70-74","75-79","80+")
#Studies level:
vil_user$nivell_estudis<-as.factor(vil_user$nivell_estudis)
levels(vil_user$nivell_estudis)<-c('','none','primary','secondary','bachillerat','prof','univ','other')
vil_socio = vil_user
table(vil_socio$rang_edat)
table(vil_socio$nivell_estudis)
plot(vil_socio$rang_edat,xlab="age",ylab="counts", main= "Age distribution VIL",col="cyan")
plot(vil_socio$nivell_estudis,xlab="studies",ylab="counts", main= "Studies distribution VIL",col="cyan")
##Write to csv:
#write.csv(dau_socio, file = "C:/Users/USER/Desktop/masterdatascience/TFM/dau_r.csv")
#write.csv(street_socio, file = "C:/Users/USER/Desktop/masterdatascience/TFM/street_r.csv")
#write.csv(vil_socio, file = "C:/Users/USER/Desktop/masterdatascience/TFM/vil_r.csv")
categ_het <- read.csv("C:/Users/USER/Desktop/Public-Goods---TFM/dades/categ_het.csv")
categ_hom <- read.csv("C:/Users/USER/Desktop/Public-Goods---TFM/dades/categ_hom.csv")
colnames(categ_het)[colnames(categ_het) == 'contr.budget'] <- 'contr_ratio'
colnames(categ_hom)[colnames(categ_hom) == 'contr.budget'] <- 'contr_ratio'
categ_het <- read.csv("C:/Users/USER/Desktop/Public-Goods---TFM/dades/categ_het.csv")
categ_hom <- read.csv("C:/Users/USER/Desktop/Public-Goods---TFM/dades/categ_hom.csv")
colnames(categ_het)[colnames(categ_het) == 'contr.budget'] <- 'contr_ratio'
colnames(categ_hom)[colnames(categ_hom) == 'contr.budget'] <- 'contr_ratio'
# 1 - Heatmap. y-axis: cluster, x-axis:
categ_het <- read.csv("/dades/categ_het.csv")
categ_hom <- read.csv("/dades/categ_hom.csv")
colnames(categ_het)[colnames(categ_het) == 'contr.budget'] <- 'contr_ratio'
colnames(categ_hom)[colnames(categ_hom) == 'contr.budget'] <- 'contr_ratio'
categ_het <- read.csv("dades/categ_het.csv")
categ_hom <- read.csv("dades/categ_hom.csv")
colnames(categ_het)[colnames(categ_het) == 'contr.budget'] <- 'contr_ratio'
colnames(categ_hom)[colnames(categ_hom) == 'contr.budget'] <- 'contr_ratio'
categ_het <- read.csv("../dades/categ_het.csv")
categ_hom <- read.csv("../dades/categ_hom.csv")
colnames(categ_het)[colnames(categ_het) == 'contr.budget'] <- 'contr_ratio'
colnames(categ_hom)[colnames(categ_hom) == 'contr.budget'] <- 'contr_ratio'
setwd('C:/Users/USER/Desktop/final_TFM/Identifying-patterns-of-human-behavior-an-analysis-on-experimental-data-of-the-Public-Goods-Game/dades/')
categ_het <- read.csv("categ_het.csv")
categ_hom <- read.csv("categ_hom.csv")
colnames(categ_het)[colnames(categ_het) == 'contr.budget'] <- 'contr_ratio'
colnames(categ_hom)[colnames(categ_hom) == 'contr.budget'] <- 'contr_ratio'
fitdist(categ_het$contr_ratio, "norm")
layout(1:1)
library(ineq)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
ineq(as.numeric(unlist(x1)))
gini <- c(gini,ineq(as.numeric(unlist(x1))))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="round",type="l",ylab="gini coefficient", main= "Gini index differences",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
## Now gini coefficient in a game:
ineq_contr_dau_norm <- contributions.norm("ineq_contr_dau_norm.csv")
eq_contr_dau_norm <-contributions.norm("eq_contr_dau_norm.csv")
contr_street_norm<-contributions.norm("contr_street_norm.csv")
contr_vil_norm<-contributions.norm("contr_vil_norm.csv")
heterogeneous <- rbind(ineq_contr_dau_norm, contr_street_norm)
homogeneous <- rbind(eq_contr_dau_norm, contr_vil_norm)
contributions.norm <- function(csv){
contr_norm<- read.csv(paste("C:/Users/USER/Desktop/final_TFM/Identifying-patterns-of-human-behavior-an-analysis-on-experimental-data-of-the-Public-Goods-Game/dades/contr_norm/",csv , sep = ""),
header = TRUE)
rownames(contr_norm) <- contr_norm$user_id
contr_norm$user_id <- NULL
return(contr_norm)
}
contr_dau <- contributions.round(userronda_dau,6,54, user_dau)
contr_street <- contributions.round(userronda_street,6,18,user_street)
contr_vil <- contributions.round(userronda_vil,6, 30, user_vil)
ineq_contr_dau_norm <- contributions.norm("ineq_contr_dau_norm.csv")
eq_contr_dau_norm <-contributions.norm("eq_contr_dau_norm.csv")
contr_street_norm<-contributions.norm("contr_street_norm.csv")
contr_vil_norm<-contributions.norm("contr_vil_norm.csv")
heterogeneous <- rbind(ineq_contr_dau_norm, contr_street_norm)
homogeneous <- rbind(eq_contr_dau_norm, contr_vil_norm)
library(ineq)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
ineq(as.numeric(unlist(x1)))
gini <- c(gini,ineq(as.numeric(unlist(x1))))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
ineq(as.numeric(unlist(x1)), type = 'Gini')
gini <- c(gini,ineq(as.numeric(unlist(x1))))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="round",type="l",ylab="gini coefficient", main= "Gini index differences",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="round",type="l",ylab="gini coefficient", main= "Gini index",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="round",type="l",ylab="gini coefficient", main= "Gini coefficient",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
0.6673318 - 0.320134
0.6939195 - 0.2154733
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
ineq(as.numeric(unlist(x1)), type = 'Gini')
gini <- c(gini,ineq(as.numeric(unlist(x1)), type = 'Gini'))
#Gini(x, n = rep(1, length(x)), unbiased = TRUE, conf.level = NA
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="round",type="l",ylab="gini coefficient", main= "Gini coefficient",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
library(ineq)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
#ineq(as.numeric(unlist(x1)), type = 'Gini')
gini <- c(gini,ineq(as.numeric(unlist(x1)), type = 'Gini'))
Gini(as.numeric(unlist(x1)), n = rep(1, length(x)), unbiased = TRUE, conf.level = TRUE)
gini <- c(gini,Gini(as.numeric(unlist(x1)), n = rep(1, length(x)), unbiased = TRUE, conf.level = TRUE))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
#ineq(as.numeric(unlist(x1)), type = 'Gini')
gini <- c(gini,ineq(as.numeric(unlist(x1)), type = 'Gini'))
Gini(as.numeric(unlist(x1)), n = rep(1, length(x)), unbiased = TRUE, conf.level = TRUE)
gini <- c(gini,Gini(as.numeric(unlist(x1)), n = rep(1, length(x1)), unbiased = TRUE, conf.level = TRUE))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
library(ineq)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
#ineq(as.numeric(unlist(x1)), type = 'Gini')
gini <- c(gini,ineq(as.numeric(unlist(x1)), type = 'Gini'))
Gini(as.numeric(unlist(x1)), n = rep(1, length(x1)), unbiased = TRUE, conf.level = TRUE)
gini <- c(gini,Gini(as.numeric(unlist(x1)), n = rep(1, length(x1)), unbiased = TRUE, conf.level = TRUE))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
#ineq(as.numeric(unlist(x1)), type = 'Gini')
gini <- c(gini,ineq(as.numeric(unlist(x1)), type = 'Gini'))
Gini(as.numeric(unlist(x1)), n = rep(1, length(x1)),conf.level = TRUE)
gini <- c(gini,Gini(as.numeric(unlist(x1)), n = rep(1, length(x1)),conf.level = TRUE))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
#ineq(as.numeric(unlist(x1)), type = 'Gini')
gini <- c(gini,ineq(as.numeric(unlist(x1)), type = 'Gini'))
gini <- c(gini,ineq(as.numeric(unlist(x1)),type="square.var"))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="round",type="l",ylab="gini coefficient", main= "Gini coefficient",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
ineq(as.numeric(unlist(x1)),type="square.var")
ineq(as.numeric(unlist(heterogeneous[0])),type="square.var")
ineq(as.numeric(unlist(heterogeneous[1])),type="square.var")
ineq(as.numeric(unlist(heterogeneous[2])),type="square.var")
## Figure 2
x <- rep(c(50/9, 50), c(9, 1))
y <- rep(c(2, 18), c(5, 5))
plot(table(x))
plot(table(y))
## statistics
mean(x)
mean(y)
Gini(x, corr = TRUE)
Gini(y, corr = TRUE)
Lasym(x)
Lasym(y)
## Figure 3
plot(Lc(x))
lines(Lc(y), col = "slategray")
abline(1, -1, lty = 2)
gini.ineq <- function(contr_ds){
gini <- NULL
for (i in 1:10) {
x1 <- c(contr_ds[i])
#as.numeric(unlist(x1))
#ineq(as.numeric(unlist(x1)), type = 'Gini')
gini <- c(gini,ineq(as.numeric(unlist(x1)), type = 'Gini'))
#gini <- c(gini,ineq(as.numeric(unlist(x1)),type="square.var"))
}
cat(gini)
return(gini)
}
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="round",type="l",ylab="gini coefficient", main= "Gini coefficient",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
abline(1, -1, lty = 2)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="round",type="l",ylab="gini coefficient", main= "Gini coefficient",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="Rounds",type="l",ylab="gini coefficient", main= "Gini coefficient",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
gini_het <- gini.ineq(heterogeneous)
gini_hom <- gini.ineq(homogeneous)
## PLOT DELS ENDING GAMES##
plot(gini_het,xlab="Rounds",type="l",ylab="Gini Coefficient", main= "Gini Coefficient per treatment",
col = "red",lwd=3.0, ylim=c(0,1))
lines(gini_hom,col="blue",lwd=3.0)
legend("topleft",legend=c("Heterogeneous","Homogeneous"),lwd=3.0,col=c("red","blue"))
