Anda di halaman 1dari 24

Analisis Data Spasial

Annebel Diestya Clarissa - G1501202075

3/16/2021

Contents
1 Data Spasial 1
1.1 Jenis Data Spasial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Tipe Data Spasial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Package yang Digunakan 2

3 Input Data 2
3.1 Impor dataset dari R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.2 Input Data External . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.3 Input data dari Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

4 Plotting Data 5
4.1 Menampilkan Peta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.2 Menampilkan Data pada peta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
4.3 Menambahkan atribut-atribut dalam peta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

5 Pembobot Spasial 12
5.1 Pembobot Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.2 Pembobot Titik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1 Data Spasial

1.1 Jenis Data Spasial

1. Data Titik (Point Pattern) : Lokasi suatu kejadian, contoh : lokasi pohon di hutan, lokasi sarang
burung pada pohon
2. Data Kontinu (Continuous Data) : Kejadian yang bersifat kontinu dalam suatu ruang, contoh : pola
curah hujan, pola salinitas air tanah, dll

3. Data Area : Kejadian dipisahkan dalam zona, contoh : kepadatan penduduk kabupaten/kota, dll.

1
1.2 Tipe Data Spasial
1. Data Vector
Data vektor adalah data yang direpresentasikan sebagai suatu mosaik berupa garis (arc/line), polygon
(daerah yang dibatasi oleh garis yang berawal dan berakhir pada titik yang sama), titik/point (node yang
mempunyai label), dan nodes (merupakan titik perpotongan antara dua buah garis).
Kegunaan Data Vektor untuk analisa yang membutuhkan ketepatan posisi, misalnya pada basis data batas-
batas kadaster. Contoh penggunaan lainnya adalah untuk mendefinisikan hubungan spasial dari beberapa
fitur.
Keuntungan : ketepatan dalam merepresentasikan fitur titik, batasan dan garis lurus.
Kelemahan : ketidakmampuannya dalam mengakomodasi perubahan gradual.
2. Data Raster
Data raster adalah data yang sering dihasilkan dari penginderaan jauh. Data Raster sering disebut juga
dengan sel grid. Pada data raster, obyek geografis direpresentasikan sebagai struktur sel grid yang
disebut dengan pixel (picture element).
Pada data raster, resolusi (definisi visual) tergantung pada ukuran pixel-nya. Dengan kata lain, resolusi
pixel menggambarkan ukuran sebenarnya di permukaan bumi yang diwakili oleh setiap pixel pada citra.
Semakin kecil ukuran permukaan bumi yang direpresentasikan oleh satu sel, semakin tinggi resolusinya.
Data raster sangat baik untuk merepresentasikan batas-batas yang berubah secara gradual, seperti
jenis tanah, kelembaban tanah, vegetasi, suhu tanah, dan sebagainya.
Kelemahan : besarnya ukuran file, semakin tinggi resolusi grid-nya semakin besar pula ukuran filenya.

Masing-masing format data mempunyai kelebihan dan kekurangan. Pemilihan format data yang digunakan
sangat tergantung pada tujuan penggunaan, data yang tersedia, volume data yang dihasilkan, ketelitian
yang diinginkan, serta kemudahan dalam analisa.
Data vektor relatif lebih ekonomis dalam hal ukuran file dan presisi dalam lokasi, tetapi sangat sulit untuk
digunakan dalam komputasi matematik.
Sebaliknya, data raster biasanya membutuhkan ruang penyimpanan file yang lebih besar dan presisi lokasinya
lebih rendah, tetapi lebih mudah digunakan secara matematis.

2 Package yang Digunakan


Package yang diperlukan untuk analisis spasial adalah

library(sp)
library(rgdal)
library(spData)
library(readxl)
library(raster)
library(spdep)

3 Input Data
Input data yang akan digunakan di R dapat dilakukan dengan beberapa cara :

2
3.1 Impor dataset dari R

R telah menyediakan data set yang dapat digunakan dalam package dataset yang dapat diakses dengan
dataset:: atau dataset yang tersedia dalam package.
Berikut akan diinput data Colombus dari package spData. Cara memanggil data columbus ini adalah

data(columbus)

