Few things to keep in mind before starting
- Learn By Doing, Practicing & Not Just Reading
- Code By Hand [very effective]
- Share, Teach, Discuss and Ask For Help
- Use Online Resources
- Be consistent
- Learn to Use Debugger
I have done all the below-mentioned concepts as part of the #100DaysOfCode challenge and the code can be found in my @github profile.
[Projects & exercise not done. let me know if you want the solutions]
Python Introduction
- Overview
- Python interpreter
- Setup machine (Jupyter Notebook / @Replit )
- Input & Output
- Write your first Python program which can ask a user for input and then display it.
Day 2
- Get familiar with built-in data types [Bool, Int, Float, List, Tuple, String, Set, Dict], no need to go in-depth yet.
- Learn about various operators [Logical, Equality, Comparison, Arithmetic]
Exercise
- Try writing expressions to check all the operators.
Exercise (using both loops)
- Accept number from user and calculate the sum of all numbers from 1 to the given number
- Write a program to display all prime numbers within a range
Exercise
- Write a short Python function, isMultiple(n, m), that takes two integer values and returns True if n is a multiple of m and False otherwise.
Day 5: Mini Projects
- Write a Python function that takes a sequence of int values & determines if there is a distinct pair of numbers in the sequence whose product is odd.
-Write a Python function that takes a sequence of numbers and determines if all the numbers are different.
Day 6
Spend the entire day on Strings
- Slicing
- Modify
- Concatenate
- Format
- String methods
Exercise
- Write a short Python function that counts the number of vowels in a given character string.
- Python program to check whether a string is Symmetrical or Palindrome
Day 7
Work on Lists & Tuples
- Access list items
- Change list item
- Add list item
- Remove list item
- Loop lists
- Comprehension
- Sort
- Copy list
- Join list
Exercise
- Write a program that outputs all possible strings formed by using: c, a, t, d, o, g exactly once.
Exercise
- Write a program to read through a file and print the contents of the file (line by line) all in upper case.
Day 10
Regular expressions
- Match Function
- Search Function
- Replace Function
- Patterns
- Option Flags
Day 11
Object-Oriented Programming
- Class definitions
- Using Objects
- Inheritance
- Abstraction
- Magic Methods
Exercise
- Try to implement Gaussian & Binomial Distributions using OOP
Day 12 - Project 1
Rock 🪨, Paper 🗞️, Scissors ✂️ Game
One of the most beloved games of all time and a simple Python project to test your skills. Start by making it player vs computer.
Skills used: Gain a better understanding of while loops and if statements.
Day 13 - Project 2
Guess🤔The Number
A fun Python project for groups or events where a random generator is needed. It’s useful for conducting lotteries, board games.
Skills used: Getting familiar with the random function, variables, integers, print, if/else, and while loops.
Day 14 - Project 3
Hangman 🕺
This Python game substitutes a word where the user guesses the letters. You will also need to create a counter to count the number of guesses of the wrong letters.
Skills used: Random library, boolean, input/output, char, string, and length.
Day 15
Review Everything that you have learned so far
- Python Introduction
- Built-in Data Types
- Operators
- Conditionals
- Iterations
- Functions
- Exceptions
- Strings
- Lists
- Tuples
- Sets
- Dictionaries
- Files
- Regular Expression
- Object-Oriented Programming
I would highly recommend getting a free copy of the book "Python for Everybody" - by Dr. Charles & R. Severance py4e.com/book.php
1) SL has a feedback mechanism.
UL has no feedback mechanism.
2) Supervised learning involves building a model for predicting, or estimating.
In unsupervised learning, we can learn relationships and structures from data
-regularization
-simpler model architecture
-more training data
-reduce noise in the data
-reduce the number of input attributes
-shorter training cycles
Since we're currently in July, so start from this month.
Understanding Data Science and getting started with Python
- what is data science?
- what does a data scientist do?
- find out various resources
- Set up the system
- Learn Python basics
- Introduction to Pandas & Numpy
August -
Mathematics, Statistics & SQL
- Linear Algebra
- Introduction to Probability
- Statistics - inferential & descriptive
- Exploratory Data Analysis
- SQL for Data science
- Projects on EDA and SQL
Start engaging in the Data Science & Machine Learning community
TDS is a Medium publication having audience-oriented content about Data Science, along with blogs on related fields such as Machine Learning, Programming, Visualization, and Artificial Intelligence.
DSC is one of the leading repositories of Data Science content that is regularly updated with the latest trends across domains such as Artificial Intelligence, Machine Learning, Deep Learning, Analytics, Big Data, and much more.
It is a Linear Algebra Library for #Python, the reason it is so important for Data Science is that almost all of the libraries in the PyData Ecosystem rely on NumPy as one of their main building blocks👨🏫.
NumPy arrays are the main way we use Numpy. Numpy arrays essentially come in two flavors: vectors and matrices. Vectors are strictly 1-d arrays and matrices are 2-d (but you should note a matrix can still have only one row or one column).
2⃣Built-in Methods
There are lots of built-in ways to generate Arrays
- zeros
- ones
- eye
- arange
- linspace
1. Business Understanding: We should have clarity of what is the exact problem we are going to solve.
What is the problem that we are trying to solve? - Asking the right questions as a Data Scientist starts with understanding the goal of the business.
2. Analytical Approach: How can we use data to answer the question? We should decide the analytical approach to follow which can be of 4 types
- Descriptive
- Statistical
- Predictive
- Prescriptive
and it indicates the necessary data content, formats, and sources to be gathered
Data scientist use their analytical and technical capabilities to extract meaningful insight from data.
2. Machine Learning Engineer
Machine Learning engineer's final output is the working software, and their audience for this output consists of other software components that run automatically with minimal human supervision. The decisions are made by machines.