B BGU course 2022

Last updated: 2022-02-21 17:13:53

B.1 Course aims

  • General knowledge in programming
  • Overview of spatial data processing and analysis in R

B.2 Course details

  • Course number: 128.1.0043
  • Time: Sunday 16:10-19:00
  • Place: Building 72, room 249
  • Instructor: Michael Dorman ()
  • Teaching Assistant: Rotem Reany ()
  • Grading: 6 exercises (50%) + exam (50%)
  • Requirements:
    • Basic knowledge of GIS (e.g., “Intro to GIS” course)
    • Self study
  • Getting help:

B.3 Lecture plan

Lesson Date Chapter Exercise
01 2021-10-17 The R environment
02 2021-10-24 Vectors Exercise 1
03 2021-10-31 Time series and function definitions
04 2021-11-07 Tables, conditionals and loops
05 2021-11-14 Matrices and rasters Exercise 2
06 2021-11-21 Matrices and rasters
07 2021-11-28 Raster algebra
2021-12-05 Vacation (Hanukkah)
08 2021-12-12 Raster algebra Exercise 3
09 2021-12-19 Vector layers
10 2021-12-26 Geometric operations with vector layers Exercise 4
11 2022-01-02 Geometric operations with rasters
12 2022-01-09 Combining rasters and vector layers Exercise 5

B.4 Exercise submission dates

Exercise Date
Exercise 1 2021-11-14
Exercise 2 2021-11-28
Exercise 3 2021-12-26
Exercise 4 2022-01-09
Exercise 5 2022-01-30
Exercise 6 (bonus) 2022-01-30

B.6 Exercise instructions

B.6.1 Guidelines

  • Submission is through Moodle only
  • The submission should be a single R code file
  • File name is your last name + exercise number, in English, such as dorman_01.R
  • The code needs to run as is, assuming that:
    • All required packages are installed
    • All data files are in the user’s working directory
  • Do not include install.packages expressions
  • Do include library expressions
  • Do not include setwd expressions
  • Self-check:
    • Start a new R session
    • Manually set the working directory to where the data files are
    • Run the entire script
  • Late submission up to -20%, and additional -10% per week, unless coordinated in advance
  • The code file should include the exercise number, your first name and last name (as comments), and mark the relevant code sections for each question (using comments). The necessary library expressions can be placed at the beginning of the script. For example:
# Exercise 01
# Michael Dorman

library(stars)

# Question 01
r = read_stars("MOD13A3_2000_2019.tif")
plot(r[,,,1])

# Question 02
...

B.6.2 Generality

  • The code needs to be as general as possible:
    • Do not use specific values except the ones given in the question
    • When there are intermediate results—assign them to a variable and use the variable, not the value
  • Question: what is the last value of c(5,3,1,7,2,3,2,6)?
  • Good solution:
x = c(5,3,1,7,2,3,2,6)
x[length(x)]
## [1] 6
  • Bad solution:
x = c(5,3,1,7,2,3,2,6)
x[8]
## [1] 6

B.6.3 Brackets

  • Use brackets to make sure the right order of operations is done
  • Question: print the subset of the last four values in c(5,3,1,7,2,3,2,6)
  • Correct solution:
x = c(5,3,1,7,2,3,2,6)
x[(length(x)-3):length(x)]
## [1] 2 3 2 6
  • Wrong solution:
x = c(5,3,1,7,2,3,2,6)
x[length(x)-3:length(x)]
## [1] 2 7 1 3 5

B.6.4 Required value or output

  • Note which outputs or printouts are requested

B.6.5 Packages

  • Do not use the sp, rgeos, rgdal and raster packages in the exercises.

B.7 Resources

B.7.1 Books: General

  • Murrell, P. (2010). Introduction to Data Technologies. Chapman and Hall/CRC. [PDF] [Website]
  • Wickham, H. (2014). Advanced R. Chapman and Hall/CRC. [HTML]

B.7.2 Books: Spatial data

  • Hengl, T. (2009). A Practical Guide to Geostatistical Mapping. [PDF]
  • Lovelace, R., Nowosad, J., Muenchow, J. (2019). Geocomputation with R. Chapman and Hall/CRC. [HTML]
  • Pebesma, E., Bivand, R. (in preparation). Spatial Data Science. [HTML]