Untuk mengecek struktur dari data dapat digunakan fungsi str()

str(columbus)

## ’data.frame’: 49 obs. of 22 variables:


## $ AREA : num 0.3094 0.2593 0.1925 0.0838 0.4889 ...
## $ PERIMETER : num 2.44 2.24 2.19 1.43 3 ...
## $ COLUMBUS. : int 2 3 4 5 6 7 8 9 10 11 ...
## $ COLUMBUS.I: int 5 1 6 2 7 8 4 3 18 10 ...
## $ POLYID : int 1 2 3 4 5 6 7 8 9 10 ...
## $ NEIG : int 5 1 6 2 7 8 4 3 18 10 ...
## $ HOVAL : num 80.5 44.6 26.4 33.2 23.2 ...
## $ INC : num 19.53 21.23 15.96 4.48 11.25 ...
## $ CRIME : num 15.7 18.8 30.6 32.4 50.7 ...
## $ OPEN : num 2.851 5.297 4.535 0.394 0.406 ...
## $ PLUMB : num 0.217 0.321 0.374 1.187 0.625 ...
## $ DISCBD : num 5.03 4.27 3.89 3.7 2.83 3.78 2.74 2.89 3.17 4.33 ...
## $ X : num 38.8 35.6 39.8 36.5 40 ...
## $ Y : num 44.1 42.4 41.2 40.5 38 ...
## $ AREA : num 10.39 8.62 6.98 2.91 16.83 ...
## $ NSA : num 1 1 1 1 1 1 1 1 1 1 ...
## $ NSB : num 1 1 1 1 1 1 1 1 1 1 ...
## $ EW : num 1 0 1 0 1 1 0 0 1 1 ...
## $ CP : num 0 0 0 0 0 0 0 0 0 0 ...
## $ THOUS : num 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 ...
## $ NEIGNO : num 1005 1001 1006 1002 1007 ...
## $ PERIM : num 2.44 2.24 2.19 1.43 3 ...

Dilihat dari struktur data columbus memiliki 49 observasi dan 22 variabel. List yang ditandai dengan awalan
$ adalah masing-masing variabel yang ada dan diikuti dengan tipe data dan awalan dari data pada variabel.
Misal : dalam data columbus terdapat variabel bernama AREA yang bertipeNUMERIC dan data yang ada pada
variabel AREA adalah 0.3094, 0.2593, dan seterusnya sampai dengan 49 data.
Untuk mengetahui deskripsi dari data dapat digunakan help()

help(columbus)

The columbus data frame has 49 rows and 22 columns. Unit of analysis: 49 neighbourhoods
in Columbus, OH, 1980 data. In addition the data set includes a polylist object polys with
the boundaries of the neighbourhoods, a matrix of polygon centroids coords, and col.gal.nb, the
neighbours list from an original GAL-format file. The matrix bbs is DEPRECATED, but retained
for other packages using this data set.

3
Usage columbus
Format This data frame contains the following columns:
AREA computed by ArcView
PERIMETER computed by ArcView
COLUMBUS_ internal polygon ID (ignore)
COLUMBUS_I another internal polygon ID (ignore)
POLYID yet another polygon ID
NEIG neighborhood id value (1-49); conforms to id value used in Spatial Econometrics book.
HOVAL housing value (in $1,000)
INC household income (in $1,000)
CRIME residential burglaries and vehicle thefts per thousand households in the neighborhood
OPEN open space in neighborhood
PLUMB percentage housing units without plumbing
DISCBD distance to CBD
X x coordinate (in arbitrary digitizing units, not polygon coordinates)
Y y coordinate (in arbitrary digitizing units, not polygon coordinates)
NSA north-south dummy (North=1)
NSB north-south dummy (North=1)
EW east-west dummy (East=1)
CP core-periphery dummy (Core=1)
THOUS constant=1,000
NEIGNO NEIG+1,000, alternative neighborhood id value

3.2 Input Data External

Dapat juga kita menggunakan data yang sudah tersimpan dalam penyimpanan kita. File yang digunakan
dapat berupa file .xlsx atau file .csv. Cara yang digunakan adalah dengan menggunakan fungsi read_excel
atau read_csv dalam library(readxl). Contoh penggunaan nya adalah :

