@@ -68,12 +68,12 @@ library(spDataLarge)
6868## 入力データを整頓 {#tidy-the-input-data}
6969
7070ドイツ政府は、1 km または 100 m の解像度でグリッド化された国勢調査データを提供している。
71- 次のコードは、1 km のデータをダウンロードし、解凍し 、読み込むものである。
71+ 次のコードは、1 km のデータをダウンロード、解凍 、読み込むものである。
7272
7373``` {r 14-location-2, eval=FALSE}
7474download.file("https://tinyurl.com/ybtpkwxz",
7575 destfile = "census.zip", mode = "wb")
76- unzip("census.zip") # unzip the files
76+ unzip("census.zip") # ファイルを解凍
7777census_de = readr::read_csv2(list.files(pattern = "Gitter.csv"))
7878```
7979
@@ -83,9 +83,9 @@ census_de = readr::read_csv2(list.files(pattern = "Gitter.csv"))
8383data("census_de", package = "spDataLarge")
8484```
8585
86- ` census_de ` オブジェクトは、ドイツ全土の 30 万以上のグリッドセルについて、 13 の変数を含むデータフレームである 。
86+ ` census_de ` オブジェクトは、ドイツ全土の 30 万以上のグリッドセルのデータフレームで、変数が 13 ある 。
8787これからの作業では、東経 (` x ` ) と北緯 (` y ` )、住民数 (人口 ` pop ` )、平均年齢 (` mean_age ` )、女性の割合 (` women ` )、平均世帯人員 (` hh_size ` ) だけが必要である。
88- これらの変数を、以下のコードチャンクのように選択し、ドイツ語から英語に名前が変更する 。その結果は Table \@ ref(tab: census-desc ) に要約した。
88+ 以下のコードチャンクではこれらの必要な変数のみを選択する。なお、この際に変数名をドイツ語から英語に変更する 。その結果は Table \@ ref(tab: census-desc ) に要約した。
8989さらに ` mutate_all() ` で、値 ` -1 ` と ` -9 ` (不明を意味する) を ` NA ` に変換する。
9090
9191``` {r 14-location-4}
@@ -155,7 +155,7 @@ input_ras
155155```
156156
157157``` {block2 13-location-7, type='rmdnote'}
158- なお、ここでは等面積投影 (EPSG:3035; Lambert Equal Area Europe)、つまり各グリッドセルが同じ面積 (ここでは 1000 * 1000 平方メートル) を持つ投影 CRS\index{CRS!projected} を使用している 。
158+ なお、ここでは等面積投影 (EPSG:3035; Lambert Equal Area Europe)を使用している。これは、各グリッドセルが同じ面積 (ここでは 1000 * 1000 平方メートル) を持つ投影 CRS\index{CRS!projected} である 。
159159主に格子点あたりの住民数や女性比率などの密度を用いているので、「リンゴとオレンジの比較」を避けるために、各セルの面積が同じであることが最も重要である。
160160グリッドセル面積が極方向に減少し続ける地理的 CRS\index{CRS!geographic} には注意が必要 (Section \@ref(crs-intro) と Chapter \@ref(reproj-geo-data) も参照)。
161161```
@@ -271,8 +271,8 @@ knitr::kable(select(metro_names, City = city, State = state),
271271 booktabs = TRUE)
272272```
273273
274- 全体として、私たちは ` City ` 列が大都市名 (Table \@ ref(tab: metro-names )) として機能していることに満足している 。例外は、Wülfrath が Düsseldorf の大領域に属していることで ある 。
275- したがって、Wülfrath を Düsseldorf (Figure \@ ref(fig: metro-areas )) に置き換える。
274+ ` City ` 列が大都市名 (Table \@ ref(tab: metro-names )) となっているので、おおむね成功と言えるだろう 。例外は、Velbert である。より広域の Düsseldorf の方が適切だろう 。
275+ したがって、Velbert を Düsseldorf (Figure \@ ref(fig: metro-areas )) に置き換える。
276276ウムラウト ` ü ` は、例えば ` opq() ` を使って大都市圏のバウンディングボックスを決定する場合 (後述)、後々トラブルになる可能性があるため、これも変換しておく。
277277
278278``` {r 14-location-19}
@@ -286,16 +286,16 @@ metro_names = metro_names$city |>
286286
287287\index{ちりてきもくひょうぶつ@地理的目標物}
288288** osmdata** \index{osmdata (package)} パッケージは、OSM\index{OpenStreetMap} データへの使いやすいアクセスを提供する (Section \@ ref(retrieving-data) も参照)。
289- ドイツ全土の店舗をダウンロードするのではなく、定義された大都市圏にクエリを限定することで、計算負荷を軽減し、関心のあるエリアのみの店舗位置を提供している 。
290- この後のコードチャンクは 、以下のようないくつかの関数を用いてこれを行う。
289+ ドイツ全土の店舗をダウンロードするのではなく、定義された大都市圏にクエリを限定しよう。こうすることで計算負荷を軽減し、目標地域に限定して店舗位置を提供する 。
290+ 下のコードチャンクでは 、以下のようないくつかの関数を用いてこれを行う。
291291
292292- ` map() ` \index{るーぷしょり@ループ処理!map}: (` lapply() ` \index{るーぷしょり@ループ処理!lapply} の ** tidyverse** 相当)。これは、OSM \index{OpenStreetMap} クエリ関数 ` opq() ` (Section \@ ref(retrieving-data) 参照) のバウンディングボックス\index{ばうんでぃんぐぼっくす@バウンディングボックス}を定義する、8 つの大都市名すべてを繰り返し処理
293293- ` add_osm_feature() ` : キー値が ` shop ` の OSM\index{OpenStreetMap} 要素を指定する (共通のキー:値のペアの一覧は [ wiki.openstreetmap.org] ( https://wiki.openstreetmap.org/wiki/Map_Features ) を参照)
294294- ` osmdata_sf() ` : これは OSM\index{OpenStreetMap} データを空間オブジェクト (クラス ` sf ` ) に変換
295295- ` while() ` \index{るーぷしょり@ループ処理!while}: ダウンロードに失敗すると、さらに 2 回ダウンロードを試みる^[ OSM-download は 1 回目で失敗することもあるようである
296296]
297297
298- このコードを実行する前に: 約 2 GB のデータをダウンロードすることを考慮してみよう 。
298+ このコードを実行する前に、 のデータをダウンロードするデータの大きさが約 2 GB となることに注意しよう 。
299299時間とリソースを節約するために、` shops ` という名前の出力を ** spDataLarge** に入れてある。
300300自分の環境で利用できるようにするには、** spDataLarge** パッケージがロードされていることを確認するか、` data("shops", package = "spDataLarge") ` を実行してみよう。
301301
0 commit comments