General information#

Last updated: 2024-03-18 12:20:51

Course details#

  • Course number: 128.1.0162

  • Time: Sunday 16:10-19:00

  • Place: Building 72, room 249

  • Instructor: Michael Dorman (dorman@post.bgu.ac.il)

  • Grading:

  • Requirements:

    • Basic knowledge of GIS (e.g., “Intro to GIS” course)

    • Self study

  • Getting help:

Lecture plan#

The course lecture plan is given in Table 30.

Table 30 Course lecture plan#

Lesson

Topic

Date

01

Preface, Setting up the environment

2023-12-31

02

Python basics

2024-01-07

03

Conditionals and loops

2024-01-14

04

Arrays (numpy)

2024-01-21

05

Tables (pandas)

2024-01-28

06

Table reshaping and joins

2024-02-04

07

Geometries (shapely)

2024-02-11

08

Vector layers (geopandas)

2024-02-18

09

Geometric operations

2024-02-25

10

Rasters (rasterio)

2024-03-03

11

Summary & preparation for Exam

2024-03-10

Home assignments#

Submission dates#

The sumbission dates of home assignments are given in Table 31.

Table 31 Assignment submission dates#

Assignment

Topic(s)

Date

Home assignment 1

Python basics + Conditionals and loops

2024-02-04

Home assignment 2

Arrays (numpy) + Tables (pandas)

2024-02-25

Home assignment 3

Table reshaping and joins + Geometries (shapely)

2024-03-17

Home assignment 4

Vector layers (geopandas) + Geometric operations

2024-04-07

Instructions#

  • Assignments should be prepared and submitted individually (not in pairs, etc.)

  • The solution needs to be submitted on Moodle, as a Jupyter notebook (i.e., a single .ipynb file).

  • Use markdown cells or code comments to specify (Fig. 81) the following details at the top of the notebook:

    • Assignment number

    • Student name

    • Student ID

  • Use ## Question 1 and ## Question 2 in markdown cells to create headings marking the solution to question 1 and question 2 (Fig. 81).

  • The notebook needs to run without errors, and produce (print) the required outputs, assuming the person who runs the notebook:

    • Has all packages used in the book installed (see Python packages).

    • Runs the notebook from within a directory that contains the data and output sub-directories, with the course sample data and output files (see Sample data).

  • Avoid exporting any files in your code!

  • Make sure your solution is as general as possible. Namely, do not use indices or specific values in your solution, other than the values given in the question text. For example, if the question is “find the largest value in the list x=[4,7,9,2,8,5], the solution x[2] is wrong, because it uses the specific value 2.

  • You can use any function or method in the Python standard library (https://docs.python.org/3/library/) to solve the exercises, even if it is not in the material. However, you can only use third-party Python packages which are covered in the material (see What are we going to learn?); you cannot use any other third-party package in your solution.

  • When the solution requires importing one of the sample data or output files (see Sample data), use a relative path str starting with 'data' or 'output', and use / (!) as the separating character, as in 'data/carmel.csv'. That way, you assume that the notebook is going to be executed in a a directory which contains a sub-directory named data with all sample data files listed in Table 3.

_images/assignment_example.png

Fig. 81 Structure of .ipynb file for a submitted assignment#

Recordings#

2023#

2022#