setwd("D:\\") #setting working directory sampai dengan folder dimana file berada

data.giziburuk <- read_excel("D:\\data giziburuk jabar.xlsx", sheet="Sheet1")

Untuk melihat dimensi, struktur, dan data dari datagiziburuk dapat menggunakan syntax

dim(data.giziburuk)

## [1] 27 5

str(data.giziburuk)

4
## tibble [27 x 5] (S3: tbl_df/tbl/data.frame)
## $ kode kabko: num [1:27] 3201 3202 3203 3204 3205 ...
## $ KABKOT : chr [1:27] "BOGOR" "SUKABUMI" "CIANJUR" "BANDUNG" ...
## $ Giziburuk : num [1:27] 211 117 133 186 132 110 104 111 159 129 ...
## $ Long : num [1:27] 107 107 107 108 108 ...
## $ Lat : num [1:27] -6.54 -7.07 -7.05 -7.07 -7.34 ...

head(data.giziburuk)

## # A tibble: 6 x 5
## ‘kode kabko‘ KABKOT Giziburuk Long Lat
## <dbl> <chr> <dbl> <dbl> <dbl>
## 1 3201 BOGOR 211 107. -6.54
## 2 3202 SUKABUMI 117 107. -7.07
## 3 3203 CIANJUR 133 107. -7.05
## 4 3204 BANDUNG 186 108. -7.07
## 5 3205 GARUT 132 108. -7.34
## 6 3206 TASIKMALAYA 110 108. -7.43

Dapat dilihat bahwa data gizi buruk memiliki 27 observasi dan 5 variabel. Variabel-variabel tersebut adalah
kode kabkot, KABKOT, Giziburuk, Long, dan Lat.

3.3 Input data dari Web

Jika data belum tersimpan atau terdownload dalam pc, dapat dilakukan input data langsung dari web yang
memuat data. Contohnya dengan

