├── .gitignore ├── README.md ├── environment.yml └── lessons ├── lesson-1 ├── exercise-1.ipynb ├── fig │ ├── multipolygons_595x300px.svg │ └── simple-features_595x500px.svg └── geometry-objects.ipynb ├── lesson-2 ├── data │ ├── eu_countries │ │ ├── SOURCE │ │ ├── eu_countries_2022.gpkg │ │ └── eu_countries_EPSG3035.gpkg │ ├── europe_nuts_regions.geojson │ ├── finland_municipalities │ │ ├── SOURCE │ │ └── finland_municipalities_2021.gpkg │ ├── finland_topographic_database │ │ ├── SOURCE │ │ ├── area_by_terrain_class.csv │ │ ├── download-mml-data.py │ │ ├── h_L4132R_p.cpg │ │ ├── h_L4132R_p.dbf │ │ ├── h_L4132R_p.prj │ │ ├── h_L4132R_p.shp │ │ ├── h_L4132R_p.shx │ │ ├── h_L4132R_v.cpg │ │ ├── h_L4132R_v.dbf │ │ ├── h_L4132R_v.prj │ │ ├── h_L4132R_v.shp │ │ ├── h_L4132R_v.shx │ │ ├── j_L4132R_s.cpg │ │ ├── j_L4132R_s.dbf │ │ ├── j_L4132R_s.prj │ │ ├── j_L4132R_s.shp │ │ ├── j_L4132R_s.shx │ │ ├── j_L4132R_v.cpg │ │ ├── j_L4132R_v.dbf │ │ ├── j_L4132R_v.prj │ │ ├── j_L4132R_v.shp │ │ ├── j_L4132R_v.shx │ │ ├── k_L4132R_s.cpg │ │ ├── k_L4132R_s.dbf │ │ ├── k_L4132R_s.prj │ │ ├── k_L4132R_s.shp │ │ ├── k_L4132R_s.shx │ │ ├── k_L4132R_t.cpg │ │ ├── k_L4132R_t.dbf │ │ ├── k_L4132R_t.prj │ │ ├── k_L4132R_t.shp │ │ ├── k_L4132R_t.shx │ │ ├── l_L4132R_s.cpg │ │ ├── l_L4132R_s.dbf │ │ ├── l_L4132R_s.prj │ │ ├── l_L4132R_s.shp │ │ ├── l_L4132R_s.shx │ │ ├── l_L4132R_t.cpg │ │ ├── l_L4132R_t.dbf │ │ ├── l_L4132R_t.prj │ │ ├── l_L4132R_t.shp │ │ ├── l_L4132R_t.shx │ │ ├── lakes.cpg │ │ ├── lakes.dbf │ │ ├── lakes.prj │ │ ├── lakes.shp │ │ ├── lakes.shx │ │ ├── m_L4132R_p.cpg │ │ ├── m_L4132R_p.dbf │ │ ├── m_L4132R_p.prj │ │ ├── m_L4132R_p.shp │ │ ├── m_L4132R_p.shx │ │ ├── m_L4132R_s.cpg │ │ ├── m_L4132R_s.dbf │ │ ├── m_L4132R_s.prj │ │ ├── m_L4132R_s.shp │ │ ├── m_L4132R_s.shx │ │ ├── m_L4132R_t.cpg │ │ ├── m_L4132R_t.dbf │ │ ├── m_L4132R_t.prj │ │ ├── m_L4132R_t.shp │ │ ├── m_L4132R_t.shx │ │ ├── n_L4132R_p.cpg │ │ ├── n_L4132R_p.dbf │ │ ├── n_L4132R_p.prj │ │ ├── n_L4132R_p.shp │ │ ├── n_L4132R_p.shx │ │ ├── n_L4132R_s.cpg │ │ ├── n_L4132R_s.dbf │ │ ├── n_L4132R_s.prj │ │ ├── n_L4132R_s.shp │ │ ├── n_L4132R_s.shx │ │ ├── n_L4132R_t.cpg │ │ ├── n_L4132R_t.dbf │ │ ├── n_L4132R_t.prj │ │ ├── n_L4132R_t.shp │ │ ├── n_L4132R_t.shx │ │ ├── n_L4132R_v.cpg │ │ ├── n_L4132R_v.dbf │ │ ├── n_L4132R_v.prj │ │ ├── n_L4132R_v.shp │ │ ├── n_L4132R_v.shx │ │ ├── r_L4132R_s.cpg │ │ ├── r_L4132R_s.dbf │ │ ├── r_L4132R_s.prj │ │ ├── r_L4132R_s.shp │ │ ├── r_L4132R_s.shx │ │ ├── r_L4132R_t.cpg │ │ ├── r_L4132R_t.dbf │ │ ├── r_L4132R_t.prj │ │ ├── r_L4132R_t.shp │ │ ├── r_L4132R_t.shx │ │ ├── s_L4132R_p.cpg │ │ ├── s_L4132R_p.dbf │ │ ├── s_L4132R_p.prj │ │ ├── s_L4132R_p.shp │ │ ├── s_L4132R_p.shx │ │ ├── s_L4132R_s.cpg │ │ ├── s_L4132R_s.dbf │ │ ├── s_L4132R_s.prj │ │ ├── s_L4132R_s.shp │ │ ├── s_L4132R_s.shx │ │ ├── s_L4132R_t.cpg │ │ ├── s_L4132R_t.dbf │ │ ├── s_L4132R_t.prj │ │ ├── s_L4132R_t.shp │ │ ├── s_L4132R_t.shx │ │ ├── s_L4132R_v.cpg │ │ ├── s_L4132R_v.dbf │ │ ├── s_L4132R_v.prj │ │ ├── s_L4132R_v.shp │ │ ├── s_L4132R_v.shx │ │ ├── terrain_32111.cpg │ │ ├── terrain_32111.dbf │ │ ├── terrain_32111.prj │ │ ├── terrain_32111.shp │ │ ├── terrain_32111.shx │ │ ├── terrain_32112.cpg │ │ ├── terrain_32112.dbf │ │ ├── terrain_32112.prj │ │ ├── terrain_32112.shp │ │ ├── terrain_32112.shx │ │ ├── terrain_32200.cpg │ │ ├── terrain_32200.dbf │ │ ├── terrain_32200.prj │ │ ├── terrain_32200.shp │ │ ├── terrain_32200.shx │ │ ├── terrain_32417.cpg │ │ ├── terrain_32417.dbf │ │ ├── terrain_32417.prj │ │ ├── terrain_32417.shp │ │ ├── terrain_32417.shx │ │ ├── terrain_32421.cpg │ │ ├── terrain_32421.dbf │ │ ├── terrain_32421.prj │ │ ├── terrain_32421.shp │ │ ├── terrain_32421.shx │ │ ├── terrain_32500.cpg │ │ ├── terrain_32500.dbf │ │ ├── terrain_32500.prj │ │ ├── terrain_32500.shp │ │ ├── terrain_32500.shx │ │ ├── terrain_32611.cpg │ │ ├── terrain_32611.dbf │ │ ├── terrain_32611.prj │ │ ├── terrain_32611.shp │ │ ├── terrain_32611.shx │ │ ├── terrain_32612.cpg │ │ ├── terrain_32612.dbf │ │ ├── terrain_32612.prj │ │ ├── terrain_32612.shp │ │ ├── terrain_32612.shx │ │ ├── terrain_32800.cpg │ │ ├── terrain_32800.dbf │ │ ├── terrain_32800.prj │ │ ├── terrain_32800.shp │ │ ├── terrain_32800.shx │ │ ├── terrain_32900.cpg │ │ ├── terrain_32900.dbf │ │ ├── terrain_32900.prj │ │ ├── terrain_32900.shp │ │ ├── terrain_32900.shx │ │ ├── terrain_33000.cpg │ │ ├── terrain_33000.dbf │ │ ├── terrain_33000.prj │ │ ├── terrain_33000.shp │ │ ├── terrain_33000.shx │ │ ├── terrain_33100.cpg │ │ ├── terrain_33100.dbf │ │ ├── terrain_33100.prj │ │ ├── terrain_33100.shp │ │ ├── terrain_33100.shx │ │ ├── terrain_34100.cpg │ │ ├── terrain_34100.dbf │ │ ├── terrain_34100.prj │ │ ├── terrain_34100.shp │ │ ├── terrain_34100.shx │ │ ├── terrain_34300.cpg │ │ ├── terrain_34300.dbf │ │ ├── terrain_34300.prj │ │ ├── terrain_34300.shp │ │ ├── terrain_34300.shx │ │ ├── terrain_34700.cpg │ │ ├── terrain_34700.dbf │ │ ├── terrain_34700.prj │ │ ├── terrain_34700.shp │ │ ├── terrain_34700.shx │ │ ├── terrain_35300.cpg │ │ ├── terrain_35300.dbf │ │ ├── terrain_35300.prj │ │ ├── terrain_35300.shp │ │ ├── terrain_35300.shx │ │ ├── terrain_35411.cpg │ │ ├── terrain_35411.dbf │ │ ├── terrain_35411.prj │ │ ├── terrain_35411.shp │ │ ├── terrain_35411.shx │ │ ├── terrain_35412.cpg │ │ ├── terrain_35412.dbf │ │ ├── terrain_35412.prj │ │ ├── terrain_35412.shp │ │ ├── terrain_35412.shx │ │ ├── terrain_35421.cpg │ │ ├── terrain_35421.dbf │ │ ├── terrain_35421.prj │ │ ├── terrain_35421.shp │ │ ├── terrain_35421.shx │ │ ├── terrain_36200.cpg │ │ ├── terrain_36200.dbf │ │ ├── terrain_36200.prj │ │ ├── terrain_36200.shp │ │ ├── terrain_36200.shx │ │ ├── terrain_36313.cpg │ │ ├── terrain_36313.dbf │ │ ├── terrain_36313.prj │ │ ├── terrain_36313.shp │ │ ├── terrain_36313.shx │ │ ├── u_L4132R_p.cpg │ │ ├── u_L4132R_p.dbf │ │ ├── u_L4132R_p.prj │ │ ├── u_L4132R_p.shp │ │ ├── u_L4132R_p.shx │ │ ├── u_L4132R_v.cpg │ │ ├── u_L4132R_v.dbf │ │ ├── u_L4132R_v.prj │ │ ├── u_L4132R_v.shp │ │ └── u_L4132R_v.shx │ └── world_countries │ │ ├── SOURCE │ │ └── ne_110m_admin_0_countries.zip ├── figs │ └── paituli-download_700x650px.png ├── geopandas-an-introduction.ipynb ├── managing-file-paths.ipynb ├── map-projections.ipynb └── vector-data-io.ipynb ├── lesson-3 ├── data │ ├── helsinki_addresses │ │ └── addresses.txt │ └── helsinki_city_districts │ │ ├── SOURCE │ │ └── helsinki_city_districts_2021.gpkg ├── geocoding-in-geopandas.ipynb ├── intersect.ipynb ├── point-in-polygon-queries.ipynb └── spatial-join.ipynb ├── lesson-4 ├── data │ ├── amazon_river │ │ └── amazon_river.gpkg │ ├── helsinki_municipality │ │ └── helsinki_municipality.gpkg │ └── helsinki_region_travel_times_to_railway_station │ │ └── helsinki_region_travel_times_to_railway_station.gpkg ├── images │ └── overlay-operations_700x200px.svg ├── overlay-analysis.ipynb ├── reclassifying-data.ipynb ├── simplifying-geometries.ipynb └── vector-data-aggregating.ipynb ├── lesson-5 ├── data │ ├── addresses.gpkg │ └── helsinki_region_travel_times_to_railway_station │ │ └── helsinki_region_travel_times_to_railway_station.gpkg ├── interactive-maps.ipynb └── static-maps.ipynb ├── lesson-6 ├── data │ └── .keep ├── images │ └── osm-logo_256x256px.svg ├── network-analysis.ipynb └── retrieve-data-from-openstreetmap.ipynb └── lesson-7 ├── Raster-explore.ipynb ├── Raster-processing.ipynb ├── data ├── L4133A.tif ├── L4133B.tif ├── L4133C.tif ├── L4133D.tif ├── U4234A.tif └── sentinel2_Nuuksio_small.tif ├── exercise-6.ipynb ├── fig ├── raster_rep.png └── yllas.jpg ├── overview.ipynb └── raster-part1.rst /.gitignore: -------------------------------------------------------------------------------- 1 | .nbgrader.log 2 | .ipynb_checkpoints 3 | 4 | lessons/lesson-6/cache 5 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Automating GIS processes: notebooks used during the lessons at the University of Helsinki 2 | 3 | This repository contains the notebooks used in contact-teaching. The [docker image used for CSC 4 | Notebooks](https://github.com/Automating-GIS-processes/csc-notebook-dockerfile) 5 | clones (or fetches and merges) this repository upon start. 6 | 7 | To prepare these files, use `jupytext` to convert the markdown-based notebooks from 8 | [Automating-GIS-processes/site](https://github.com/Automating-GIS-processes/site), 9 | then remove the code from cells that should be filled during the lesson. 10 | 11 | If you want to add the lessons one-by-one as the course proceeds (e.g., every 12 | week), you can clone this repository locally in the beginning of the teaching 13 | period, run `git rm --cached -r lesson-?` to remove all lessons from the index (but 14 | keep a local copy), commit and push. Each week, you can then use `git add lesson-1`, 15 | commit and push, to upload the new content. 16 | 17 | **At the beginning of the teaching period**, remember to replace `environment.yml` with an 18 | updated listing all packages pinned to the current year’s versions (see the [README in 19 | `Automating-GIS-processes/site`](https://github.com/Automating-GIS-processes/site/blob/main/README.md)). 20 | -------------------------------------------------------------------------------- /environment.yml: -------------------------------------------------------------------------------- 1 | name: autogis 2 | channels: 3 | - conda-forge 4 | - defaults 5 | dependencies: 6 | - _libgcc_mutex=0.1 7 | - _openmp_mutex=4.5 8 | - affine=2.3.1 9 | - alabaster=0.7.12 10 | - alsa-lib=1.2.7.2 11 | - anyio=3.6.2 12 | - argon2-cffi=21.3.0 13 | - argon2-cffi-bindings=21.2.0 14 | - asttokens=2.0.8 15 | - attr=2.5.1 16 | - attrs=22.1.0 17 | - babel=2.10.3 18 | - backcall=0.2.0 19 | - backports=1.0 20 | - backports.functools_lru_cache=1.6.4 21 | - beautifulsoup4=4.11.1 22 | - bleach=5.0.1 23 | - blosc=1.21.1 24 | - bokeh=2.4.3 25 | - boost-cpp=1.78.0 26 | - branca=0.5.0 27 | - brotli=1.0.9 28 | - brotli-bin=1.0.9 29 | - brotlipy=0.7.0 30 | - bzip2=1.0.8 31 | - c-ares=1.18.1 32 | - ca-certificates=2022.9.24 33 | - cairo=1.16.0 34 | - certifi=2022.9.24 35 | - cffi=1.15.1 36 | - cfitsio=4.1.0 37 | - charset-normalizer=2.1.1 38 | - click=8.1.3 39 | - click-plugins=1.1.1 40 | - cligj=0.7.2 41 | - colorama=0.4.6 42 | - contextily=1.2.0 43 | - contourpy=1.0.5 44 | - cryptography=38.0.2 45 | - curl=7.86.0 46 | - cycler=0.11.0 47 | - cykhash=2.0.0 48 | - cython=0.29.32 49 | - dbus=1.13.6 50 | - debugpy=1.6.3 51 | - decorator=5.1.1 52 | - defusedxml=0.7.1 53 | - docutils=0.17.1 54 | - entrypoints=0.4 55 | - executing=1.1.1 56 | - expat=2.5.0 57 | - fftw=3.3.10 58 | - fiona=1.8.22 59 | - flit-core=3.7.1 60 | - folium=0.13.0 61 | - font-ttf-dejavu-sans-mono=2.37 62 | - font-ttf-inconsolata=3.000 63 | - font-ttf-source-code-pro=2.038 64 | - font-ttf-ubuntu=0.83 65 | - fontconfig=2.14.1 66 | - fonts-conda-ecosystem=1 67 | - fonts-conda-forge=1 68 | - fonttools=4.38.0 69 | - freetype=2.12.1 70 | - freexl=1.0.6 71 | - gdal=3.5.2 72 | - geographiclib=1.52 73 | - geojson=2.5.0 74 | - geopandas=0.12.0 75 | - geopandas-base=0.12.0 76 | - geopy=2.2.0 77 | - geos=3.11.0 78 | - geotiff=1.7.1 79 | - gettext=0.21.1 80 | - giflib=5.2.1 81 | - gitdb=4.0.9 82 | - gitpython=3.1.29 83 | - glib=2.74.1 84 | - glib-tools=2.74.1 85 | - greenlet=1.1.3.post0 86 | - gst-plugins-base=1.20.3 87 | - gstreamer=1.20.3 88 | - hdf4=4.2.15 89 | - hdf5=1.12.2 90 | - icu=70.1 91 | - idna=3.4 92 | - imagesize=1.4.1 93 | - importlib-metadata=5.0.0 94 | - importlib_resources=5.10.0 95 | - ipykernel=6.16.2 96 | - ipython=8.6.0 97 | - ipython_genutils=0.2.0 98 | - jack=1.9.21 99 | - jedi=0.18.1 100 | - jinja2=3.1.2 101 | - joblib=1.2.0 102 | - jpeg=9e 103 | - json-c=0.16 104 | - json5=0.9.5 105 | - jsonschema=4.16.0 106 | - jupyter-cache=0.5.0 107 | - jupyter-server-mathjax=0.2.6 108 | - jupyter_client=7.4.4 109 | - jupyter_core=4.11.1 110 | - jupyter_server=1.21.0 111 | - jupyterlab=3.5.0 112 | - jupyterlab-git=0.39.3 113 | - jupyterlab-markup=1.0.1 114 | - jupyterlab-myst=0.1.6 115 | - jupyterlab_pygments=0.2.2 116 | - jupyterlab_server=2.16.1 117 | - jupytext=1.14.0 118 | - kealib=1.4.15 119 | - keyutils=1.6.1 120 | - kiwisolver=1.4.4 121 | - krb5=1.19.3 122 | - lame=3.100 123 | - lcms2=2.13.1 124 | - ld_impl_linux-64=2.39 125 | - lerc=4.0.0 126 | - libblas=3.9.0 127 | - libbrotlicommon=1.0.9 128 | - libbrotlidec=1.0.9 129 | - libbrotlienc=1.0.9 130 | - libcap=2.66 131 | - libcblas=3.9.0 132 | - libclang=14.0.6 133 | - libclang13=14.0.6 134 | - libcups=2.3.3 135 | - libcurl=7.86.0 136 | - libdap4=3.20.6 137 | - libdb=6.2.32 138 | - libdeflate=1.14 139 | - libedit=3.1.20191231 140 | - libev=4.33 141 | - libevent=2.1.10 142 | - libffi=3.4.2 143 | - libflac=1.4.2 144 | - libgcc-ng=12.2.0 145 | - libgdal=3.5.2 146 | - libgfortran-ng=12.2.0 147 | - libgfortran5=12.2.0 148 | - libglib=2.74.1 149 | - libgomp=12.2.0 150 | - libiconv=1.17 151 | - libkml=1.3.0 152 | - liblapack=3.9.0 153 | - libllvm14=14.0.6 154 | - libnetcdf=4.8.1 155 | - libnghttp2=1.47.0 156 | - libnsl=2.0.0 157 | - libogg=1.3.4 158 | - libopenblas=0.3.21 159 | - libopus=1.3.1 160 | - libpng=1.6.38 161 | - libpq=14.5 162 | - librttopo=1.1.0 163 | - libsndfile=1.1.0 164 | - libsodium=1.0.18 165 | - libspatialindex=1.9.3 166 | - libspatialite=5.0.1 167 | - libsqlite=3.39.4 168 | - libssh2=1.10.0 169 | - libstdcxx-ng=12.2.0 170 | - libtiff=4.4.0 171 | - libtool=2.4.6 172 | - libudev1=251 173 | - libuuid=2.32.1 174 | - libvorbis=1.3.7 175 | - libwebp-base=1.2.4 176 | - libxcb=1.13 177 | - libxkbcommon=1.0.3 178 | - libxml2=2.10.3 179 | - libzip=1.9.2 180 | - libzlib=1.2.13 181 | - lz4-c=1.9.3 182 | - mapclassify=2.4.3 183 | - markdown-it-py=2.1.0 184 | - markupsafe=2.1.1 185 | - matplotlib=3.6.1 186 | - matplotlib-base=3.6.1 187 | - matplotlib-inline=0.1.6 188 | - mdit-py-plugins=0.3.1 189 | - mdurl=0.1.0 190 | - mercantile=1.2.1 191 | - mistune=2.0.4 192 | - mpg123=1.30.2 193 | - munch=2.5.0 194 | - munkres=1.1.4 195 | - mysql-common=8.0.31 196 | - mysql-libs=8.0.31 197 | - myst-nb=0.17.1 198 | - myst-parser=0.18.1 199 | - nbclassic=0.4.7 200 | - nbclient=0.5.13 201 | - nbconvert=7.2.3 202 | - nbconvert-core=7.2.3 203 | - nbconvert-pandoc=7.2.3 204 | - nbdime=3.1.1 205 | - nbformat=5.7.0 206 | - ncurses=6.3 207 | - nest-asyncio=1.5.6 208 | - networkx=2.8.7 209 | - notebook=6.4.12 210 | - notebook-shim=0.2.0 211 | - nspr=4.32 212 | - nss=3.78 213 | - numpy=1.23.4 214 | - openjpeg=2.5.0 215 | - openssl=1.1.1q 216 | - osmnx=1.2.2 217 | - packaging=21.3 218 | - pandas=1.5.1 219 | - pandoc=2.19.2 220 | - pandocfilters=1.5.0 221 | - parso=0.8.3 222 | - pcre=8.45 223 | - pcre2=10.37 224 | - pexpect=4.8.0 225 | - pickleshare=0.7.5 226 | - pillow=9.2.0 227 | - pip=22.3 228 | - pixman=0.40.0 229 | - pkgutil-resolve-name=1.3.10 230 | - ply=3.11 231 | - poppler=22.10.0 232 | - poppler-data=0.4.11 233 | - postgresql=14.5 234 | - proj=9.1.0 235 | - prometheus_client=0.15.0 236 | - prompt-toolkit=3.0.31 237 | - psutil=5.9.3 238 | - psycopg2=2.9.3 239 | - pthread-stubs=0.4 240 | - ptyprocess=0.7.0 241 | - pulseaudio=14.0 242 | - pure_eval=0.2.2 243 | - pycparser=2.21 244 | - pydata-sphinx-theme=0.8.1 245 | - pygeos=0.13 246 | - pygments=2.13.0 247 | - pyopenssl=22.1.0 248 | - pyparsing=3.0.9 249 | - pyproj=3.4.0 250 | - pyqt=5.15.7 251 | - pyqt5-sip=12.11.0 252 | - pyrobuf=0.9.3 253 | - pyrosm=0.6.1 254 | - pyrsistent=0.18.1 255 | - pysocks=1.7.1 256 | - python=3.10.6 257 | - python-dateutil=2.8.2 258 | - python-fastjsonschema=2.16.2 259 | - python-rapidjson=1.9 260 | - python_abi=3.10 261 | - pytz=2022.5 262 | - pyyaml=6.0 263 | - pyzmq=24.0.1 264 | - qt-main=5.15.6 265 | - rasterio=1.3.3 266 | - readline=8.1.2 267 | - requests=2.28.1 268 | - rtree=1.0.1 269 | - scikit-learn=1.1.3 270 | - scipy=1.9.3 271 | - send2trash=1.8.0 272 | - setuptools=65.5.0 273 | - shapely=1.8.5 274 | - sip=6.7.3 275 | - six=1.16.0 276 | - smmap=3.0.5 277 | - snappy=1.1.9 278 | - sniffio=1.3.0 279 | - snowballstemmer=2.2.0 280 | - snuggs=1.4.7 281 | - soupsieve=2.3.2.post1 282 | - sphinx=4.5.0 283 | - sphinx-book-theme=0.3.3 284 | - sphinxcontrib-applehelp=1.0.2 285 | - sphinxcontrib-devhelp=1.0.2 286 | - sphinxcontrib-htmlhelp=2.0.0 287 | - sphinxcontrib-jsmath=1.0.1 288 | - sphinxcontrib-qthelp=1.0.3 289 | - sphinxcontrib-serializinghtml=1.1.5 290 | - sqlalchemy=1.4.42 291 | - sqlite=3.39.4 292 | - stack_data=0.5.1 293 | - tabulate=0.9.0 294 | - terminado=0.17.0 295 | - threadpoolctl=3.1.0 296 | - tiledb=2.11.3 297 | - tinycss2=1.2.1 298 | - tk=8.6.12 299 | - toml=0.10.2 300 | - tomli=2.0.1 301 | - tornado=6.2 302 | - traitlets=5.5.0 303 | - typing-extensions=4.4.0 304 | - typing_extensions=4.4.0 305 | - tzcode=2022e 306 | - tzdata=2022e 307 | - unicodedata2=14.0.0 308 | - urllib3=1.26.11 309 | - wcwidth=0.2.5 310 | - webencodings=0.5.1 311 | - websocket-client=1.4.1 312 | - wheel=0.37.1 313 | - xcb-util=0.4.0 314 | - xcb-util-image=0.4.0 315 | - xcb-util-keysyms=0.4.0 316 | - xcb-util-renderutil=0.3.9 317 | - xcb-util-wm=0.4.1 318 | - xerces-c=3.2.4 319 | - xorg-kbproto=1.0.7 320 | - xorg-libice=1.0.10 321 | - xorg-libsm=1.2.3 322 | - xorg-libx11=1.7.2 323 | - xorg-libxau=1.0.9 324 | - xorg-libxdmcp=1.1.3 325 | - xorg-libxext=1.3.4 326 | - xorg-libxrender=0.9.10 327 | - xorg-renderproto=0.11.1 328 | - xorg-xextproto=7.3.0 329 | - xorg-xproto=7.0.31 330 | - xyzservices=2022.9.0 331 | - xz=5.2.6 332 | - yaml=0.2.5 333 | - zeromq=4.3.4 334 | - zipp=3.10.0 335 | - zlib=1.2.13 336 | - zstd=1.5.2 337 | -------------------------------------------------------------------------------- /lessons/lesson-1/exercise-1.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "a50b8b56", 6 | "metadata": {}, 7 | "source": [ 8 | "# Exercise 1\n", 9 | "\n", 10 | "> **Important:** \n", 11 | "> Please complete this exercise **end of day** on Thursday, 7 November, 2024 (the day before the next work session).\n", 12 | "\n", 13 | "> **Remember the pre-assignment!** \n", 14 | "> Please complete the pre-assignment survey no later than 31.10.2024 23:59. Link to survey: [pre-course survey](https://elomake.helsinki.fi/lomakkeet/131798/lomake.html). Otherwise you may not be graded. \n", 15 | "\n", 16 | "To start this assignment, [accept the GitHub classroom\n", 17 | "assignment](https://classroom.github.com/a/vGLGgKdW), and clone *your own*\n", 18 | "repository, e.g., in a [CSC\n", 19 | "Noppe](../../course-info/course-environment)\n", 20 | "instance. Make sure you commit and push all changes you make (you can\n", 21 | "revisit instructions on how to use `git` and the JupyterLab git-plugin\n", 22 | "on the [website of the Geo-Python\n", 23 | "course](https://geo-python-site.readthedocs.io/en/latest/lessons/L2/git-basics.html).\n", 24 | "\n", 25 | "To preview the exercise without logging in, you can find the open course copy\n", 26 | "of the course’s GitHub repository at\n", 27 | "[github.com/Automating-GIS-processes-II-2024/Exercise-1](https://github.com/Automating-GIS-processes-II-2024/Exercise-1).\n", 28 | "Don’t attempt to commit changes to that repository, but rather work with your\n", 29 | "personal GitHub classroom copy (see above).\n", 30 | "\n", 31 | "> **Admonition: Exercises are done individually** \n", 32 | "> All the weekly exercises need to be done individually in this period. \n", 33 | "> So **NO pair programming** for exercises in this period.\n", 34 | "\n", 35 | "\n", 36 | "\n", 37 | "## Hints\n", 38 | "\n", 39 | "- [Geo-Python, lesson 4: Functions](https://geo-python-site.readthedocs.io/en/latest/notebooks/L4/functions.html)\n", 40 | "- [Geo-Python, lesson 6: Iterating dataframe rows](https://geo-python-site.readthedocs.io/en/latest/notebooks/L6/advanced-data-processing-with-pandas.html#iterating-over-rows)\n", 41 | "- [Geo-Python, lesson 6: Using assertions](https://geo-python-site.readthedocs.io/en/latest/notebooks/L6/gcp-5-assertions.html)\n", 42 | "\n", 43 | "- `assert` statements\n", 44 | "- Alternatives to `pandas.DataFrame.iterrows()`\n", 45 | "- Iterating over multiple lists simultaneously\n", 46 | "\n", 47 | "\n", 48 | "### `assert` statements\n", 49 | "\n", 50 | "*Assertions* are a language feature in Python that allows the programmer to\n", 51 | "[assert](https://en.wiktionary.org/wiki/assert), ensure, that a certain\n", 52 | "condition is met. They are a good way to check that variables are in a suitable\n", 53 | "range for further computation. For instance, if a function converts a\n", 54 | "temperature, it can test that its input value is not below absolute zero. In a\n", 55 | "way, `assert` statements work similar to an electrical fuse: if input current\n", 56 | "is higher than expected, the fuse blows to protect the appliance that comes\n", 57 | "after. If input values are outside an expected range, the `assert` statement\n", 58 | "fails with an error, and stops the program to protect the following code from\n", 59 | "being executed with wrong input.\n", 60 | "\n", 61 | "`assert` statements are often used in functions to ensure the input values are\n", 62 | "acceptable. Consider the following example:" 63 | ] 64 | }, 65 | { 66 | "cell_type": "code", 67 | "execution_count": null, 68 | "id": "4eb2bae6", 69 | "metadata": {}, 70 | "outputs": [], 71 | "source": [ 72 | "def divide(dividend, divisor):\n", 73 | " \"\"\"Return the division of dividend by divisor.\"\"\"\n", 74 | " assert divisor != 0, \"Cannot divide by zero.\"\n", 75 | " return (dividend / divisor)\n" 76 | ] 77 | }, 78 | { 79 | "cell_type": "markdown", 80 | "id": "f5bd5bbc", 81 | "metadata": {}, 82 | "source": [ 83 | "### Alternatives to `pandas.DataFrame.iterrows()`\n", 84 | "\n", 85 | "It is entirely possible to solve *problem 3* using the `iterrows()` pattern you\n", 86 | "learnt in [lesson 6 of\n", 87 | "Geo-Python](https://geo-python-site.readthedocs.io/en/latest/notebooks/L6/advanced-data-processing-with-pandas.html#iterating-over-rows),\n", 88 | "and your code would look something like this:" 89 | ] 90 | }, 91 | { 92 | "cell_type": "code", 93 | "execution_count": null, 94 | "id": "3f73e802", 95 | "metadata": {}, 96 | "outputs": [], 97 | "source": [ 98 | "import pandas\n", 99 | "import shapely.geometry\n", 100 | "\n", 101 | "data = pandas.DataFrame({\"x\": [10, 20, 30], \"y\": [1, 3, 4]})\n", 102 | "\n", 103 | "# Option 1: iterate over DataFrame’s rows:\n", 104 | "\n", 105 | "for i, row in data.iterrows():\n", 106 | " point = shapely.geometry.Point(row[\"x\"], row[\"y\"])\n", 107 | " # ...\n" 108 | ] 109 | }, 110 | { 111 | "cell_type": "markdown", 112 | "id": "12ec454a", 113 | "metadata": {}, 114 | "source": [ 115 | "**However**, there are better, faster, more elegant solutions that also are shorter to write.\n", 116 | "Pandas’ `DataFrame`s have a method `apply()` that runs a user-defined function on each row or on each column (depending on the `axis` parameter, if `axis=1`, `apply()` works on rows).\n", 117 | "\n", 118 | "The outputs of running the function repeatly (in parallel, to be precise) are collected in a `pandas.GeoSeries` that is the return value of `apply()` and can be assigned to a new column or row (we’ll learn about that in the next lesson, for now let’s convert the data into a list).\n", 119 | "\n", 120 | "Let’s look at an easy example to illustrate how that works: We create a simple function that takes a row and multiplies its `x` and `y` values:" 121 | ] 122 | }, 123 | { 124 | "cell_type": "code", 125 | "execution_count": null, 126 | "id": "c4233363", 127 | "metadata": {}, 128 | "outputs": [], 129 | "source": [ 130 | "def multiply(row):\n", 131 | " \"\"\"Multiply a row’s x and y values.\"\"\"\n", 132 | " return (row[\"x\"] * row[\"y\"])\n", 133 | "\n", 134 | "product = data.apply(multiply, axis=1)\n", 135 | "# note how the function is not called here (no parentheses!),\n", 136 | "# but only passed as a reference\n", 137 | "\n", 138 | "product = list(product)\n", 139 | "product" 140 | ] 141 | }, 142 | { 143 | "cell_type": "markdown", 144 | "id": "b49ea250", 145 | "metadata": {}, 146 | "source": [ 147 | "#### Pandas’ `apply()` method\n", 148 | "\n", 149 | "Exactly the same can be done with the more complex example of creating a point geometry:" 150 | ] 151 | }, 152 | { 153 | "cell_type": "code", 154 | "execution_count": null, 155 | "id": "f8da45df", 156 | "metadata": {}, 157 | "outputs": [], 158 | "source": [ 159 | "# Option 2: Define a custom function, and apply this function to the data frame\n", 160 | "\n", 161 | "def create_point(row):\n", 162 | " \"\"\"Create a Point geometry from a row with x and y values.\"\"\"\n", 163 | " point = shapely.geometry.Point(row[\"x\"], row[\"y\"])\n", 164 | " return point\n", 165 | "\n", 166 | "point_series = data.apply(create_point, axis=1)\n" 167 | ] 168 | }, 169 | { 170 | "cell_type": "markdown", 171 | "id": "50117986", 172 | "metadata": {}, 173 | "source": [ 174 | "#### `Apply()`ing an anonymous *lambda function*\n", 175 | "\n", 176 | "Finally, for simple functions that fit into one single line, we can pass the\n", 177 | "function in so-called ‘lambda notation’. Lambda functions follow the syntax\n", 178 | "`lambda arguments: return-value`, i.e., the keyword `lambda` followed by one or\n", 179 | "more, comma-separated, argument names (input variables), a colon (`:`), and the\n", 180 | "return value statement (e.g., a calculation). A lambda function that accepts\n", 181 | "two arguments and returns their sum, would look like this: `lambda a, b: (a + b)`.\n", 182 | "\n", 183 | "Lambda functions can only be used where they are defined, but offer a handy\n", 184 | "short-cut to not need separate functions for simple expressions. They are very\n", 185 | "common in data science projects, but should not be over-used: as a\n", 186 | "rule-of-thumb, don’t use lambda functions if their code does not fit on one\n", 187 | "(short) line.\n", 188 | "\n", 189 | "\n", 190 | "> **Info: Lambda functions** \n", 191 | "> Read more about lambda functions in the official [Python documentation](https://docs.python.org/3/tutorial/controlflow.html#lambda-expressions).\n", 192 | "\n", 193 | "\n", 194 | "\n", 195 | "For the geo-spatial problem we discussed above, we can use a lambda function to\n", 196 | "create a point ‘on-the-fly’:" 197 | ] 198 | }, 199 | { 200 | "cell_type": "code", 201 | "execution_count": null, 202 | "id": "2b643ca8", 203 | "metadata": {}, 204 | "outputs": [], 205 | "source": [ 206 | "# Option 3: Apply a lambda function to the data frame\n", 207 | "\n", 208 | "point_series = data.apply(\n", 209 | " lambda row: shapely.geometry.Point(row[\"x\"], row[\"y\"]),\n", 210 | " axis=1\n", 211 | ")\n" 212 | ] 213 | }, 214 | { 215 | "cell_type": "markdown", 216 | "id": "e7b01fbb", 217 | "metadata": {}, 218 | "source": [ 219 | "### Iterating over multiple lists simultaneously\n", 220 | "\n", 221 | "The [built-in Python function `zip()`](https://docs.python.org/3/library/functions.html#zip)\n", 222 | "makes it easy to work with multiple lists at the same time. It combines two or\n", 223 | "more lists and iterates over them in parallel, returning one value of each list\n", 224 | "at a time. Consider the following example:" 225 | ] 226 | }, 227 | { 228 | "cell_type": "code", 229 | "execution_count": null, 230 | "id": "504869b3", 231 | "metadata": {}, 232 | "outputs": [], 233 | "source": [ 234 | "dog_names = [\"Blackie\", \"Musti\", \"Svarte\"]\n", 235 | "dog_ages = [4.5, 2, 15]\n", 236 | "\n", 237 | "# Iterate over the names and ages lists in parallel:\n", 238 | "for name, age in zip(dog_names, dog_ages):\n", 239 | " print(f\"{name} is {age} years old\")" 240 | ] 241 | }, 242 | { 243 | "cell_type": "markdown", 244 | "id": "768c9f51", 245 | "metadata": {}, 246 | "source": [ 247 | "> **Note: Variable names** \n", 248 | "> This example illustrates quite well why variable names should be chosen wisely: lists, for instance, almost always represent multiple values, so their names should be in plural (e.g., `dog_names`). In a loop, having more than one variable can become confusing quickly; refrain from using short names such as `i` or `j` for anything but a simple counter: use descriptive names such as `name` or `age` in the above example.\n", 249 | "\n", 250 | "---\n", 251 | "\n", 252 | "> **Caution:** \n", 253 | "> When iterating over lists of different lengths, `zip` would shorten all lists to the length of the shortest. By default, this happens **without warning or error message**, so be careful!\n" 254 | ] 255 | }, 256 | { 257 | "cell_type": "code", 258 | "execution_count": null, 259 | "id": "602599fa-2dae-4439-9a52-7cfbad4fd1c9", 260 | "metadata": {}, 261 | "outputs": [], 262 | "source": [] 263 | } 264 | ], 265 | "metadata": { 266 | "kernelspec": { 267 | "display_name": "Python 3 (ipykernel)", 268 | "language": "python", 269 | "name": "python3" 270 | }, 271 | "language_info": { 272 | "codemirror_mode": { 273 | "name": "ipython", 274 | "version": 3 275 | }, 276 | "file_extension": ".py", 277 | "mimetype": "text/x-python", 278 | "name": "python", 279 | "nbconvert_exporter": "python", 280 | "pygments_lexer": "ipython3", 281 | "version": "3.11.7" 282 | } 283 | }, 284 | "nbformat": 4, 285 | "nbformat_minor": 5 286 | } 287 | -------------------------------------------------------------------------------- /lessons/lesson-2/data/eu_countries/SOURCE: -------------------------------------------------------------------------------- 1 | # Countries of the European Union, 2022 2 | 3 | Data (c) EuroGeographics and UN-FAO 4 | 5 | - downloaded from https://ec.europa.eu/eurostat/web/gisco/geodata/reference-data/administrative-units- 6 | statistical-units/countries, 7 | - filtered to include only E.U. countries, and 8 | - clipped to a bounding box of [-12.5, 34, 35.5, 70] degrees 9 | -------------------------------------------------------------------------------- /lessons/lesson-2/data/eu_countries/eu_countries_2022.gpkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/eu_countries/eu_countries_2022.gpkg -------------------------------------------------------------------------------- /lessons/lesson-2/data/eu_countries/eu_countries_EPSG3035.gpkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/eu_countries/eu_countries_EPSG3035.gpkg -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_municipalities/SOURCE: -------------------------------------------------------------------------------- 1 | # Municipalities of Finland, 2021 2 | 3 | Data (c) Maanmittauslaitos/National Land Survey of Finland 4 | Downloaded from http://urn.fi/urn:nbn:fi:att:dc71353c-8063-4c67-abc1-3193a130b990 5 | -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_municipalities/finland_municipalities_2021.gpkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_municipalities/finland_municipalities_2021.gpkg -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/SOURCE: -------------------------------------------------------------------------------- 1 | # Topographic database of Finland, 2022 2 | 3 | (c) Maanmittauslaitos 4 | (Licensed under CC-BY-4.0) 5 | 6 | Downloaded from https://paituli.csc.fi/, and re-compressed using geopandas 7 | (see script `download-mml-data.py` in this directory) 8 | 9 | Data description: http://urn.fi/urn:nbn:fi:att:d32f46b8-17cb-4f78-8dad-d026179835dd 10 | -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/area_by_terrain_class.csv: -------------------------------------------------------------------------------- 1 | CLASS,area 2 | 32111,1833.7467855105149 3 | 32112,2148.1682085057346 4 | 32200,105736.82189193157 5 | 32417,102.66777949892219 6 | 32421,679279.6545039193 7 | 32500,109746.68783052999 8 | 32611,13148071.439269768 9 | 32612,107343.07797553702 10 | 32800,1407230.9490656988 11 | 32900,615839.1249592721 12 | 33000,659464.6758634493 13 | 33100,3769075.6667607124 14 | 34100,12362888.100333406 15 | 34300,1627.0788294986928 16 | 34700,2785.7511990005496 17 | 35300,1382939.657899599 18 | 35411,392800.40747867135 19 | 35412,4708320.67303053 20 | 35421,67863.74341145632 21 | 36200,9986966.295089 22 | 36313,43460.28908141164 23 | -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/download-mml-data.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | """Download one topographic database grid cell from Maanmittauslaitos""" 4 | 5 | import io 6 | import pathlib 7 | import zipfile 8 | 9 | import requests 10 | 11 | 12 | TOPOGRAPHIC_DATABASE_DOWNLOAD_URL = ( 13 | "http://www.nic.funet.fi/" 14 | "index/geodata/mml/maastotietokanta/" 15 | "2020/shp/L4/L41/L4132R.shp.zip" 16 | ) 17 | TOPOGRAPHIC_DATABASE_DIRECTORY = pathlib.Path().resolve() 18 | 19 | with requests.get(TOPOGRAPHIC_DATABASE_DOWNLOAD_URL) as response: 20 | zipfile.ZipFile( 21 | io.BytesIO(response.content) 22 | ).extractall(TOPOGRAPHIC_DATABASE_DIRECTORY) 23 | 24 | # Remove a few of the largest files (not used in the course) 25 | large_files = [ 26 | "r_L4132R_v.*", 27 | "r_L4132R_p.*", 28 | "l_L4132R_v.*", 29 | "m_L4132R_v.*", 30 | "k_L4132R_v.*", 31 | ] 32 | for file in TOPOGRAPHIC_DATABASE_DIRECTORY.iterdir(): 33 | for large_file_pattern in large_files: 34 | if file.match(large_file_pattern): 35 | file.unlink() 36 | break 37 | -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_p.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_p.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/h_L4132R_p.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_p.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_p.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/h_L4132R_p.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_p.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/h_L4132R_p.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_v.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_v.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/h_L4132R_v.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_v.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_v.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/h_L4132R_v.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/h_L4132R_v.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/h_L4132R_v.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_s.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_s.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/j_L4132R_s.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_s.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_s.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/j_L4132R_s.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_s.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/j_L4132R_s.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_v.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_v.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/j_L4132R_v.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_v.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_v.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/j_L4132R_v.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/j_L4132R_v.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/j_L4132R_v.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_s.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_s.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/k_L4132R_s.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_s.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_s.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/k_L4132R_s.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_s.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/k_L4132R_s.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_t.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_t.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/k_L4132R_t.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_t.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_t.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/k_L4132R_t.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/k_L4132R_t.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/k_L4132R_t.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_s.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_s.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/l_L4132R_s.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_s.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_s.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/l_L4132R_s.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_s.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/l_L4132R_s.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_t.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_t.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/l_L4132R_t.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_t.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_t.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/l_L4132R_t.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/l_L4132R_t.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/l_L4132R_t.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/lakes.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/lakes.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/lakes.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/lakes.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/lakes.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/lakes.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/lakes.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/lakes.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_p.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_p.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_p.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_p.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_p.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_p.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_p.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_p.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_s.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_s.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_s.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_s.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_s.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_s.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_s.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_s.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_t.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_t.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_t.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_t.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_t.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_t.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/m_L4132R_t.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/m_L4132R_t.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_p.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_p.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_p.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_p.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_p.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_p.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_p.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_p.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_s.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_s.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_s.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_s.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_s.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_s.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_s.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_s.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_t.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_t.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_t.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_t.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_t.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_t.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_t.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_t.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_v.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_v.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_v.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_v.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_v.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_v.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/n_L4132R_v.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/n_L4132R_v.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_s.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_s.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/r_L4132R_s.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_s.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_s.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/r_L4132R_s.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_s.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/r_L4132R_s.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_t.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_t.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/r_L4132R_t.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_t.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_t.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/r_L4132R_t.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/r_L4132R_t.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/r_L4132R_t.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_p.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_p.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_p.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_p.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_p.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_p.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_p.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_p.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_s.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_s.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_s.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_s.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_s.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_s.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_s.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_s.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_t.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_t.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_t.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_t.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_t.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_t.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_t.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_t.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_v.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_v.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_v.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_v.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_v.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_v.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/s_L4132R_v.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/s_L4132R_v.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32111.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32111.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32111.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32111.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32111.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32111.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32111.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32111.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32112.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32112.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32112.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32112.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32112.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32112.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32112.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32112.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32200.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32200.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32200.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32200.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32200.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32200.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32200.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32200.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32417.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32417.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32417.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32417.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32417.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32417.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32417.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32417.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32421.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32421.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32421.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32421.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32421.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32421.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32421.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32421.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32500.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32500.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32500.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32500.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32500.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32500.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32500.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32500.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32611.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32611.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32611.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32611.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32611.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32611.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32611.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32611.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32612.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32612.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32612.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32612.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32612.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32612.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32612.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32612.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32800.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32800.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32800.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32800.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32800.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32800.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32800.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32800.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32900.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32900.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32900.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32900.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32900.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32900.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_32900.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_32900.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33000.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33000.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_33000.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33000.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33000.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_33000.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33000.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_33000.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33100.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33100.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_33100.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33100.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33100.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_33100.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_33100.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_33100.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34100.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34100.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34100.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34100.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34100.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34100.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34100.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34100.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34300.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34300.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34300.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34300.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34300.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34300.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34300.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34300.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34700.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34700.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34700.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34700.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34700.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34700.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_34700.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_34700.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35300.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35300.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35300.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35300.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35300.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35300.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35300.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35300.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35411.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35411.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35411.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35411.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35411.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35411.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35411.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35411.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35412.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35412.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35412.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35412.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35412.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35412.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35412.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35412.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35421.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35421.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35421.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35421.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35421.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35421.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_35421.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_35421.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36200.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36200.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_36200.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36200.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36200.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_36200.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36200.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_36200.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36313.cpg: -------------------------------------------------------------------------------- 1 | ISO-8859-1 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36313.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_36313.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36313.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_European_Terrestrial_Reference_System_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137.0,298.257222100911]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",27.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36313.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_36313.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/terrain_36313.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/terrain_36313.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_p.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_p.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/u_L4132R_p.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_p.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_p.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/u_L4132R_p.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_p.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/u_L4132R_p.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_v.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_v.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/u_L4132R_v.dbf -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_v.prj: -------------------------------------------------------------------------------- 1 | PROJCS["ETRF89_ETRS_TM35FIN",GEOGCS["GCS_ETRS89",DATUM["D_ETRS_1989",SPHEROID["Geodetic_Reference_System_of_1980",6378137,298.2572221009113]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]] -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_v.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/u_L4132R_v.shp -------------------------------------------------------------------------------- /lessons/lesson-2/data/finland_topographic_database/u_L4132R_v.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/finland_topographic_database/u_L4132R_v.shx -------------------------------------------------------------------------------- /lessons/lesson-2/data/world_countries/SOURCE: -------------------------------------------------------------------------------- 1 | # Countries of the world (admin-0), 2022 2 | 3 | Downloaded from naturalearthdata.com 4 | -------------------------------------------------------------------------------- /lessons/lesson-2/data/world_countries/ne_110m_admin_0_countries.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/data/world_countries/ne_110m_admin_0_countries.zip -------------------------------------------------------------------------------- /lessons/lesson-2/figs/paituli-download_700x650px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-2/figs/paituli-download_700x650px.png -------------------------------------------------------------------------------- /lessons/lesson-2/managing-file-paths.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "9102e9f0", 6 | "metadata": {}, 7 | "source": [ 8 | "# Managing file paths\n", 9 | "\n", 10 | "When working with data, it is important to keep track of where which input\n", 11 | "files are stored, and where which output files should be written. This is\n", 12 | "especially important when moving between computers or between virtual machines,\n", 13 | "like, for instance, the CSC Notebooks platform. Using a distributed code\n", 14 | "repository or versioning system, such as GitHub, adds another layer of\n", 15 | "complexity: file paths should often be *relative* to the git repo, or to the\n", 16 | "current file, as the repository can be cloned to any location on a different\n", 17 | "computer (and already a different user name on your school and personal\n", 18 | "computers might break things).\n", 19 | "\n", 20 | "Earlier, file paths have often been hard-coded strings, text values. If, for\n", 21 | "instance, an output file name had to be derived from an input file name, all\n", 22 | "kind of slicing and other string manipulation methods would be used. More\n", 23 | "recently, the `os.path` module of Python became popular, that allowed to split\n", 24 | "a path into directories, and file names into base names and file extensions.\n", 25 | "However, manipulating file paths still required knowledge about the computer a\n", 26 | "script would ultimately run on. For instance, on all Unix-based operating\n", 27 | "systems, such as Linux or MacOS, directories are separated by forward-slashes\n", 28 | "(`/`), while Microsoft Windows uses back-slashes (`\\`) (this particular problem\n", 29 | "can be worked around with `os.sep` and `os.path.join`, but not in a very\n", 30 | "convenient way). \n", 31 | "\n", 32 | "Since Python 3.4 (so, fairly recently), there exists a built-in module that\n", 33 | "eases much of the hassle with managing file paths:\n", 34 | "[`pathlib`](https://docs.python.org/3/library/pathlib.html). It provides an\n", 35 | "abstract layer on top of the actual operating system file paths that is\n", 36 | "consistent across computers. A `pathlib.Path()` object can be initiated with a\n", 37 | "file path (as a `str`), when created without an argument, it refers to the\n", 38 | "directory of the script or notebook file." 39 | ] 40 | }, 41 | { 42 | "cell_type": "code", 43 | "execution_count": null, 44 | "id": "12679a68", 45 | "metadata": {}, 46 | "outputs": [], 47 | "source": [] 48 | }, 49 | { 50 | "cell_type": "markdown", 51 | "id": "a2b8ddad", 52 | "metadata": {}, 53 | "source": [ 54 | "So far, this path is not checked against the actual directory structure, but we\n", 55 | "can `resolve()` it to convert it into an absolute path:" 56 | ] 57 | }, 58 | { 59 | "cell_type": "code", 60 | "execution_count": null, 61 | "id": "e0b5d88c", 62 | "metadata": {}, 63 | "outputs": [], 64 | "source": [] 65 | }, 66 | { 67 | "cell_type": "markdown", 68 | "id": "e56c6955", 69 | "metadata": {}, 70 | "source": [ 71 | "> **Note** \n", 72 | "> This path has now been expanded to reflect the directory structure of the computer it was run on. Most likely, the copy you are reading right now has been generated on [readthedocs.io](https://readthedocs.io/) servers, and the *‘current working directory’* is in a location you would not have expected.\n", 73 | "\n", 74 | "\n", 75 | "\n", 76 | "This path object now has a number of properties and methods. For instance, we\n", 77 | "can test whether the path exists in the file system, or whether it is a\n", 78 | "directory:" 79 | ] 80 | }, 81 | { 82 | "cell_type": "code", 83 | "execution_count": null, 84 | "id": "073bd87c", 85 | "metadata": {}, 86 | "outputs": [], 87 | "source": [] 88 | }, 89 | { 90 | "cell_type": "code", 91 | "execution_count": null, 92 | "id": "44e7e3af", 93 | "metadata": {}, 94 | "outputs": [], 95 | "source": [] 96 | }, 97 | { 98 | "cell_type": "markdown", 99 | "id": "3e813b3e", 100 | "metadata": {}, 101 | "source": [ 102 | "We could also rename or delete the path (but let’s not do this with the course\n", 103 | "content!):" 104 | ] 105 | }, 106 | { 107 | "cell_type": "code", 108 | "execution_count": null, 109 | "id": "d223d6da", 110 | "metadata": {}, 111 | "outputs": [], 112 | "source": [ 113 | "# path.rename(\"new name\")\n", 114 | "\n", 115 | "# path.unlink() # delete if path is a file\n", 116 | "# path.rmdir() # delete if path is a directory" 117 | ] 118 | }, 119 | { 120 | "cell_type": "markdown", 121 | "id": "045a5017", 122 | "metadata": {}, 123 | "source": [ 124 | "Finally, to traverse within this path, you don’t have to think of whether you\n", 125 | "are running the script on Windows or Linux, and you most definitely don’t have\n", 126 | "to use string manipulation. To refer to a directory inside `path`, use the `/`\n", 127 | "(division operator) to append another path component (can be a string). For\n", 128 | "instance, to refer to a folder `data` within the same directory as this\n", 129 | "notebook, write the following:" 130 | ] 131 | }, 132 | { 133 | "cell_type": "code", 134 | "execution_count": null, 135 | "id": "ba3c0108", 136 | "metadata": {}, 137 | "outputs": [], 138 | "source": [] 139 | }, 140 | { 141 | "cell_type": "markdown", 142 | "id": "af63766a", 143 | "metadata": {}, 144 | "source": [ 145 | "To refer to ‘one directory up’ from a path, use its `.parent` property:" 146 | ] 147 | }, 148 | { 149 | "cell_type": "code", 150 | "execution_count": null, 151 | "id": "445b21d0", 152 | "metadata": {}, 153 | "outputs": [], 154 | "source": [ 155 | "path.parent" 156 | ] 157 | }, 158 | { 159 | "cell_type": "markdown", 160 | "id": "47f3ddba", 161 | "metadata": {}, 162 | "source": [ 163 | "`Path()` objects can be used (almost) anywhere a file path is expected as a\n", 164 | "variable of type `str`, as it automatically *typecasts* (converts) itself to a\n", 165 | "suitable type.\n", 166 | "\n", 167 | "In data science projects, it is a good habit to define a constant at the beginning of each notebook that points to the data directory, or multiple constants to point to, for instance, input and output directories. In today’s exercises we use different sample data sets from files stored in the same *data directory*. At the top of the notebooks, we thus define a constant `DATA_DIRECTORY` that we can later use to find the sample data set files:" 168 | ] 169 | }, 170 | { 171 | "cell_type": "code", 172 | "execution_count": null, 173 | "id": "54d9c129", 174 | "metadata": {}, 175 | "outputs": [], 176 | "source": [ 177 | "# location (directory) of the notebook\n", 178 | "import pathlib\n", 179 | "NOTEBOOK_PATH = pathlib.Path().resolve()\n", 180 | "DATA_DIRECTORY = NOTEBOOK_PATH / \"data\"" 181 | ] 182 | }, 183 | { 184 | "cell_type": "code", 185 | "execution_count": null, 186 | "id": "f6837c51", 187 | "metadata": {}, 188 | "outputs": [], 189 | "source": [ 190 | "# this can then be used, for instance, in `geopandas.read_file()` (see next section):\n", 191 | "import geopandas\n", 192 | "data_set = geopandas.read_file(DATA_DIRECTORY / \"finland_municipalities\" / \"finland_municipalities_2021.gpkg\")\n", 193 | "data_set.plot()" 194 | ] 195 | }, 196 | { 197 | "cell_type": "markdown", 198 | "id": "7eb5e1f8", 199 | "metadata": {}, 200 | "source": [ 201 | "> **Note** \n", 202 | "> **Constants** are values that cannot be modified once they have been defined. This helps optimize programs’ speed and memory footprint, and also allows the programmer to rely on a constant having a valid value.\n", 203 | "> \n", 204 | "> Python does not know the concept of a constant, per se. However, there is a convention to treat variables with an all-uppercase name as constants (e.g., they should not be modified).\n", 205 | "\n", 206 | "---\n", 207 | "\n", 208 | "> **Caution** \n", 209 | "> In the examples above, we used a path that we `resolve()`d earlier on. This further improves compatibility and consistency across operating systems and local installations.\n", 210 | "> \n", 211 | "> Especially when using the path of the current file (as in `pathlib.Path()` without parameters), we recommend resolving the path before traversing into any other directory.\n" 212 | ] 213 | }, 214 | { 215 | "cell_type": "code", 216 | "execution_count": null, 217 | "id": "8a4ef056-fb8f-4636-ba5b-aa0f392f60ee", 218 | "metadata": {}, 219 | "outputs": [], 220 | "source": [] 221 | } 222 | ], 223 | "metadata": { 224 | "kernelspec": { 225 | "display_name": "Python 3 (ipykernel)", 226 | "language": "python", 227 | "name": "python3" 228 | }, 229 | "language_info": { 230 | "codemirror_mode": { 231 | "name": "ipython", 232 | "version": 3 233 | }, 234 | "file_extension": ".py", 235 | "mimetype": "text/x-python", 236 | "name": "python", 237 | "nbconvert_exporter": "python", 238 | "pygments_lexer": "ipython3", 239 | "version": "3.11.7" 240 | } 241 | }, 242 | "nbformat": 4, 243 | "nbformat_minor": 5 244 | } 245 | -------------------------------------------------------------------------------- /lessons/lesson-2/vector-data-io.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "d2c25fc6", 6 | "metadata": {}, 7 | "source": [ 8 | "# Vector Data I/O\n", 9 | "\n", 10 | "One of the first steps of many analysis workflow is to read data from a file,\n", 11 | "one of the last steps often writes data to an output file. To the horror of\n", 12 | "many geoinformatics scholars, there exist many file formats for GIS data: the\n", 13 | "old and hated but also loved and established [ESRI\n", 14 | "Shapefile](https://en.wikipedia.org/wiki/Shapefile), the universal [Geopackage\n", 15 | "(GPKG)](https://en.wikipedia.org/wiki/GeoPackage), and the web-optimised\n", 16 | "[GeoJSON](https://en.wikipedia.org/wiki/GeoJSON) are just a few of the more\n", 17 | "well-known examples.\n", 18 | "\n", 19 | "Fear not, Python can read them all (no guarantees, though)! \n", 20 | "\n", 21 | "Most of the current Python GIS packages rely on the\n", 22 | "[GDAL/OGR](https://gdal.org/) libraries, for which modern interfaces exist in\n", 23 | "the form of the [fiona](https://fiona.readthedocs.io) and\n", 24 | "[rasterio](https://rasterio.readthedocs.io) Python packages. \n", 25 | "\n", 26 | "Today, we’ll concentrate on vector data, so let’s first take a closer look at\n", 27 | "fiona’s capabilities, and then import and export data using\n", 28 | "[geopandas](https://geopandas.org/), which uses fiona under its hood.\n", 29 | "\n", 30 | "\n", 31 | "---\n", 32 | "\n", 33 | "\n", 34 | "> **Note: Defining a data directory constant** \n", 35 | "> To make it easier to manage the paths of input and output data files, it is a good habit to [define a constant pointing to the data directory](managing-file-paths) at the top of a notebook.\n" 36 | ] 37 | }, 38 | { 39 | "cell_type": "code", 40 | "execution_count": null, 41 | "id": "a46f5964", 42 | "metadata": {}, 43 | "outputs": [], 44 | "source": [ 45 | "import pathlib \n", 46 | "NOTEBOOK_PATH = pathlib.Path().resolve()\n", 47 | "DATA_DIRECTORY = NOTEBOOK_PATH / \"data\"" 48 | ] 49 | }, 50 | { 51 | "cell_type": "markdown", 52 | "id": "59de17d9", 53 | "metadata": {}, 54 | "source": [ 55 | "---\n", 56 | "\n", 57 | "\n", 58 | "## File formats\n", 59 | "\n", 60 | "Fiona can read (almost) any geospatial file format, and write many of them. To\n", 61 | "find out which ones exactly (it might depend on the local installation and\n", 62 | "version, as well), we can print its list of file format drivers:" 63 | ] 64 | }, 65 | { 66 | "cell_type": "code", 67 | "execution_count": null, 68 | "id": "79c962de", 69 | "metadata": {}, 70 | "outputs": [], 71 | "source": [ 72 | "import fiona\n", 73 | "fiona.supported_drivers" 74 | ] 75 | }, 76 | { 77 | "cell_type": "markdown", 78 | "id": "fc98f8aa", 79 | "metadata": {}, 80 | "source": [ 81 | "> **Hint** \n", 82 | "> In this list, `r` marks file formats fiona can *r*ead, and `w` formats it can *w*rite. An `a` marks formats for which fiona can *a*ppend new data to existing files.\n", 83 | "> \n", 84 | "> Note that each of the listed ‘formats’ is, in fact, the name of the driver implementation, and many of the drivers can open several related file formats.\n", 85 | "> \n", 86 | "> Many more ‘exotic’ file formats might not show up in this list on your local installation, because you would need to install additional libraries. You can find a full list of file formats supported by GDAL/OGR (and fiona) on its webpage: [gdal.org/drivers/vector/](https://gdal.org/drivers/vector/).\n", 87 | "\n", 88 | "\n", 89 | "\n", 90 | "### Reading and writing geospatial data\n", 91 | "\n", 92 | "Fiona allows very low-level access to geodata files. This is sometimes\n", 93 | "necessary, but in typical analysis workflows, it is more convenient to use a\n", 94 | "higher-level library. The most commonly used one for geospatial vector data is\n", 95 | "[geopandas](https://geopandas.org). As mentioned above, it uses fiona for\n", 96 | "reading and writing files, and thus supports the same file formats.\n", 97 | "\n", 98 | "To read data from a *GeoPackage* file into a `geopandas.GeoDataFrame` (a\n", 99 | "geospatially-enabled version of a `pandas.DataFrame`), use\n", 100 | "`geopandas.read_file()`:" 101 | ] 102 | }, 103 | { 104 | "cell_type": "code", 105 | "execution_count": null, 106 | "id": "1e0e97a3", 107 | "metadata": {}, 108 | "outputs": [], 109 | "source": [] 110 | }, 111 | { 112 | "cell_type": "markdown", 113 | "id": "5262fa5f", 114 | "metadata": {}, 115 | "source": [ 116 | "Reading a local GPKG file is most likely the easiest task for a GIS package.\n", 117 | "However, in perfect Python ‘Swiss pocket knife’ manner, geopandas can also read\n", 118 | "Shapefiles **inside a ZIP archive**, and/or straight **from an Internet URL**.\n", 119 | "For example, downloading, unpacking and opening a data set of NUTS regions from\n", 120 | "the [European Union’s GISCO/eurostat download\n", 121 | "page](https://ec.europa.eu/eurostat/web/gisco/geodata/reference-data/administrative-units-statistical-units/nuts)\n", 122 | "is one line of code:\n", 123 | "\n", 124 | "```{code}\n", 125 | "nuts_regions = geopandas.read_file(\"https://gisco-services.ec.europa.eu/distribution/v2/nuts/shp/NUTS_RG_60M_2021_3035.shp.zip\")\n", 126 | "nuts_regions.head()\n", 127 | "```" 128 | ] 129 | }, 130 | { 131 | "cell_type": "code", 132 | "execution_count": null, 133 | "id": "49583e11", 134 | "metadata": { 135 | "tags": [ 136 | "remove-input", 137 | "remove-output" 138 | ] 139 | }, 140 | "outputs": [], 141 | "source": [ 142 | "nuts_regions = geopandas.read_file(DATA_DIRECTORY / \"europe_nuts_regions.geojson\")\n", 143 | "nuts_regions.head()" 144 | ] 145 | }, 146 | { 147 | "cell_type": "markdown", 148 | "id": "af08516e", 149 | "metadata": {}, 150 | "source": [ 151 | "#### Writing geospatial data to a file\n", 152 | "\n", 153 | "Writing data to a file is equally straight-forward: simply use the [`to_file()`\n", 154 | "method](https://geopandas.org/en/stable/docs/reference/api/geopandas.GeoDataFrame.to_file.html#geopandas.GeoDataFrame.to_file)\n", 155 | "of a `GeoDataFrame`.\n", 156 | "\n", 157 | "If we want to keep a local copy of the NUTS region data set we just opened\n", 158 | "on-the-fly from an internet address, the following saves the data to a GeoJSON\n", 159 | "file (the file format is guessed from the file name):" 160 | ] 161 | }, 162 | { 163 | "cell_type": "code", 164 | "execution_count": null, 165 | "id": "6f3d2b9a", 166 | "metadata": {}, 167 | "outputs": [], 168 | "source": [] 169 | }, 170 | { 171 | "cell_type": "markdown", 172 | "id": "1af93aae", 173 | "metadata": {}, 174 | "source": [ 175 | "> **Note** \n", 176 | "> Reading and writing geospatial data from or to a file is almost identical for all file formats supported by geopandas, fiona, and GDAL. Check out [geopandas’ documentation](https://geopandas.org/en/stable/docs/user_guide/io.html) for hints on how to fine-tune reading or writing a file, and how to apply different filters (e.g., bounding boxes).\n", 177 | "\n", 178 | "\n", 179 | "\n", 180 | "### Reading and writing from and to databases (RDBMS)\n", 181 | "\n", 182 | "Geopandas has native support for read/write access to PostgreSQL/PostGIS\n", 183 | "databases, using its\n", 184 | "[`geopandas.read_postgis()`](https://geopandas.org/en/stable/docs/reference/api/geopandas.read_postgis.html) function and the\n", 185 | "[`GeoDataFrame.to_postgis()`](https://geopandas.org/en/stable/docs/reference/api/geopandas.GeoDataFrame.to_postgis.html)\n", 186 | "method. For the database connection, you can use, for instance, the\n", 187 | "`sqlalchemy` package.\n", 188 | "\n", 189 | "```{code}\n", 190 | "import sqlalchemy\n", 191 | "DB_CONNECTION_URL = \"postgresql://myusername:mypassword@myhost:5432/mydatabase\";\n", 192 | "db_engine = sqlalchemy.create_engine(DB_CONNECTION_URL)\n", 193 | "\n", 194 | "countries = geopandas.read_postgis(\n", 195 | " \"SELECT name, geometry FROM countries\",\n", 196 | " db_engine\n", 197 | ")\n", 198 | "countries.to_postgis(\n", 199 | " \"new_table\", \n", 200 | " db_engine\n", 201 | ")\n", 202 | "```\n", 203 | "\n", 204 | "\n", 205 | "### Reading data directly from a WFS (Web feature service) endpoint\n", 206 | "\n", 207 | "Geopandas can also read data directly from a WFS endpoint, such as, for instance the geodata APIs of [Helsinki Region Infoshare](https://hri.fi). Constructing a valid WFS URI (address) is not part of this course (but check, for instance, the properties of a layer added to QGIS).\n", 208 | "\n", 209 | "The following code loads a population grid of Helsinki from 2022. The parameters encoded into the WFS address specify the layer name, a bounding box, and the requested reference system." 210 | ] 211 | }, 212 | { 213 | "cell_type": "code", 214 | "execution_count": null, 215 | "id": "63813b20", 216 | "metadata": { 217 | "tags": [ 218 | "remove-input" 219 | ] 220 | }, 221 | "outputs": [], 222 | "source": [ 223 | "population_grid = geopandas.read_file(\n", 224 | " \"https://kartta.hsy.fi/geoserver/wfs\"\n", 225 | " \"?service=wfs\"\n", 226 | " \"&version=2.0.0\"\n", 227 | " \"&request=GetFeature\"\n", 228 | " \"&typeName=asuminen_ja_maankaytto:Vaestotietoruudukko_2022\"\n", 229 | " \"&srsName=EPSG:3879\"\n", 230 | " \"&bbox=25494767,6671328,25497720,6673701,EPSG:3879\",\n", 231 | " crs=\"EPSG:3879\"\n", 232 | ")\n", 233 | "population_grid.head()" 234 | ] 235 | }, 236 | { 237 | "cell_type": "code", 238 | "execution_count": null, 239 | "id": "a3f8493f-af61-4dd6-9648-8dab16ca80a6", 240 | "metadata": {}, 241 | "outputs": [], 242 | "source": [] 243 | } 244 | ], 245 | "metadata": { 246 | "kernelspec": { 247 | "display_name": "Python 3 (ipykernel)", 248 | "language": "python", 249 | "name": "python3" 250 | }, 251 | "language_info": { 252 | "codemirror_mode": { 253 | "name": "ipython", 254 | "version": 3 255 | }, 256 | "file_extension": ".py", 257 | "mimetype": "text/x-python", 258 | "name": "python", 259 | "nbconvert_exporter": "python", 260 | "pygments_lexer": "ipython3", 261 | "version": "3.11.7" 262 | } 263 | }, 264 | "nbformat": 4, 265 | "nbformat_minor": 5 266 | } 267 | -------------------------------------------------------------------------------- /lessons/lesson-3/data/helsinki_addresses/addresses.txt: -------------------------------------------------------------------------------- 1 | id;addr 2 | 1000;Itämerenkatu 14, 00101 Helsinki, Finland 3 | 1001;Kampinkuja 1, 00100 Helsinki, Finland 4 | 1002;Kaivokatu 8, 00101 Helsinki, Finland 5 | 1003;Hermannin rantatie 1, 00580 Helsinki, Finland 6 | 1005;Tyynenmerenkatu 9, 00220 Helsinki, Finland 7 | 1006;Kontulantie 18, 00940 Helsinki, Finland 8 | 1007;Itäväylä 3, 00950 Helsinki, Finland 9 | 1008;Tapulikaupungintie 3, 00750 Helsinki, Finland 10 | 1009;Sompionpolku 2, 00730 Helsinki, Finland 11 | 1010;Atomitie 5, 00370 Helsinki, Finland 12 | 1011;Rautatientori 1, 00100 Helsinki, Finland 13 | 1012;Kuparitie 8, 00440 Helsinki, Finland 14 | 1013;Rumpupolku 8, 00420 Helsinki, Finland 15 | 1014;Mäkitorpantie 1, 00620 Helsinki, Finland 16 | 1015;Malminkaari 15, 00700 Helsinki, Finland 17 | 1016;Kylätie 23, 00320 Helsinki, Finland 18 | 1017;Malminkartanontie 17, 00410 Helsinki, Finland 19 | 1018;Oulunkylän tori 2b, 00640 Helsinki, Finland 20 | 1019;Ratapihantie 6, 00101 Helsinki, Finland 21 | 1020;Pitäjänmäentie 15, 00370 Helsinki, Finland 22 | 1021;Eskolantie 2, 00720 Helsinki, Finland 23 | 1022;Tattariharjuntie, 00700 Helsinki, Finland 24 | 1023;Tallinnanaukio 1, 00930 Helsinki, Finland 25 | 1024;Tyynylaavantie 7, 00980 Helsinki, Finland 26 | 1025;Myllypurontie 5, 00920 Helsinki, Finland 27 | 1026;Mellunmäenraitio 6, 00970 Helsinki, Finland 28 | 1027;Vaasanpolku 2, 00101 Helsinki, Finland 29 | 1028;Hiihtäjäntie 2, 00810 Helsinki, Finland 30 | 1029;Ukko-Pekan porras 2, 00570 Helsinki, Finland 31 | 1030;Siltasaarenkatu 16, 00530 Helsinki, Finland 32 | 1031;Urho Kekkosen katu 1, 00100 Helsinki, Finland 33 | 1032;Ruoholahdenkatu 17, 00101 Helsinki, Finland 34 | 1033;Tyynenmerenkatu 3, 00220 Helsinki, Finland 35 | 1034;Vilhonkatu 4, 00101 Helsinki, Finland 36 | 37 | -------------------------------------------------------------------------------- /lessons/lesson-3/data/helsinki_city_districts/SOURCE: -------------------------------------------------------------------------------- 1 | # Helsinki City Districts 2 | 3 | Downloaded and cleaned from https://hri.fi/data/en_GB/dataset/helsingin-piirijako 4 | -------------------------------------------------------------------------------- /lessons/lesson-3/data/helsinki_city_districts/helsinki_city_districts_2021.gpkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automating-GIS-processes/notebooks/e809e7df469a75afcf9a1736d9131270f4ef7c72/lessons/lesson-3/data/helsinki_city_districts/helsinki_city_districts_2021.gpkg -------------------------------------------------------------------------------- /lessons/lesson-3/geocoding-in-geopandas.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "28aa2695", 6 | "metadata": {}, 7 | "source": [ 8 | "# Geocoding in geopandas\n", 9 | "\n", 10 | "Geopandas supports geocoding via a library called\n", 11 | "[geopy](http://geopy.readthedocs.io/), which needs to be installed to use\n", 12 | "[geopandas’ `geopandas.tools.geocode()`\n", 13 | "function](https://geopandas.org/en/stable/docs/reference/api/geopandas.tools.geocode.html).\n", 14 | "`geocode()` expects a `list` or `pandas.Series` of addresses (strings) and\n", 15 | "returns a `GeoDataFrame` with resolved addresses and point geometries.\n", 16 | "\n", 17 | "Let’s try this out.\n", 18 | "\n", 19 | "We will geocode addresses stored in a semicolon-separated text file called\n", 20 | "`addresses.txt`. These addresses are located in the Helsinki Region in Southern\n", 21 | "Finland." 22 | ] 23 | }, 24 | { 25 | "cell_type": "code", 26 | "execution_count": null, 27 | "id": "a7ce03b3", 28 | "metadata": {}, 29 | "outputs": [], 30 | "source": [ 31 | "import pathlib\n", 32 | "NOTEBOOK_PATH = pathlib.Path().resolve()\n", 33 | "DATA_DIRECTORY = NOTEBOOK_PATH / \"data\"" 34 | ] 35 | }, 36 | { 37 | "cell_type": "code", 38 | "execution_count": null, 39 | "id": "0bc6de80", 40 | "metadata": {}, 41 | "outputs": [], 42 | "source": [ 43 | "import pandas\n", 44 | "addresses = pandas.read_csv(\n", 45 | " DATA_DIRECTORY / \"helsinki_addresses\" / \"addresses.txt\",\n", 46 | " sep=\";\"\n", 47 | ")\n", 48 | "\n", 49 | "addresses.head()" 50 | ] 51 | }, 52 | { 53 | "cell_type": "markdown", 54 | "id": "334d162e", 55 | "metadata": {}, 56 | "source": [ 57 | "We have an `id` for each row and an address in the `addr` column.\n", 58 | "\n", 59 | "\n", 60 | "## Geocode addresses using *Nominatim*\n", 61 | "\n", 62 | "In our example, we will use *Nominatim* as a *geocoding provider*. [*Nominatim*](https://nominatim.org/) is a library and service using OpenStreetMap data, and run by the OpenStreetMap Foundation. Geopandas’\n", 63 | "[`geocode()`\n", 64 | "function](hhttps://geopandas.org/en/stable/docs/reference/api/geopandas.tools.geocode.html) supports it natively.\n", 65 | "\n", 66 | "