2021 REU Course
This course introduces the REU students to various topics in Intelligent Systems Engineering. The course was taught in Summer 2021.
Rstudio with Git and GitHub Slides
|Rstudio with Git and GitHub Slides|
Programming with Python
Python is a great languge for doing data science and AI, a comprehensive list of features is available in book form. Please note that when installing Python, you always want to use a venv as this is best practice.
|Introduction to Python (ePub) (PDF)|
Installation of Python
|Installation of Python — June 7th, 2021 (AM)|
Update to the Video:
Best practices in Python recommend to use a Python venv. This is pretty easy to do and creates a separate Python environment for you so you do not interfere with your system Python installation. Some IDEs may do this automatically, but it is still best practice to install one and bind the IDE against it. To do this:
Download Python version 3.9.5 just as shown in the first lecture.
After the download you do an additional step as follows:
python3.9 -m venv ~/ENV3 source ~/ENV/bin/activate
you need to do the source every time you start a new window or on mac ass it to .zprofile
on Windows you first install gitbash and do all yuour terminal work from gitbash as this is more Linux-like. In gitbash, run
python -m venv ~/ENV3 ~/ENV/Script/activate
In case you like to add it to gitbash, you can add the source line to .bashrc and/or .bash_profile
In case you use VSCode, you can also do it individually in a directory where you have your code.
- On Mac:
cd TO YOUR DIR; python3.9 -m venv .
- On Windows
cd TO YOUR DIR; python -m venv .
Then start VSCode in the directory and it will ask you to use this venv. However, the global ENV3 venv may be better and you cen set your interpreter to it.
- On Mac:
On Pycharm we recommend you use the ENV3 and set the clobal interpreter
|Jupyter Notebooks — June 7th, 2021 (PM): This lecture provides an introduction to Jupyter Notebooks using Visual Studio as IDE.|
|Video-Github 2 — June 8th, 2021 (PM): In this lecture the student can learn how to create a project on RStudio and link it with a repository on GitHub to commit, pull and push the code from RStudio.|
Introduction to Python
|Slides: This introduction to Python cover the different data type, how to convert type of variable, understand and create flow control usign conditional statements.|
|Video-Introduction to Python (1) — June 9th, 2021 (AM): This introduction to Python cover the different data type, how to convert type of variable, understand and create flow control usign conditional statements.|
|Video-Introduction to Python (2) — June 9th, 2021 (PM): This introduction to Python cover the different data type, how to convert type of variable, understand and create flow control usign conditional statements.|
|Video-Introduction to Python (3) — June 10th, 2021 (AM): This lecture introduces the use of Google Colab to code your python program using the resources provided by Google. Also, DataFrame is introduced and use to manipulate and analyze data.|
|Slides — June 10th, 2021 (PM): String, Numbers, Booleans Flow of control Using If statements|
|Slides: String, Numbers, Booleans Flow of control Using If statements (2)|
|Python Exercises - Lab 2|
The first exercise will require a simple for loop, while the second is more complicated, requiring nested for loops and a break statement.
General Instructions: Create two different files with extension .ipnyb, one for each problem. The first file will be named factorial.ipnyb which is for the factorial problem, and the second prime_number.ipnyb for the prime number problem.
Write a program that can find the factorial of any given number. For example, find the factorial of the number 5 (often written as 5!) which is 12345 and equals 120. Your program should take as input an integer from the user.
Note: The factorial is not defined for negative numbers and the factorial of Zero is 1; that is 0! = 1.
- If the number is less than Zero return with an error message.
- Check to see if the number is Zero—if it is then the answer is 1—print this out.
- Otherwise use a loop to generate the result and print it out.
A Prime Number is a positive whole number, greater than 1, that has no other divisors except the number 1 and the number itself. That is, it can only be divided by itself and the number 1, for example the numbers 2, 3, 5 and 7 are prime numbers as they cannot be divided by any other whole number. However, the numbers 4 and 6 are not because they can both be divided by the number 2 in addition the number 6 can also be divided by the number 3.
You should write a program to calculate prime number starting from 1 up to the value input by the user.
- If the user inputs a number below 2, print an error message.
- For any number greater than 2 loop for each integer from 2 to that number and determine if it can be divided by another number (you will probably need two for loops for this; one nested inside the other).
- For each number that cannot be divided by any other number (that is its a prime number) print it out.
Motivation for the REU
|Video — June 11th, 2021 (AM): Motivation for the REU: Data is Driven Everything|
|Slides: Motivation for the REU: Data is Driven Everything|
|Slides: Descriptive Statistic|
|Video — June 28th, 2021 (AM): Working on GitHUb Template and Mendeley references management|
Data Science Tools
|Slides: Data Science Tools|
|Video — June 14th, 2021 (AM): Numpy|
|Video — June 14th, 2021 (PM): Pandas data frame|
|Video — June 15th, 2021 (AM): Web data mining|
|Video — June 15th, 2021 (PM): Pandas IO|
|Video — June 16th, 2021 (AM): Pandas|
|Video: Pycharm Installation and Virtual Environment setup — June 18th, 2021 (AM)|
|Video: This lecture the student can learn the different applications of Matrix Operation using images on Python. — June 21st, 2021 (AM)|
|Video: Data wrangling and Descriptive Statistic Using Python — June 21st, 2021 (AM)|
|Video: Data wrangling and Descriptive Statistic Using Python — June 22nd, 2021 (PM)|
|Video: FURY Visualization and Microsoft Lecture — June 25th, 2021 (PM)|
|Video: Instroduction to Probability — June 25th, 2021 (PM)|
|Video: Digital Twins and Virtual Tissue ussing CompuCell3D Simulating Cancer Somatic Evolution in nanoHUB — July 2nd, 2021 (AM)|
AI First Engineering
|Video: AI First Engineering: Learning material — June 25th, 2021 (AM)|
|Video: Adding content to your su21-reu repositories — June 17th, 2021 (PM)|
|Slides: AI First Engineering|
Datasets for Projects
|Video: Datasets for Projects: Data world and Kaggle — June 29th, 2021 (AM)|
|Video: Datasets for Projects: Data world and Kaggle part 2 — June 29th, 2021 (PM)|
Machine Learning Models
|Video: K-Means: Unsupervised model — June 30th, 2021 (AM)|
|Video: Support Vector Machine: Supervised model — July 2nd, 2021 (PM)|
|Slides: Support Vector Machine Supervised model.|
|Video: Neural Networks: Deep Learning Supervised model — July 6th, 2021 (AM)|
|Video: Neural Networks: Deep learning Model — July 6th, 2021 (AM)|
|Video: Data Visualization: Visualizaton for Data Science — July 7th, 2021 (AM)|
|Video: Convulotional Neural Networks: Deep learning Model — July 8th, 2021 (AM)|
Students Report Help
|Video: Student Report Help with Introduction and Datasets — July 7th, 2021 (AM)|
|Video: Student Report Help with Introduction and Datasets — July 13th, 2021 (AM)|
|Video: Chemo-Preventive Effect of Vegetables and Fruits Consumption on the COVID-19 Pandemic — July 1st, 2021 (AM)|
- Yedjou CG, Alo RA, Liu J, et al. Chemo-Preventive Effect of Vegetables and Fruits Consumption on the COVID-19 Pandemic. J Nutr Food Sci. 2021;4(2):029
- Geoffrey C. Fox, Gregor von Laszewski, Fugang Wang, Saumyadipta Pyne, AICov: An Integrative Deep Learning Framework for COVID-19 Forecasting with Population Covariates, J. data sci. 19(2021), no. 2, 293-313, DOI 10.6339/21-JDS1007