data_house <- read.csv("https://raw.githubusercontent.com/


gerrydito/Sains-Data-S2/master/Praktikum/Visualisasi%20Data/
house_price.csv", header= TRUE, sep=",")

4 Plotting Data
Membuat plot di R dapat digunakan dengan banyak cara. Dapat menggunakan base plot atau bisa juga
menggunakan levelplot seperti fungsi spplot.
Untuk membuat peta, diperlukan Shape File. Shape file adalah file yang memiliki informasi geografis
dan merupakan penyimpanan vektor digital untuk menyimpan lokasi geometris dan informasi atribut.
Suatu shape file minimal harus memiliki 3 file wajib yaitu :
• .shp: format bentuk; fitur geometri itu sendiri
• .shx: format indeks bentuk; indeks posisi dari geometri fitur untuk memungkinkan pencarian maju dan
mundur dengan cepat
• .dbf: format atribut; atribut kolom untuk setiap bentuk, dalam format dBase IV.

5
4.1 Menampilkan Peta

4.1.1 Menampilkan peta dari file shp bawaan R

Untuk menampilkan peta dengan membaca file shp, digunakan fungsi readOGR dalam package rgdal.
Berikut akan dicontohkan cara menampilkan peta dari file yang ada di dalam data columbus

columbusmap<-readOGR(system.file("shapes/columbus.shp", package="spData"))

## OGR data source with driver: ESRI Shapefile


## Source: "C:\Users\lenovo\Documents\R\win-library\4.0\spData\shapes\columbus.shp", layer: "columbus"
## with 49 features
## It has 20 fields
## Integer64 fields read as strings: COLUMBUS_ COLUMBUS_I POLYID

plot(columbusmap)

4.1.2 Menampilkan peta dari Shp external

Shp yang digunakan sebelumnya berasal dari data columbus yang ada dalam package spData. Selanjutnya
akan dibuat peta dari file external.
File .shp, .shx, dan .dbf harus tersimpan dalam 1 folder dengan nama yang sama. Selanjutnya folder
tersebut dapat diakses dengan atribut dsn dalam fungsi readOGR()

6
jabar <- readOGR(dsn="D:\\petajabar27", layer="Peta Jabar 27")

## OGR data source with driver: ESRI Shapefile


## Source: "D:\petajabar27", layer: "Peta Jabar 27"
## with 27 features
## It has 2 fields

plot(jabar)

4.2 Menampilkan Data pada peta

Untuk menampilkan data dalam peta digunakan fungsi spplot. Misalnya dari peta wilayah yang sudah kita
jalankan sebelumnya, ingin dilihat salah satu variabel yang ada dalam data colombus yaitu variabel HOVAL
(harga rumah dalam satuan $1,000).
Digunakan fungsi spplot dengan parameter peta wilayah yang telah dibuat dan nama variabel. Judul
peta dapat ditambahkan dengan menambah argumen sub="judul peta"

spplot(columbusmap,"HOVAL",sub="Map of HOVAL")

7
100

90

80

70

60

50

40

30

20

Map of HOVAL

Contoh selanjutnya, misalnya kita ingin melihat pendapatan rumah tangga yang ada dalam variabel INC
maka dapat menggunakan syntax

spplot(columbusmap,"INC",sub="Map of INC")

8
30

25

20

15

10

Map of INC

4.3 Menambahkan atribut-atribut dalam peta

Untuk menambahkan atribut dalam peta digunakan package raster

4.3.1 Menambahkan Text

Untuk menambahkan text, misalnya nama kabupaten/kota dalam peta digunakan fungsi text. Berikut
adalah parameter yang digunakan

• nama peta : digunakan peta jabar yang sudah dibuat sebelumnya

• text yang ingin ditampilkan : berisi nama kolom/variabel yang akan ditampilkan, dalam hal ini karena
akan ditampilkan nama kabkot dalam peta, maka dipilih kolom/variabel KABKOT

• cex : cex digunakan untuk mengatur besar kecilnya text.

plot(jabar) #plot peta yang akan digunakan


text(jabar,’KABKOT’,cex=0.3) #menampilkan nama kabkot

9
BEKASI
KARAWANG
KOTA BEKASI

KOTA DEPOK
INDRAMAYU
SUBANG
BOGOR
KOTA BOGOR PURWAKARTA

KOTA CIREBON
CIREBON
SUMEDANG MAJALENGKA
KOTA
BANDUNG CIMAHI
BARAT
KOTA SUKABUMI KOTA BANDUNG
KUNINGAN
SUKABUMI
BANDUNG
CIANJUR

CIAMIS
GARUT KOTA TASIKMALAYAKOTA BANJAR

TASIKMALAYA

PANGANDARAN

4.3.2 Memberi warna peta

Pemberian waran pada peta dapat dilakukan dengan menggunakan fungsi pallete. Pada contoh, akan digu-
nakan warna rainbow. Warna rainbow akan memberikan gradasi warna dari merah ke ungu yag jumlahnya
sesuai dengan parameter yang dimasukkan.
Misal : rainbow (10) artinya akan dibuat 10 gradasi warna antara merah sampai ke ungu.
Pembedaan warna dapat disesuaikan dengan variabel yang kita inginkan. Misal, kita ingin warna yang
berbeda tiap IDKAB2 maka pada parameter col= dituliskan variabel jabar$IDKAB2

palette(rainbow(10))
plot(jabar,col=jabar$IDKAB2)
text(jabar,’KABKOT’,cex=0.3)

10
BEKASI
KARAWANG
KOTA BEKASI

KOTA DEPOK
INDRAMAYU
SUBANG
BOGOR
KOTA BOGOR PURWAKARTA

KOTA CIREBON
CIREBON
SUMEDANG MAJALENGKA
KOTA
BANDUNG CIMAHI
BARAT
KOTA SUKABUMI KOTA BANDUNG
KUNINGAN
SUKABUMI
BANDUNG
CIANJUR

CIAMIS
GARUT KOTA TASIKMALAYAKOTA BANJAR

TASIKMALAYA

PANGANDARAN

4.3.3 Memasukkan data dalam peta

Jika sebelumnya pewarnaan hanya berdasar IDKAB, maka selanjutnya pewarnaan akan berdasar dari data
yang ada.
Misalnya kita akan mengelompokkan daerah berdasarkan kondisi gizi buruk yang ada di kolom
Giziburuk. Akan dibedakan menjadi 3 kelompok, yang masing-masing kelompok memiliki warna
hijau-kuning-merah sesuai dengan keadaan Giziburuk.
Maka dapat digunakan syntax

colfunc <- colorRampPalette(c("green", "yellow","red")) #setting warna

jabar$gizi<-data.giziburuk$Giziburuk #data yang dipakai

spplot(jabar, "gizi", col.regions=colfunc(6), cuts = 5, main="Peta Sebaran") #membuat plot dengan data d

11
Peta Sebaran

300

250

200

150

100

5 Pembobot Spasial
Berikut adalah ilustrasi tentang pembobot spasial

Pembobot spasial dibagi menjadi 2 yaitu area dan titik.

12
• Untuk pembobot area digunakan konsep ketetanggan dengan metode bishop, rook, atau queen
• Untuk pembobot titik, digunakan konsep jarak dengan metode K-nn, inverse, atau eksponential.

Package yang digunakan adalah spdep.

5.1 Pembobot Area

5.1.1 Metode Queen

Berikut akan dicontohkan pembobot area dengan konsep ketetanggaan menggunakan fungsi poly2nb. Data
yang digunakan adalah data columbus. Dan metode yang digunakan adalah metode queen

columbus.map<-st_read(system.file("shapes/columbus.shp", package="spData"), quiet=TRUE)


queen.w<-poly2nb(as(columbus.map, "Spatial"),queen = TRUE)
summary(queen.w)

## Neighbour list object:


## Number of regions: 49
## Number of nonzero links: 236
## Percentage nonzero weights: 9.829238
## Average number of links: 4.816327
## Link number distribution:
##
## 2 3 4 5 6 7 8 9 10
## 5 9 12 5 9 3 4 1 1
## 5 least connected regions:
## 1 6 42 46 47 with 2 links
## 1 most connected region:
## 20 with 10 links

Berikut adalah hubungan ketetanggan antar n pengamatan :

queen.w1<-nb2mat(queen.w,style= "B")
head(queen.w1)

## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14]
## 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0
## 2 1 0 1 1 0 0 0 0 0 0 0 0 0 0
## 3 1 1 0 1 1 0 0 0 0 0 0 0 0 0
## 4 0 1 1 0 1 0 0 1 0 0 0 0 0 0
## 5 0 0 1 1 0 1 0 1 1 0 1 0 0 0
## 6 0 0 0 0 1 0 0 0 1 0 0 0 0 0
## [,15] [,16] [,17] [,18] [,19] [,20] [,21] [,22] [,23] [,24] [,25] [,26] [,27]
## 1 0 0 0 0 0 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0 0 0 0 0 0
## 5 1 1 0 0 0 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0 0 0 0 0 0
## [,28] [,29] [,30] [,31] [,32] [,33] [,34] [,35] [,36] [,37] [,38] [,39] [,40]
## 1 0 0 0 0 0 0 0 0 0 0 0 0 0

13
## 2 0 0 0 0 0 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0 0 0 0 0 0
## [,41] [,42] [,43] [,44] [,45] [,46] [,47] [,48] [,49]
## 1 0 0 0 0 0 0 0 0 0
## 2 0 0 0 0 0 0 0 0 0
## 3 0 0 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0 0

Selanjutnya akan di plot hubungan dengan menggunakan polygon :

plot(st_geometry(columbus.map), border="white",col=’gray’)
coords<-st_coordinates(st_centroid(st_geometry(columbus.map)))
plot(queen.w, coords, add = TRUE, col = "red")

5.1.2 Metode Rook

Selanjutnya akan digunakan data yang sama untuk pembobotan area dan konsep ketetanggaan dengan
metode Rook.

14
Perbedaannya pada parameter queen dipilih pilihan FALSE

rook.w<-poly2nb(as(columbus.map, "Spatial"), queen=FALSE)


plot(st_geometry(columbus.map), border="white",col=’gray’)
coords<-st_coordinates(st_centroid(st_geometry(columbus.map)))
plot(rook.w, coords, add = TRUE, col = "red")

Selanjutnya akan digabungkan plot dengan metode queen dan rook

plot(st_geometry(columbus.map), border="white",col=’grey’)

plot(queen.w, coords, add = TRUE, col = "red") #queen

plot(rook.w, coords, add = TRUE, col = "blue") #rook

15
5.2 Pembobot Titik

Akan dibuat pembobot titik dengan konsep jarak.


Langkah-langkahnya adalah :

1. Ekstrak koordinat

2. Membuat matriks berisi penimbang spasial

coordinates(columbus)<-~X+Y #x=long; y=lat

D<-as.matrix(dist(coordinates(columbus),method="euclidean"))

head (D)

## 1005 1001 1006 1002 1007 1008 1004 1003


## 1005 0.000000 3.601180 3.064719 4.229952 6.189426 6.888151 7.850425 5.753061
## 1001 3.601180 0.000000 4.368067 2.057670 6.201331 8.700973 4.568205 3.828448
## 1006 3.064719 4.368067 0.000000 3.384967 3.185671 4.365192 7.028833 3.971525
## 1002 4.229952 2.057670 3.384967 0.000000 4.320936 7.355277 3.783080 1.822142
## 1007 6.189426 6.201331 3.185671 4.320936 0.000000 3.952975 6.662624 3.375514
## 1008 6.888151 8.700973 4.365192 7.355277 3.952975 0.000000 10.426360 7.063039
## 1018 1010 1038 1037 1039 1040 1009 1036
## 1005 9.378280 11.667848 7.827862 8.123510 8.182381 9.012620 9.195744 10.061812

16
## 1001 10.143177 13.389615 6.476057 6.439544 5.989098 6.780740 8.468827 8.532900
## 1006 6.385297 9.129169 5.262634 5.730594 6.150225 6.924335 6.273516 7.438977
## 1002 8.326080 11.842387 4.430677 4.444875 4.156547 4.981447 6.414375 6.533266
## 1007 4.011398 7.762503 2.748746 3.439300 4.363894 4.915698 3.115782 4.601574
## 1008 3.374271 4.804083 6.609873 7.335529 8.314708 8.833079 6.019675 8.053725
## 1011 1042 1041 1017 1043 1019 1012
## 1005 13.711330 10.490235 9.888868 14.517249 14.443022 11.552360 15.724901
## 1001 15.188420 8.476589 7.721270 15.266075 12.058740 11.816469 17.040922
## 1006 11.040654 8.134895 7.680756 11.562050 12.195293 8.497112 12.984798
## 1002 13.514809 6.609276 5.906539 13.371051 10.385875 9.850914 15.290814
## 1007 9.272355 5.616581 5.405377 9.068987 9.623994 5.648116 10.990111
## 1008 6.823586 9.299977 9.229546 7.949672 13.115199 5.832392 8.848529
## 1035 1032 1020 1021 1031 1033 1034
## 1005 12.180329 11.204003 11.175591 13.482362 13.407051 13.461476 13.729476
## 1001 10.336562 10.209682 10.758148 13.615500 12.812749 12.435339 12.322736
## 1006 9.643470 8.312736 8.146025 10.423137 10.387420 10.540475 10.937541
## 1002 8.430593 8.157769 8.712137 11.614241 10.755487 10.391479 10.326326
## 1007 6.823210 5.161093 4.987386 7.507044 7.218034 7.365712 7.840975
## 1008 10.139951 7.760932 6.675627 7.672605 8.728000 9.533651 10.466923
## 1045 1013 1022 1044 1023 1046 1030 1024
## 1005 17.89268 18.12241 14.661476 17.94064 15.67553 19.60817 15.257552 15.453209
## 1001 14.69637 19.11704 14.677561 15.08192 15.47664 16.44723 13.826194 14.640233
## 1006 16.41655 15.26096 11.598568 16.03672 12.61168 18.04781 12.450687 12.459871
## 1002 13.67927 17.25701 12.656001 13.72953 13.43263 15.38600 11.840709 12.587263
## 1007 14.56390 12.94056 8.630649 13.73913 9.56078 16.06710 9.334264 9.277353
## 1008 18.40872 11.32460 8.886894 17.37254 10.10012 19.85284 11.785435 10.844079
## 1047 1016 1014 1049 1029 1025 1028 1048
## 1005 22.66643 18.79971 20.48088 20.03867 16.73740 17.33559 18.22742 22.68873
## 1001 19.37661 19.31722 21.36729 17.12308 15.86295 16.88245 16.93904 19.51695
## 1006 21.26934 15.80718 17.59093 18.16040 13.74878 14.28303 15.33815 21.10079
## 1002 18.47516 17.35142 19.46962 15.82005 13.81481 14.82555 14.93858 18.46611
## 1007 19.39829 13.13278 15.17079 15.84918 10.56534 11.16443 12.16958 19.03827
## 1008 23.21116 12.28082 13.70732 19.44898 12.08634 11.98129 14.14177 22.76628
## 1015 1027 1026
## 1005 22.37715 18.32913 19.49792
## 1001 22.95545 17.40226 18.79252
## 1006 19.40692 15.34309 16.46848
## 1002 20.98929 15.35996 16.73865
## 1007 16.76878 12.15936 13.30854
## 1008 15.75123 13.61896 14.36067

5.2.1 Metode K-nn (K Nearest Neighbor Weights)

K-nearest neighbors atau knn adalah algoritma yang berfungsi untuk melakukan klasifikasi suatu data
berdasarkan data pembelajaran (train data sets), yang diambil dari k tetangga terdekatnya (nearest
neighbors). Dengan k merupakan banyaknya tetangga terdekat.
K-nn dengan 1-nn

#K-nn
w3<-knearneigh(coordinates(columbus), k=1, longlat= TRUE)
knn.w<-nb2listw(knn2nb(w3))
summary(knn.w)

17
## Characteristics of weights list object:
## Neighbour list object:
## Number of regions: 49
## Number of nonzero links: 49
## Percentage nonzero weights: 2.040816
## Average number of links: 1
## Non-symmetric neighbours list
## Link number distribution:
##
## 1
## 49
## 49 least connected regions:
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
## 49 most connected regions:
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
##
## Weights style: W
## Weights constants summary:
## n nn S0 S1 S2
## W 49 2401 49 75 232

Plot K-nn dengan 1-nn

plot(st_geometry(columbus.map), border="white",col=’gray’, sub="1-nn")


plot(knn.w, coords, add = TRUE, col = "red")

1−nn

18
K-nn dengan 2-nn

w2=knearneigh(coords, k=2)
knn.w2=nb2listw(knn2nb(w2))
summary(knn.w2)

## Characteristics of weights list object:


## Neighbour list object:
## Number of regions: 49
## Number of nonzero links: 98
## Percentage nonzero weights: 4.081633
## Average number of links: 2
## Non-symmetric neighbours list
## Link number distribution:
##
## 2
## 49
## 49 least connected regions:
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
## 49 most connected regions:
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
##
## Weights style: W
## Weights constants summary:
## n nn S0 S1 S2
## W 49 2401 49 42.5 208.5

Plot K-nn dengan 2-nn

plot(st_geometry(columbus.map), border="white",col=’gray’, sub="2-nn")


plot(knn.w2, coords, add = TRUE, col = "red")

19
2−nn

5.2.2 Metode Inverse Distance Weights

Metode Inverse Distance Weights adalah salah satu metode interpolasi untuk menaksir suatu nilai
pada lokasi yang tidak tersampel berdasarkan data disekitarnya. Metode ini sering digunakan dalam
kegiatan eksplorasi karena dalam proses perhitungannya lebih sederhana dan mudah dipahami.
Metode invers distance weights sama dengan metode double power distance weight dengan alpha=1

#inverse weight matrix


w<-1/D

#row-normalized
diag(w)<-0
rtot<-rowSums(w, na.rm =T)
w_std<-w/rtot
rowSums(w_std, na.rm=T)

## 1005 1001 1006 1002 1007 1008 1004 1003 1018 1010 1038 1037 1039 1040 1009 1036
## 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 1011 1042 1041 1017 1043 1019 1012 1035 1032 1020 1021 1031 1033 1034 1045 1013
## 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 1022 1044 1023 1046 1030 1024 1047 1016 1014 1049 1029 1025 1028 1048 1015 1027
## 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 1026
## 1

20
invers.w<-mat2listw(w_std, style="W")
summary(invers.w)

## Characteristics of weights list object:


## Neighbour list object:
## Number of regions: 49
## Number of nonzero links: 2352
## Percentage nonzero weights: 97.95918
## Average number of links: 48
## Link number distribution:
##
## 48
## 49
## 49 least connected regions:
## 1005 1001 1006 1002 1007 1008 1004 1003 1018 1010 1038 1037 1039 1040 1009 1036 1011 1042 1041 1017 1
## 49 most connected regions:
## 1005 1001 1006 1002 1007 1008 1004 1003 1018 1010 1038 1037 1039 1040 1009 1036 1011 1042 1041 1017 1
##
## Weights style: W
## Weights constants summary:
## n nn S0 S1 S2
## W 49 2401 49 3.256803 197.9015

Membuat plot Inverse Distance Weights

plot(st_geometry(columbus.map), border="white",col="gray", sub="Inverse Distance")


plot(invers.w, coords, add = TRUE, col = "red")

21
Inverse Distance

5.2.3 Metode Exponential Distance Weights

#Eksponential
alpha<-2
w2<-exp(-alpha*D)
diag(w2)<-0
rtot<-rowSums(w2, na.rm =T)
rtot

## 1005 1001 1006 1002 1007 1008


## 0.003150253 0.017823292 0.005763766 0.045100893 0.011300088 0.001792430
## 1004 1003 1018 1010 1038 1037
## 0.004261037 0.049090821 0.010424809 0.013234614 0.300765245 0.417464829
## 1039 1040 1009 1036 1011 1042
## 0.350515673 0.444919714 0.059724386 0.153617820 0.030111304 0.316560932
## 1041 1017 1043 1019 1012 1035
## 0.420307425 0.012134291 0.003374524 0.043723238 0.022265122 0.055995129
## 1032 1020 1021 1031 1033 1034
## 0.084148018 0.066912227 0.126129961 0.085267602 0.131871874 0.118723352
## 1045 1013 1022 1044 1023 1046
## 0.033336811 0.018316285 0.175084301 0.019984866 0.116094481 0.042800517
## 1030 1024 1047 1016 1014 1049
## 0.067440873 0.121961269 0.045022278 0.010368792 0.017752766 0.024420349
## 1029 1025 1028 1048 1015 1027

22
## 0.147947913 0.057594408 0.035246053 0.046590528 0.006467291 0.106080820
## 1026
## 0.042992874

w_std<-w2/rtot
rowSums(w_std, na.rm=T)

## 1005 1001 1006 1002 1007 1008 1004 1003 1018 1010 1038 1037 1039 1040 1009 1036
## 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 1011 1042 1041 1017 1043 1019 1012 1035 1032 1020 1021 1031 1033 1034 1045 1013
## 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 1022 1044 1023 1046 1030 1024 1047 1016 1014 1049 1029 1025 1028 1048 1015 1027
## 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## 1026
## 1

eksp.w=mat2listw(w_std, style="W")
summary(eksp.w)

## Characteristics of weights list object:


## Neighbour list object:
## Number of regions: 49
## Number of nonzero links: 2352
## Percentage nonzero weights: 97.95918
## Average number of links: 48
## Link number distribution:
##
## 48
## 49
## 49 least connected regions:
## 1005 1001 1006 1002 1007 1008 1004 1003 1018 1010 1038 1037 1039 1040 1009 1036 1011 1042 1041 1017 1
## 49 most connected regions:
## 1005 1001 1006 1002 1007 1008 1004 1003 1018 1010 1038 1037 1039 1040 1009 1036 1011 1042 1041 1017 1
##
## Weights style: W
## Weights constants summary:
## n nn S0 S1 S2
## W 49 2401 49 38.80069 206.8219

Membuat plot Exponential Distance Weights

plot(st_geometry(columbus.map), border="white",col=’gray’, sub="Eksponential Distance Weights")


plot(eksp.w, coords, add = TRUE, col = "red")

23
Eksponential Distance Weights

24

Anda mungkin juga menyukai