An R package on Nigeria and for Nigeria
The goal of naijR is to make it easier for R users to work with data related to Nigeria.
One of the useful aspects of this package is enabling users to plot country and sub-national geo-spatial maps. Currently, only vector-type graphics are supported. To find out more, read the vignette–accessible from within R as follows:
vignette('nigeria-maps', 'naijR')
To create a list of all the States of the Nigerian Federation, simply
call states()
.
library(naijR, quietly = TRUE)
<- states()
ss head(ss)
cat(sprintf("\n...but Nigeria has %i States.", length(ss)))
## Abia
## Adamawa
## Akwa Ibom
## Anambra
## Bauchi
## Bayelsa
##
## ...but Nigeria has 37 States.
States from a given geo-political zone can also be selected:
states(gpz = "ne") # i.e. North-East
## Adamawa
## Bauchi
## Borno
## Gombe
## Taraba
## Yobe
For other capabilities of this function, see
?states()
.
This is a basic example that shows how to very quickly fetch the names of Local Government Areas within a given State:
lgas("Imo")
## Aboh Mbaise
## Ahiazu Mbaise
## Ehime Mbano
## Ezinihitte
## Ideato North
## Ideato South
## Ihitte/Uboma
## Ikeduru
## Isiala Mbano
## Isu
## Mbaitoli
## Ngor Okpala
## Njaba
## Nkwerre
## Nwangele
## Obowo
## Oguta
## Ohaji/Egbema
## Okigwe
## Orlu
## Orsu
## Oru East
## Oru West
## Owerri Municipal
## Owerri North
## Owerri West
## Unuimo
To list all the LGAs in Nigeria, call the same function without any parameters:
<- length(lgas())
n sprintf("Nigeria has a total of %i Local Government Areas", n)
## [1] "Nigeria has a total of 774 Local Government Areas"
Want to create a function to check how many LGAs a particular State has?
<- function(state) {
how_many_lgas <- length(lgas(state))
n cat(state, "State has", n, "LGAs\n")
}
how_many_lgas("Sokoto")
## Sokoto State has 23 LGAs
how_many_lgas("Ekiti")
## Ekiti State has 16 LGAs
It is common to come across datasets where phone numbers are wrongly
entered or misinterpreted by software like MS Excel. The function
fix_mobile()
helps with this.
fix_mobile("8032000000")
## [1] "08032000000"
The function works on vectors; thus an entire column of a table with phone numbers can be quickly processed. Illegible or irreparable numbers are turned into missing values, e.g.
<- data.frame(
(dat serialno = 1:8,
phone = c(
"123456789",
"0123456789",
"8000000001",
"9012345678",
"07098765432",
"08123456789",
"09064321987",
"O8055577889"
)
))## serialno phone
## 1 1 123456789
## 2 2 0123456789
## 3 3 8000000001
## 4 4 9012345678
## 5 5 07098765432
## 6 6 08123456789
## 7 7 09064321987
## 8 8 O8055577889
fix_mobile(dat$phone)
## [1] NA NA "08000000001" "09012345678" "07098765432"
## [6] "08123456789" "09064321987" NA
To download and install the current stable version of this package from CRAN:
install.packages("naijR")
The development version can be obtained from GitHub with:
# If necessary, 'install.packages("remotes")' first
::install_github("BroVic/naijR") remotes
Contributions are welcome and pull requests for R code or documentation will be gladly entertained. For bug reports or feature requests, kindly submit an issue.