library(rio)
safi <- import("safi_clean.csv");safi
## country key_id roof type wall type floor type rooms
## 1 Mozambique 1 grass Muddaud Earth 1
## 2 Mozambique 2 grass Muddaud Earth 1
## 3 Mozambique 3 Mabati Sloping Burnt Bricks Cement NA
## 4 Mozambique 4 Mabati Sloping Burnt Bricks Earth 1
## 5 Mozambique 5 grass Burnt Bricks Earth 1
## 6 Mozambique 6 grass Muddaud Earth 1
## 7 Mozambique 7 grass Muddaud Earth 1
## 8 Mozambique 8 Mabati Sloping Burnt Bricks Cement 3
## 9 Mozambique 9 grass Burnt Bricks Earth 1
## 10 Mozambique 10 Mabati Sloping Burnt Bricks Cement 5
## 11 Tanzania 1 Mabati Sloping Burnt Bricks Earth 2
## 12 Tanzania 2 grass Burnt Bricks Earth 1
## 13 Tanzania 3 grass Muddaud Earth 1
## 14 Tanzania 4 grass Muddaud Earth 1
## 15 Tanzania 5 grass Burnt Bricks Cement 2
## 16 Tanzania 6 Mabati Sloping Burnt Bricks Earth 1
## 17 Tanzania 7 Mabati Sloping Sun Bricks Earth 1
## 18 Tanzania 8 Mabati Sloping Burnt Bricks Cement 4
## 19 Tanzania 9 grass Burnt Bricks Cement 1
## 20 Tanzania 10 grass Burnt Bricks Earth 1
## inc_barn or cowshed oxen poultry goats cows cows died looked after cows plot
## 1 no 0 1 0 0 no no 2
## 2 no 1 1 1 1 no no 3
## 3 no 0 1 0 0 no no 1
## 4 no 1 1 0 1 no no 3
## 5 no 1 1 1 1 no no 0
## 6 no 0 0 0 0 no no 1
## 7 no 1 1 0 0 no no 4
## 8 no 1 1 1 0 no no 2
## 9 no 1 1 1 1 no no NA
## 10 yes NA NA NA NA <NA> no NA
## 11 no 1 0 0 0 no no NA
## 12 no 1 2 0 0 no no NA
## 13 no 0 1 1 0 yes yes/no NA
## 14 no 1 0 0 1 no no NA
## 15 no 1 1 0 1 no yes NA
## 16 no 1 1 1 0 no no NA
## 17 no 1 1 0 0 no no NA
## 18 yes 0 0 0 0 no no NA
## 19 no 1 1 0 1 no no NA
## 20 no NA NA NA NA <NA> <NA> NA
## water_use
## 1 no
## 2 yes
## 3 no
## 4 no
## 5 no
## 6 no
## 7 yes
## 8 <NA>
## 9 <NA>
## 10 <NA>
## 11 <NA>
## 12 <NA>
## 13 <NA>
## 14 <NA>
## 15 MA
## 16 <NA>
## 17 <NA>
## 18 <NA>
## 19 <NA>
## 20 <NA>
#TASKS
###QUESTION 4.1
summary(safi)
## country key_id roof type wall type
## Length:20 Min. : 1.0 Length:20 Length:20
## Class :character 1st Qu.: 3.0 Class :character Class :character
## Mode :character Median : 5.5 Mode :character Mode :character
## Mean : 5.5
## 3rd Qu.: 8.0
## Max. :10.0
##
## floor type rooms inc_barn or cowshed oxen
## Length:20 Min. :1.000 Length:20 Min. :0.0000
## Class :character 1st Qu.:1.000 Class :character 1st Qu.:0.2500
## Mode :character Median :1.000 Mode :character Median :1.0000
## Mean :1.579 Mean :0.7222
## 3rd Qu.:1.500 3rd Qu.:1.0000
## Max. :5.000 Max. :1.0000
## NA's :1 NA's :2
## poultry goats cows cows died
## Min. :0.0000 Min. :0.0000 Min. :0.0000 Length:20
## 1st Qu.:1.0000 1st Qu.:0.0000 1st Qu.:0.0000 Class :character
## Median :1.0000 Median :0.0000 Median :0.0000 Mode :character
## Mean :0.8333 Mean :0.3333 Mean :0.3889
## 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:1.0000
## Max. :2.0000 Max. :1.0000 Max. :1.0000
## NA's :2 NA's :2 NA's :2
## looked after cows plot water_use
## Length:20 Min. :0 Length:20
## Class :character 1st Qu.:1 Class :character
## Mode :character Median :2 Mode :character
## Mean :2
## 3rd Qu.:3
## Max. :4
## NA's :12
# i observed the statistical summary of each element in the vector
###Question 4.2
str(safi)
## 'data.frame': 20 obs. of 15 variables:
## $ country : chr "Mozambique" "Mozambique" "Mozambique" "Mozambique" ...
## $ key_id : int 1 2 3 4 5 6 7 8 9 10 ...
## $ roof type : chr "grass" "grass" "Mabati Sloping" "Mabati Sloping" ...
## $ wall type : chr "Muddaud" "Muddaud" "Burnt Bricks" "Burnt Bricks" ...
## $ floor type : chr "Earth" "Earth" "Cement" "Earth" ...
## $ rooms : int 1 1 NA 1 1 1 1 3 1 5 ...
## $ inc_barn or cowshed: chr "no" "no" "no" "no" ...
## $ oxen : int 0 1 0 1 1 0 1 1 1 NA ...
## $ poultry : int 1 1 1 1 1 0 1 1 1 NA ...
## $ goats : int 0 1 0 0 1 0 0 1 1 NA ...
## $ cows : int 0 1 0 1 1 0 0 0 1 NA ...
## $ cows died : chr "no" "no" "no" "no" ...
## $ looked after cows : chr "no" "no" "no" "no" ...
## $ plot : int 2 3 1 3 0 1 4 2 NA NA ...
## $ water_use : chr "no" "yes" "no" "no" ...
#the two types of vectors are logical and numeric vector
###Question 4.3
nrow(safi) #20 rows
## [1] 20
ncol(safi) #15 column
## [1] 15
###Question 4.4
moz<-safi[1:10:1:15];moz
## Warning in 1:10:1: numerical expression has 10 elements: only the first used
## country key_id roof type wall type floor type rooms
## 1 Mozambique 1 grass Muddaud Earth 1
## 2 Mozambique 2 grass Muddaud Earth 1
## 3 Mozambique 3 Mabati Sloping Burnt Bricks Cement NA
## 4 Mozambique 4 Mabati Sloping Burnt Bricks Earth 1
## 5 Mozambique 5 grass Burnt Bricks Earth 1
## 6 Mozambique 6 grass Muddaud Earth 1
## 7 Mozambique 7 grass Muddaud Earth 1
## 8 Mozambique 8 Mabati Sloping Burnt Bricks Cement 3
## 9 Mozambique 9 grass Burnt Bricks Earth 1
## 10 Mozambique 10 Mabati Sloping Burnt Bricks Cement 5
## 11 Tanzania 1 Mabati Sloping Burnt Bricks Earth 2
## 12 Tanzania 2 grass Burnt Bricks Earth 1
## 13 Tanzania 3 grass Muddaud Earth 1
## 14 Tanzania 4 grass Muddaud Earth 1
## 15 Tanzania 5 grass Burnt Bricks Cement 2
## 16 Tanzania 6 Mabati Sloping Burnt Bricks Earth 1
## 17 Tanzania 7 Mabati Sloping Sun Bricks Earth 1
## 18 Tanzania 8 Mabati Sloping Burnt Bricks Cement 4
## 19 Tanzania 9 grass Burnt Bricks Cement 1
## 20 Tanzania 10 grass Burnt Bricks Earth 1
## inc_barn or cowshed oxen poultry goats cows cows died looked after cows plot
## 1 no 0 1 0 0 no no 2
## 2 no 1 1 1 1 no no 3
## 3 no 0 1 0 0 no no 1
## 4 no 1 1 0 1 no no 3
## 5 no 1 1 1 1 no no 0
## 6 no 0 0 0 0 no no 1
## 7 no 1 1 0 0 no no 4
## 8 no 1 1 1 0 no no 2
## 9 no 1 1 1 1 no no NA
## 10 yes NA NA NA NA <NA> no NA
## 11 no 1 0 0 0 no no NA
## 12 no 1 2 0 0 no no NA
## 13 no 0 1 1 0 yes yes/no NA
## 14 no 1 0 0 1 no no NA
## 15 no 1 1 0 1 no yes NA
## 16 no 1 1 1 0 no no NA
## 17 no 1 1 0 0 no no NA
## 18 yes 0 0 0 0 no no NA
## 19 no 1 1 0 1 no no NA
## 20 no NA NA NA NA <NA> <NA> NA
## water_use
## 1 no
## 2 yes
## 3 no
## 4 no
## 5 no
## 6 no
## 7 yes
## 8 <NA>
## 9 <NA>
## 10 <NA>
## 11 <NA>
## 12 <NA>
## 13 <NA>
## 14 <NA>
## 15 MA
## 16 <NA>
## 17 <NA>
## 18 <NA>
## 19 <NA>
## 20 <NA>
###Question 4.5
tanzrooms<-safi[11:20, 6];tanzrooms
## [1] 2 1 1 1 2 1 1 4 1 1
mean(tanzrooms)
## [1] 1.5
###Question 4.6
safi[safi$country=="Tanzania" & safi$rooms > 2, ]
## country key_id roof type wall type floor type rooms
## 18 Tanzania 8 Mabati Sloping Burnt Bricks Cement 4
## inc_barn or cowshed oxen poultry goats cows cows died looked after cows plot
## 18 yes 0 0 0 0 no no NA
## water_use
## 18 <NA>
###Question 4.7
mz_rooms <- safi[c(safi$country=="Mozambique") & safi$rooms==5,];mz_rooms
## country key_id roof type wall type floor type rooms
## NA <NA> NA <NA> <NA> <NA> NA
## 10 Mozambique 10 Mabati Sloping Burnt Bricks Cement 5
## inc_barn or cowshed oxen poultry goats cows cows died looked after cows plot
## NA <NA> NA NA NA NA <NA> <NA> NA
## 10 yes NA NA NA NA <NA> no NA
## water_use
## NA <NA>
## 10 <NA>
#the roof type is Mabati Sloping
###question4.8
table(safi$`inc_barn or cowshed`)
##
## no yes
## 18 2
mozambique_not <- safi[safi$country=="Mozambique", ];mozambique_not
## country key_id roof type wall type floor type rooms
## 1 Mozambique 1 grass Muddaud Earth 1
## 2 Mozambique 2 grass Muddaud Earth 1
## 3 Mozambique 3 Mabati Sloping Burnt Bricks Cement NA
## 4 Mozambique 4 Mabati Sloping Burnt Bricks Earth 1
## 5 Mozambique 5 grass Burnt Bricks Earth 1
## 6 Mozambique 6 grass Muddaud Earth 1
## 7 Mozambique 7 grass Muddaud Earth 1
## 8 Mozambique 8 Mabati Sloping Burnt Bricks Cement 3
## 9 Mozambique 9 grass Burnt Bricks Earth 1
## 10 Mozambique 10 Mabati Sloping Burnt Bricks Cement 5
## inc_barn or cowshed oxen poultry goats cows cows died looked after cows plot
## 1 no 0 1 0 0 no no 2
## 2 no 1 1 1 1 no no 3
## 3 no 0 1 0 0 no no 1
## 4 no 1 1 0 1 no no 3
## 5 no 1 1 1 1 no no 0
## 6 no 0 0 0 0 no no 1
## 7 no 1 1 0 0 no no 4
## 8 no 1 1 1 0 no no 2
## 9 no 1 1 1 1 no no NA
## 10 yes NA NA NA NA <NA> no NA
## water_use
## 1 no
## 2 yes
## 3 no
## 4 no
## 5 no
## 6 no
## 7 yes
## 8 <NA>
## 9 <NA>
## 10 <NA>
moz_no_barn_cowshed <- mozambique_not[mozambique_not$`inc_barn or cowshed`=="no" & mozambique_not$`inc_barn or cowshed`== "no"]
wall_count_for_types <- table(safi$country, safi$`wall type`);wall_count_for_types
##
## Burnt Bricks Muddaud Sun Bricks
## Mozambique 6 4 0
## Tanzania 7 2 1
nrow(moz_no_barn_cowshed)
## [1] 10
table(mozambique_not$`inc_barn or cowshed`=="no" & mozambique_not$`inc_barn or cowshed`=="no")
##
## FALSE TRUE
## 1 9
# 9 dwellings do not have barn or cowshed
wall_count_for_types <- table(safi$country, safi$`wall type`)
barplot(wall_count_for_types,
beside = TRUE,
main = "wall types by country",
xlab = "wall type",
ylab = "number of households",
col = c("purple","pink"))