Display machine information for reproducibility:

sessionInfo()

Q1. Git/GitHub

No handwritten homework reports are accepted for this course. We work with Git and GitHub. Efficient and abundant use of Git, e.g., frequent and well-documented commits, is an important criterion for grading your homework.

  1. Apply for the Student Developer Pack at GitHub using your UCLA email. You’ll get GitHub Pro account for free (unlimited public and private repositories).

  2. Create a private repository biostat-203b-2022-winter and add Hua-Zhou and maschepps as your collaborators with write permission.

  3. Top directories of the repository should be hw1, hw2, … Maintain two branches main and develop. The develop branch will be your main playground, the place where you develop solution (code) to homework problems and write up report. The main branch will be your presentation area. Submit your homework files (R markdown file Rmd, html file converted from R markdown, all code and extra data sets to reproduce results) in main branch.

  4. After each homework due date, teaching assistant and instructor will check out your main branch for grading. Tag each of your homework submissions with tag names hw1, hw2, … Tagging time will be used as your submission time. That means if you tag your hw1 submission after deadline, penalty points will be deducted for late submission.

  5. After this course, you can make this repository public and use it to demonstrate your skill sets on job market.

Q2. Data ethics training

This exercise (and later in this course) uses the MIMIC-IV data, a freely accessible critical care database developed by the MIT Lab for Computational Physiology. Follow the instructions at https://mimic.mit.edu/docs/gettingstarted/ to (1) complete the CITI Data or Specimens Only Research course and (2) obtain the PhysioNet credential for using the MIMIC-IV data. Display the verification links to your completion report and completion certificate here. (Hint: The CITI training takes a couple hours and the PhysioNet credentialing takes a couple days; do not leave it to the last minute.)

Q3. Linux Shell Commands

  1. The /mnt/mimiciv/1.0 folder on teaching server contains data sets from MIMIC-IV. Refer to the documentation https://mimic.mit.edu/docs/iv/ for details of data files.

    ls -l /mnt/mimiciv/1.0
    ## total 24
    ## drwxr-xr-x. 2 root root 4096 Jan  4 21:48 core
    ## drwxr-xr-x. 2 root root 4096 Jan  4 21:51 hosp
    ## drwxr-xr-x. 2 root root 4096 Jan  4 21:52 icu
    ## -rw-r--r--. 1 root root  797 Jan  4 21:48 index.html
    ## -rw-r--r--. 1 root root 2518 Jan  4 21:54 LICENSE.txt
    ## -rw-r--r--. 1 root root 2459 Jan  4 21:48 SHA256SUMS.txt

    Please, do not put these data files into Git; they are big. Do not copy them into your directory. Do not decompress the gz data files. These create unnecessary big files on storage and are not big data friendly practices. Just read from the data folder /mnt/mimiciv/1.0 directly in following exercises.

    Use Bash commands to answer following questions.

  2. Display the contents in the folders core, hosp, icu. Why are these data files distributed as .csv.gz files instead of .csv (comma separated values) files? Read the page https://mimic.mit.edu/docs/iv/ to understand what’s in each folder.

  3. Briefly describe what bash commands zcat, zless, zmore, and zgrep do.

  4. What’s the output of following bash script?

    for datafile in /mnt/mimiciv/1.0/core/*.gz
      do
        ls -l $datafile
      done

    Display the number of lines in each data file using a similar loop.

  5. Display the first few lines of admissions.csv.gz. How many rows are in this data file? How many unique patients (identified by subject_id) are in this data file? (Hint: combine Linux commands zcat, head/tail, awk, sort, uniq, wc, and so on.)

  6. What are the possible values taken by each of the variable admission_type, admission_location, insurance, and ethnicity? Also report the count for each unique value of these variables. (Hint: combine Linux commands zcat, head/tail, awk, uniq -c, wc, and so on.)