У меня есть фрейм данных, в котором есть информация о преступлениях (переменная x), а также широта и долгота, где произошло это преступление.У меня есть файл формы с районами из города Сан-Паулу.Это:делать:
sf_df = st_as_sf(df, coords = c("longitude", "latitude"), crs = 4326)
shape_df<-st_join(sp.dist.sf, sf_df, join=st_contains)
Моя конечная цель - реализовать локальную статистику moran i, и я пытаюсь сделать это с помощью:
sp_viz <- poly2nb(shape_df, row.names = shape_df$NOME_DIST)
xy <- st_coordinates(shape_df)
ww <- nb2listw(sp_viz, style ='W', zero.policy = TRUE)
shape_df[is.na(shape_df)] <- 0
locMoran <- localmoran(shape_df$n_homdol, ww)
sids.shade <- auto.shading(c(locMoran[,1],-locMoran[,1]),
cols=brewer.pal(5,"PRGn"))
choropleth(shape_df, locMoran[,1], shading=sids.shade)
choro.legend(-46.5, -20, sids.shade,fmt="%6.2f")
title("Criminalidade (Local Moran's I)",cex.main=2)
Но когда я запускаю код, онНа это уходит несколько часов:
sp_viz <- poly2nb(shape_df, row.names = shape_df$NOME_DIST)
У меня 15 000 наблюдений за 93 районами.Я попытался запустить приведенный выше код только с 100 наблюдениями, и это было быстро, и все прошло хорошо.Но с 15 000 наблюдений я не увидел результат, потому что вычисление продолжается вечно.Что может происходить?Я делаю что-то не так?Есть ли лучший способ сделать этот Местный Моран, который я тестирую?