0

I am using a shape file .shp and then converting it to a boundary file .bnd using BayesX to use it as a random effect in my model. But it throws back an error of ERROR: map is disconnected, spatial effect cannot be estimated from theBayesX log file. What could be the problem

Here is the code

fileUrl <- "http://biogeo.ucdavis.edu/data/gadm2.8/shp/ZAF_adm_shp.zip"
download.file(fileUrl, destfile = "ZAF_adm_shp.zip")
unzip(zipfile = "ZAF_adm_shp.zip",exdir = "ZAF_adm_shp")
library(BayesX)
library("R2BayesX")
shpname <- file.path(getwd(), "ZAF_adm_shp" , "ZAF_adm2")
SA_bnd <- BayesX::shp2bnd(shpname = shpname, regionnames = "ID_2", check.is.in = F)
za <- bayesx(dp2011 ~ code +   sx(ID_2, bs = "mrf", map = SA_bnd) +
               sx(ID_2, bs = "re"), iter = 1200,  step = 10, data = data)

And here is the data

data<-dput(structure(list(ID_2 = 1:52, NAME_2B = structure(c(1L, 3L, 5L, 
10L, 6L, 24L, 30L, 33L, 20L, 26L, 27L, 51L, 40L, 18L, 12L, 36L, 
13L, 50L, 2L, 19L, 23L, 41L, 42L, 43L, 44L, 45L, 46L, 52L, 38L, 
8L, 28L, 47L, 48L, 37L, 17L, 22L, 32L, 21L, 25L, 29L, 35L, 39L, 
4L, 14L, 31L, 15L, 11L, 7L, 9L, 16L, 34L, 49L), .Label = c("Alfred Nzo", 
"Amajuba", "Amathole", "Bojanala", "Buffalo City", "Cacadu", 
"Cape Winelands", "Capricorn", "Central Karoo", "Chris Hani", 
"City of Cape Town", "City of Johannesburg", "City of Tshwane", 
"Dr Kenneth Kaunda", "Dr Ruth Segomotsi Mompati", "Eden", "Ehlanzeni", 
"Ekurhuleni", "eThekwini", "Fezile Dabi", "Frances Baard", "Gert Sibande", 
"iLembe", "Joe Gqabi", "John Taolo Gaetsewe", "Lejweleputswa", 
"Mangaung", "Mopani", "Namakwa", "Nelson Mandela Bay", "Ngaka Modiri Molema", 
"Nkangala", "O.R.Tambo", "Overberg", "Pixley ka Seme", "Sedibeng", 
"Sekhukhune", "Sisonke", "Siyanda", "Thabo Mofutsanyane", "Ugu", 
"Umgungundlovu", "Umkhanyakude", "Umzinyathi", "Uthukela", "Uthungulu", 
"Vhembe", "Waterberg", "West Coast", "West Rand", "Xhariep", 
"Zululand"), class = "factor"), code = structure(c(38L, 5L, 1L, 
6L, 4L, 7L, 51L, 8L, 13L, 10L, 50L, 9L, 11L, 47L, 49L, 36L, 52L, 
41L, 18L, 48L, 22L, 14L, 15L, 20L, 17L, 16L, 21L, 19L, 37L, 29L, 
27L, 28L, 30L, 40L, 26L, 24L, 25L, 46L, 39L, 43L, 44L, 45L, 31L, 
35L, 32L, 33L, 2L, 12L, 42L, 34L, 23L, 3L), .Label = c(" BUF", 
" CPT", " DC1", " DC10", " DC12", " DC13", " DC14", " DC15", 
" DC16", " DC18", " DC19", " DC2", " DC20", " DC21", " DC22", 
" DC23", " DC24", " DC25", " DC26", " DC27", " DC28", " DC29", 
" DC3", " DC30", " DC31", " DC32", " DC33", " DC34", " DC35", 
" DC36", " DC37", " DC38", " DC39", " DC4", " DC40", " DC42", 
" DC43", " DC44", " DC45", " DC47", " DC48", " DC5", " DC6", 
" DC7", " DC8", " DC9", " EKU", " ETH", " JHB", " MAN", " NMA", 
" TSH"), class = "factor"), dp2011 = c(9.7, 7.1, 11.5, 11, 7.2, 
10.7, 13.8, 12.6, 5.8, 8.2, 7.9, 12.3, 11.7, 10.8, 15.5, 7.6, 
8.1, 17.6, 11.3, 33.5, 18.4, 12.5, 14.7, 15.8, 8.9, 8.8, 20.3, 
17.6, 10.5, 10.5, 14.6, 16.4, 8.5, 10.7, 7.1, 6.6, 7.5, 9.9, 
7.5, 4.8, 11, 7.9, 5.4, 11.6, 12.5, 8.3, 14.9, 29.2, 30.7, 8.5, 
16.5, 15.8)), .Names = c("ID_2", "NAME_2B", "code", "dp2011"), row.names = c(NA, 
-52L), class = "data.frame"))
Keniajin
  • 1,649
  • 2
  • 20
  • 43
  • The call to `bayesx()` gives me, after a few seconds `"an error occurred during runtime of BayesX, please check the BayesX logfile!`" but no clue where the logfile is. – Spacedman Oct 27 '16 at 07:29
  • This command helps to get the log file `log <- bayesx_logfile(za )` . I realised the shape file from http://biogeo.ucdavis.edu/data/gadm2.8/shp/ZAF_adm_shp.zip had an issue. I changed it and it just worked – Keniajin Oct 27 '16 at 10:34

0 Answers0