Course Information
Course title
Computational Skills for Biological Data Analysis 
Semester
112-2 
Designated for
COLLEGE OF BIO-RESOURCES AND AGUICULTURE  DEPARTMENT OF AGRONOMY  
Instructor
STEVEN HUNG-HSI WU 
Curriculum Number
Agron5106 
Curriculum Identity Number
621EU7070 
Class
 
Credits
3.0 
Full/Half
Yr.
Half 
Required/
Elective
Elective 
Time
Tuesday 6,7,8(13:20~16:20) 
Remarks
The upper limit of the number of students: 45. 
 
Course introduction video
 
Table of Core Capabilities and Curriculum Planning
Association has not been established
Course Syllabus
Please respect the intellectual property rights of others and do not copy any of the course information without permission
Course Description

In the era of big data, proficiency in several fundamental computational skills is required to conduct high-quality analysis and reproducible research in multiple disciplines. Within the field of biology and agriculture, large-scale datasets are easily accessible due to the advancement in technology. The amount of data will continue to increase at a dramatic rate over the following decades. Students will be required to have the ability to process and analyse large amounts of data efficiently in the “-omic” and even "post-omic" era.

This course will introduce a few fundamental and transferable computational skills for students who work with biological data. These skills include but are not limited to command line interface, working with computer servers, software version control (Git and GitHub) for collaboration, software testing for reproducible analysis, working with the relational database (MySQL), data cleaning and manipulation.

Although many of these skill sets are transferable to fields outside of biology, this course will focus on their application to biological data.

 

Course Objective
At the completion of this course, students will be able to:
  • Work with the command line interface, navigate the filesystem, perform file manipulation, execute commands to solve simple tasks and connect to remote servers.
  • Utilise software version control systems (Git and GitHub) for reproducible work, collaborate with others, and perform software testing and validation.
  • Understand the principles and concepts of the relational database (MySQL), and be able to perform daily tasks, such as storing and retrieving data.
  • Work collaboratively in groups to solve computational challenges.
 
Course Requirement
  • This course will be conducted in English. All lectures, course materials, and assignments will be presented and conducted in English.
  • Cheating and plagiarism in assignments, exams or any other assessments are serious academic misconduct. All instances will be handled according to the university policy.
  • Students are required to have basic statistics knowledge. Any Statistics101 course that covers descriptive statistics, simple linear regression and ANOVA will be sufficient.
  • Students are required to have exposure to at least one programming language. It is recommended that students are familiar with the following basic concepts: declare variables, basic arithmetic operation, basic data type (R: vector, list, data.frame. Python: list, dictionary), declare functions.
 
Student Workload (expected study time outside of class per week)
2-6 hours 
Office Hours
Appointment required. 
Designated reading
 
References

 
Grading
 
No.
Item
%
Explanations for the conditions
1. 
Assignments 
72% 
Several updates based on the feedback from last year 
2. 
Software colloboration - Individual 
14% 
 
3. 
Software colloboration - Group 
14% 
 
 
Progress
Week
Date
Topic
Week 1
Feb/20  Introduction 
Week 2
Feb/27  Basic programming in Python and R – Part I 
Week 3
Mar/05  Basic programming in Python and R – Part II 
Week 4
Mar/12  Command line interface - Part I 
Week 5
Mar/19  Software version control with Git and GitHub 
Week 6
Mar/26  Introduction to the relational database 
Week 7
Apr/02  MySQL database - Basic operations 
Week 8
Apr/09  MySQL database - Advanced queries 
Week 9
Apr/16  MySQL database - Data manipulation 
Week 10
Apr/23  MySQL database - Admin 
Week 11
Apr/30  Collaboration on GitHub 
Week 12
May/07  Programming in Python and R - testing with unit testing 
Week 13
May/14  Programming in Python and R - error handling 
Week 14
May/21  Programming in Python and R- software development 
Week 15
May/28  Other topics in data analysis 
Week 16
Jun/04  Final group project presentation