Slide 1

Slide 1 text

ɹΛ࢖ͬͨ Φʔϓϯ஍ཧۭؒ৘ใσʔλͷ׆༻ '044(๺ւಓίΞσΠ ӝੜਅ໵!V@SJCP גࣜձࣾφΠτϨΠ 20170701

Slide 2

Slide 2 text

2ʮ஍ཧۭؒσʔλʯͷॲཧͰ ɹΛར༻͠·͔͢

Slide 3

Slide 3 text

ҙ֎ͱଟ͍ ώοτ͠΍͢͞΋͋Δ

Slide 4

Slide 4 text

1ZUIPO͸(*4ΞϓϦέʔγϣϯͱ ૬ੑ͕ྑ͍ w 2(*4ͷϓϥάΠϯ͸1ZUIPOͰॻ͔ΕΔ w δΦϓϩηγϯάͱͯ͠ͷ"SD1Z 揺るぎない⽴場? ʜͦΕɺͰ΋Ͱ͖ΔΑ '044()0,,"*%0ͷςʔϚ ʮ3FQSPKFDUJPOʮ͜Ε·Ͱʯ͔Βɺʮ৽͍͠ࢹ఺ʯ΁ɻʯ ԿͰ΋͔ΜͰ΋3Ͱ΍Γͨ͘ͳͬͯ͠·͏ͷ͕3͓͡͞ΜͷੑͳͷͰ͢

Slide 5

Slide 5 text

ࣗݾ঺հ wӝੜਅ໵ 6SZV4IJOZB !V@SJCP wגࣜձࣾφΠτϨΠ wIUUQOJHIUMFZKQ ΤϯδχΞ wੜଶֶҐஔ৘ใσʔλͷղੳ w޷͖ͳωλ݀ࢠɺḉ w3͓͡͞Μ

Slide 6

Slide 6 text

φΠτϨΠʹ͓͚ΔΦʔϓϯσʔλͷ׆༻ ๚೔֎ࠃਓಈ޲෼ੳαʔϏε*OCPVOE*OTJHIU IUUQJOCPVOEOJHIUMFZKQ

Slide 7

Slide 7 text

φΠτϨΠʹ͓͚ΔΦʔϓϯσʔλͷ׆༻ 4/4౤ߘͷʮࢪઃνΣοΫΠϯʯͰ0QFO4USFFU.BQͷ10*σʔλΛҰ෦ࢀর ਓؾࢪઃϥϯΩϯά ࢪઃपลͷ౤ߘදࣔ

Slide 8

Slide 8 text

վΊͯɺͱ͸Կ͔ The best thing about R is that it was written by statisticians. The worst thing about R is that it was written by statisticians. - http://blog.revolutionanalytics.com/2015/06/why-has-r-been-so-successful.html ౷ܭղੳ͕ಘҙͳΦʔϓϯιʔεͷπʔϧ ݴޠ ࡞ਤɺػցֶशɺ΢ΣϒΞϓϦέʔγϣϯ։ൃ·Ͱ෯޿͘ѻ͏ wIUNMXJEHFUT IUUQXXXIUNMXJEHFUTPSH +BWB4DSJQUϥΠϒϥϦͷҠ২ w4IJOZ IUUQTIJOZSTUVEJPDPN ΢ΣϒΞϓϦέʔγϣϯϑϨʔϜϫʔΫ ػೳ֦ு ύοέʔδ ϥΠϒϥϦ ͷಋೖʹΑΓɺ࣮ߦՄೳͳྖҬ͕޿͕Δ

Slide 9

Slide 9 text

஍ཧۭؒ৘ใͷॲཧͰΛ࢖͏͜ͱͷར఺ͱܽ఺ wσʔλͷಡΈࠐΈ͔Βલॲཧɺ⚗ղੳɺϨϙʔτ΍ਤͷग़ྗ·Ͱ wδΦϓϩηγϯά ࣮ߦ଎౓͕஗͍ɺϝϞϦͷ໰୊Λى͜͠΍͍͢ ύϑΥʔϚϯε 3 ͳʹͦΕ͓͍͍͠ͷ ஌໊౓ɺάάΓ΍͢͞ ࣮຿Ͱ͸ܟԕ͞Ε΍͍͢ σʔλ෼ੳͷҰ࿈ͷաఔΛ3಺Ͱ׬݁ ҙ֎ͱ ؆୯ ޙΖ޲͖ͳΠϝʔδΛ΋ͨΕ͕ͪ ☠ ☠

Slide 10

Slide 10 text

Αͬ͠Όૣ଎Ͱ஍ཧۭؒ৘ใσʔλͷ෼ੳ΍

Slide 11

Slide 11 text

᠘ σʔλ͕ͳ͍ σʔλ͕ར༻ͮ͠Β͍ ɹ ଟ༷ͳ஍ཧۭؒ৘ใσʔλͷϑΥʔϚοτɺωਃ͑ͤ͘Δɺ1%' Ͳ͏͢Ε͹ྑ͍͔Θ͔Βͳ͍

Slide 12

Slide 12 text

͓͡͞Μͷయܕతͳࢥߟ ʮʜͰͳΜͱ͔͠Α͏ʯ

Slide 13

Slide 13 text

஍ཧۭؒ৘ใσʔλΛѻ͏ɹɹύοέʔδ $3"/5BTL7JFX"OBMZTJTPG4QBUJBM%BUB IUUQTDSBOSQSPKFDUPSHWJFX4QBUJBM ར༻໨తʹԠͨ͡ओཁύοέʔδͷҰཡ ͷύοέʔδ wશൠʜTG TQBUTUBU NBQUPPMT wՄࢹԽUNBQ NBQWJFX HHNBQ wۭؒ౷ܭֶHTUBU TQEFQ TQ#BZFT wੜଶֶWFHBO BEF BEFIBCJUBU ʜ͸ओཁύοέʔδ UNBQύοέʔδͰ࡞ͬͨ২ੜਤ΋Ͳ͖ IUUQVSJCPIBUFOBCMPHDPNFOUSZ

Slide 14

Slide 14 text

஍ཧۭؒ৘ใσʔλΛѻ͏ɹɹύοέʔδ ࣌୅͸TGύοέʔδ TIBQFpMF 8,5 HFPKTPO 1PTUHSF42-ʜ ଟ༷ͳଟ༷ͳ஍ཧۭؒ৘ใσʔλʹରԠ ैདྷͷTQΫϥετͷޓ׵ɺEQMZSύοέʔδͱಉ࢓༷ͷσʔλૢ࡞ ৄࡉ͸ࡢ೔ͷϋϯζΦϯࢿྉΛ͝ཡ͍ͩ͘͞ IUUQTHJUIVCDPNVSJCPGPTTH@ILE@IBOETPO ⚠εϥΠυɺίʔυ͸ޙ΄Ͳ ׬શ൛ʹߋ৽͠·͢ એ఻

Slide 15

Slide 15 text

਎ۙͰར༻Մೳͳ஍ཧۭؒ৘ใσʔλ wࣗ෼Ͱ༻ҙ͢Δ ɹ(14 εϚʔτϑΥϯΞϓϦέʔγϣϯ͔Βͷ ɹσʔλग़ྗ w"1*ɺΦʔϓϯσʔλΛར༻͢Δ IUUQVSJCPIBUFOBCMPHDPNFOUSZ NPWFTͷϩάΛ"1*Ͱऔಘͯ͠ՄࢹԽ

Slide 16

Slide 16 text

Φʔϓϯσʔλ

Slide 17

Slide 17 text

FTUBUBQJύοέʔδF4UBU"1*Λ3͔Βར༻ 平成27年国勢調査 人口等基本集計 総務省統計局 library(estatapi) このサービスは、政府統計総合窓口(e-Stat)のAPI機能を使用していますが、 サービスの内容は国によって保証されたものではありません。 df.pops <- estat_getStatsData( appId = , statsDataId = "0003148500", cdCat01 = c("00710")) UBC@DPEF දষ߲໨ DBU@DPEF BSFB@DPEF ஍Ҭʢʣ ࣌ؒ࣠ ೥࣍ VOJU WBMVF ਓޱ શࠃ ೥ ਓ ਓޱ શࠃࢢ෦ ೥ ਓ ਓޱ શࠃ܊෦ ೥ ਓ

Slide 18

Slide 18 text

LPLVEPTVVDIJ ࠃ౔਺஋৘ใμ΢ϯϩʔυαʔϏε8FC"1*ϥούʔ library(kokudosuuchi) getKSJSummary() JEFOUJpFS UJUMF pFME pFME BSFB5ZQF " ࡾେ౎ࢢݍܭը۠Ҭ ੓ࡦ۠Ҭ େ౎ࢢݍ " ౎ࢢ஍Ҭ ࠃ౔ʢਫɾ౔஍ʣ ౔஍ར༻ " ࣗવެԂ஍Ҭ ஍Ҭ อޢอશ

Slide 19

Slide 19 text

# devtools.install_github("uribo/jpndistrict") 本パッケージが提供する行政区域データおよび市区町村役場データは 国土交通省国土政策局「国土数値情報(行政区域データ 平成27年4月1日時点のデータ)http://nlftp.mlit.go.jp/ksj/gml/ datalist/KsjTmplt-N03.html 」、「国土数値情報(市区町村役場データ 平成26年8月31日時点のデータ) http://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-P34.html」をもとに瓜生真也が編集・加工を行ったものです。 そのため、このデータを利用した二次著作物を作成する際は、国土数値情報の利用約款に準拠するものとします。 library(jpndistrict) (sp.df01 <- spdf_jpn_pref(admin_name = "北海道")) QSFG@OBNF DJUZ@OBNF@ DJUZ@OBNF DJUZ@OBNF@GVMM DJUZ@DPEF ๺ւಓ ࡳຈࢢ தԝ۠ ࡳຈࢢ தԝ۠ 1101 ๺ւಓ ࡳຈࢢ ๺۠ ࡳຈࢢ ๺۠ 1102 ๺ւಓ ࡳຈࢢ ౦۠ ࡳຈࢢ ౦۠ 1103 ๺ւಓ ࡳຈࢢ നੴ۠ ࡳຈࢢ നੴ۠ 1104 ๺ւಓ ࡳຈࢢ ๛ฏ۠ ࡳຈࢢ ๛ฏ۠ 1105 ฏ੒೥݄೔࣌఺ͷσʔλ IUUQOMGUQNMJUHPKQLTKHNMEBUBMJTU,TK5NQMU/IUNM KQOEJTUSJDUࠃ౔਺஋৘ใ ߦ੓۠Ҭσʔλ

Slide 20

Slide 20 text

FTUBUBQJͱKQOEJTUSJDUΛ૊Έ߹Θͤͯ library(tidyverse) library(sf) sf.pops <- sp.df01 %>% st_as_sf() %>% mutate(city_code = as.character(city_code)) %>% left_join(df.pops %>% filter(表章項目 == "人口"), by = c("city_code" = "area_code")) ggplot() + geom_sf(data = sf.pops, aes(fill = value)) + scale_fill_gradientn(colors = sf.colors(10))

Slide 21

Slide 21 text

΢ΣϒεΫϨΠϐϯά

Slide 22

Slide 22 text

IUUQXXXQSFGIPLLBJEPMHKQTTKTLPQFOEBUBPQFOEBUBIUN ๺ւಓΦʔϓϯσʔλΧλϩάͷ ϖʔδΛεΫϨΠϐϯά library(rvest) x <- read_html("http://www.pref.hokkaido.lg.jp/ss/jsk/opendata/opendata.htm") df.opd <- x %>% html_table(fill = TRUE) %>% .[[3]] x %>% html_nodes(css = '#open_data > tbody > tr:nth-child(222) > td:nth-child(3) > a') %>% html_text() # [1] "森林計画関係資料(GIS用データ)" (link.url <- x %>% html_nodes(css = '#open_data > tbody > tr:nth-child(222) > td:nth-child(3) > a') %>% html_attr(name = "href")) # [1] "http://www.pref.hokkaido.lg.jp/sr/srk/OPD.htm"

Slide 23

Slide 23 text

৿ྛܭըؔ܎ࢿྉͷར༻ # 森林に関するデータ df.forest <- readr::read_csv( "09留萌/留萌森林簿データ(コード置換版).csv", locale = readr::locale(encoding = "cp932")) df.rumoi <- read_sf("09留萌/09留萌_小班.shp") %>% select(KEYCODE, 市町村コー, 林班, 計画区コー, GISAREA, NO, LUX, ID, geometry) %>% filter(between(ID, 9010000001, 9010001000)) %>% st_simplify() %>% inner_join(df.forest, by = c("KEYCODE", "林班")) quartzFonts( HiraMaru = quartzFont(rep("HiraMaruProN-W4", 4))) theme_set( ggthemes::theme_map(base_size = 12, base_family = "HiraMaruProN-W4")) ggplot() + geom_sf(data = df.rumoi, aes(fill = 林種))

Slide 24

Slide 24 text

ɹͰ஍ཧۭؒॲཧ φΠτϨΠͰͷऔΓ૊Έ

Slide 25

Slide 25 text

Ͱ஍ཧۭؒॲཧඪ४஍Ҭϝογϡ 4/4౤ߘσʔλͷ ϙΠϯτΛϝογϡͰूܭͯ͠ѻ͍͍ͨ Ң౓ܦ౓Λϝογϡʹม׵͢ΔͨΊͷ ύοέʔδ͕ͳ͍ ʜͳ͚Ε͹࡞Δ

Slide 26

Slide 26 text

Ͱ஍ཧۭؒॲཧඪ४஍Ҭϝογϡ library(jpmesh) meshcode_to_latlon(5133) lat_center long_center lat_error long_error 1 34.3333333333 133.5 0.3333333333 0.5 latlong_to_meshcode(34.583333, 133.875, order = 2) [1] 513367 ࠃཱ؀ڥݚڀॴ஛த͞Μͷίʔυ IUUQUBLFOBLBBLJPPSHFUDNFTIDPEFJOEFYIUNMΛݩʹ ݸਓͰ ։ൃɻ KQNFTI Ң౓ܦ౓͔Βϝογϡͷ૬ޓม׵ LN͔ΒNϝογϡ·ͰରԠ Nͦͷ͏ͪରԠ

Slide 27

Slide 27 text

Ͱ஍ཧۭؒॲཧඪ४஍Ҭϝογϡ 4/4౤ߘσʔλͷϝογϡ୯ҐͰͷूܭ प༡ϓϥϯ φϏλΠϜδϟύϯͱͷσʔλ࿈ܞ

Slide 28

Slide 28 text

Ͱ஍ཧۭؒॲཧࢪઃ෼ྨ ʮ౦ژσΟζχʔϥϯυʯ͕શࠃʹ ઍ༿ݝҎ֎ʹ΋νΣοΫΠϯؚ͕·ΕΔ ʢ྆࣠ͷ஋͸ਖ਼نԽॲཧΛߦ͍ͬͯΔ w%#4$"/ %FOTJUZCBTFETQBUJBMDMVTUFSJOHPGBQQMJDBUJPOTXJUIOPJTF ɹ ɹʹΑΔΫϥελϦϯά ڑ཭తʹ཭ΕΔಉҰࢪઃͷ෼཭ ˠ

Slide 29

Slide 29 text

Ͱ஍ཧۭؒॲཧࢪઃ෼ྨ library(dbscan) d <- df.tgt %>% select(longitude, latitude) %>% mutate_all(scale) %>% as.matrix() db <- dbscan(d, eps = 1, minPts = 3) db ## DBSCAN clustering for 1813 objects. ## Parameters: eps = 1, minPts = 3 ## The clustering contains 4 cluster(s) and 1 noise points. ## ## 0 1 2 3 4 ## 1 1756 43 3 10 ## ## Available fields: cluster, eps, minPts df.tgt %<>% mutate(cluster = db$cluster) library(factoextra) fviz_cluster(db, d, stand = FALSE, geom = "point", ggtheme = theme_minimal())

Slide 30

Slide 30 text

Ͱ஍ཧۭؒॲཧࢪઃ෼ྨ # 指定した箇所周辺の「施設名」を返す関数 (res <- find_neighbor_places(df.inbs, 135.7355, 35.0302, distance = 100)) ## [1] "京都" "北野天満宮" ## [3] "北野天満宮 (Kitano Tenman-gu)" "北野天ડ܅" QMBDF@OBNF DPSSFDU@OBNF EJTUBODF ๺໺ఱຬٶ ๺໺ఱຬٶ ๺໺ఱຬٶ ,JUBOP5FONBOHV ๺໺ఱຬٶ ๺໺ఱડ܅ ๺໺ఱຬٶ ژ౎ ๺໺ఱຬٶ จࣈྻͷฤूڑ཭Λར༻ͯ͠ਫ਼౓޲্Λ໨ࢦ͢ ϙΠϯτ͔ΒϙϦΰϯΛ࡞੒ ϙϦΰϯʹؚ·ΕΔ౤ߘΛ ࢪઃ಺Ͱͷ౤ߘͱ൑ఆ

Slide 31

Slide 31 text

͓͡͞Μɺɹ͓Ͷ͍͞ΜʹͳΓ·͠ΐ͏ &OKPZ