My [day-wise] Python Learning journey
Python 3 Learning
- [Video] Basics concepts
- [Video] Machine Learning
- [Link] Selenium:Browser Automation
Python language reference
Python cheat sheets
- https://github.com/PrateekKumarSingh/CheatSheets
- https://becominghuman.ai/cheat-sheets-for-ai-neural-networks-machine-learning-deep-learning-big-data-678c51b4b463
Python quick reference cards
- Print function
- Comments
- Math module and mathematical operations
- Loop - For, While
- if, else, elif
- Functions
- Global and Local Variables
- Install Modules
- Importing modules
- Read, write, append files
- Class
- Getting User Input
- Statistics Module
-
- Mean, Median, Standard deviation, Variance
-
- Tuples and Lists
- Launching WebBrowser
- Multi-Dimensional List
- Reading CSV files
- Try and Except
- Multiline print
- Dictionaries
- Create, delete and nested with lists
- Using Builtin functions
- Format(), int(), float(), round(), floor(), ceil()
- OS module
- Current working directory, new, remove directory and renaming files
- Sys Module
- Passing cmdline arguments
- Stderr, stdout
- System-specific parameters and functions
- Basic URLLIB module usecases
- Requesting html response from a web url
- Encoding the url parameters
- Sending web requests using URLLIB module with custom headers
- Dowloading JSON data from a URL
- Regular expressions
- Identifiers \d \D \w \W etc
- Modifiers + $ ^ etc
- Functions .findall() , .search() _
- List comprehensions and usecases
- Example of regular and list comprehension approach
- UseCase-1 : performing operations on each item in the list
- UseCase-2 : filtering elements of a list, eg - Null, empty strings, negative numbers etc
- UseCase-3 : list flattening - convert a 2D list to 1D list
- String manipulations
- Slicing a string
- .split() and .join()
- reversed()
- .strip() , .lstrip() , .rstrip()
- .rjust() .ljust(), .center()
- UseCase - Printing data in tabular format using .center()
- MINI PROJECTS
- Dice Roll Simulator
- Guess the Number
- Hangman - Word guessing game
-
Parsing websites
- Extracting data from withing the HTML tags of websites using reglar expression and web request
-
TKinter module to make windows forms
- Basic form with labels and buttons
- Button onclick event handling
- Change label text dynamically
-
MINI PROJECT
- Calclator GUI (Using Tkinter module)
- Tkinter module to create MENU in windows forms
- Add drop down menu items under each menu
- Add functionalities to drop down menu items
- File > Save [Opens a File Dialog box to save the file]
- File > Exit
- Tools > Show Image
- Tools > Show Text
- Threading Module
- Creating a thread
- Thread lock() , acquire() , release()
- Queue
- CX Freeze module
- Define setup files
- Build executables (.exe) from Python scripts
- MatPlotLib module
- Loading coordinates from a csv file
- Plotting graph
- Scatter graph
- Bar graph
- Defining title, label, grid and legends
- Styling graphs
- Socket programming
- socket module
- socket.AF_INET (Address Family = IPv4)
- socket.SOCK_STREAM (Protocol = TCP) | socket.SOCK_DGRAM (Protocol = UDP)
- Multi-threaded port scanner using socket programming
- Listen\Bind ports
- Client\Server system using socket programming
-
Mini Project
- Chat System using Socket Programming
- Telnet.exe clients can connect to a chat room on port 5555 of the server and start chat with other users
- Multi-threaded client/server chat system
- Broadcast [1-to-all] adnd private [1-to-1] messages
- Chat room admin can Kick user(s) out of chat room
- Poke users in a chat room
- Ability to leave the chat room
- Chat System using Socket Programming
- Pandas module
- Convert dictionaries to Dataframes
- Slicing dataframes
- Making new columsn in dataframes
- SKLearn and Quandl module
- Get financial and economic datasets using Quandl
- Performing mathematical operations on dataframe columns
- Dataframe functions - .head() .tail() .shift() .fillna() dropna()
- Train, test, predict data using Linear regression or Simple vector machine model
- Features vs labels
- Training and predicting using a model
- Prepare training data and split in 2 parts, ~80% to train ~20% to test [ model_selection.train_test_split() ]
- Define a classifier/model, like LinearRegression, SVM (Simple vector Machine) and then Train the classifier using .fit()
- Test accuracy of the classifier with respect to test data from step 1 [~20% of data]
- Predict - Label = classifier.predict('Features')
- Best fit line and how regression works
- What is slope(m) and intercept(b)
- Linear Regression = mX + b
- What are Squared error?
- Squared error vs Absolute errors
- R-Squared / Coeffcient of determination
- Classification with K-Nearest neighbor (KNN)
-
Euclidean distance
-
Making your own k-NN (k-Nearest Neighbor) algorithm in python
-
Comparing the accuracy and confidence of your algorithm with SKLearn module's neighbors.KNeighborsClassifier()
-
Accuracy vs confidence in k-NN algorithm
- SKLearn Support Vector Machine (SVM) classifier
- Making your own Support Vector Machine (SVM) algorithm in python [Courtesy: ]
- Browser Automation using Selenium web driver with Python
- Python Web Scraping
- Using URLLib module and Regular expressions
- Using Beautiful Soup module
- Soft Marging Support vector machines, kernels and CVXOPT
- SKLearn KMeans() classifier and clustering data sets
- Applying SKLearn KMeans classifier on Titanic data set to see if it can classify survivors and deads accurately
- Making your own custom K_Means() classifier algorithm in python
- Applying custom K_Means() algorithm on Titanic data set
.Root
| README.md
|
+---.vscode
| launch.json
| tasks.json
|
+---Python Basics
| | 01_Print_Function.py
| | 02_Comment.py
| | 03_Math.py
| | 04_Variables.py
| | 05_While_Loop.py
| | 06_For_Loop.py
| | 07_If_Else.py
| | 08_Function.py
| | 09_Global_Local_Variable.py
| | 10_Install_Modules.py
| | 11_Import_modules.py
| | 12_Write_Append_Read_File.py
| | 13_Class.py
| | 14_User_Input.py
| | 15_Statistics_Module.py
| | 16_Tuples_List.py
| | 17_Using_WebBrowser.py
| | 18_MultiDimensional_List.py
| | 19_Reading_CSV.py
| | 20_Try_Except.py
| | 21_Multiline_print.py
| | 22_Dictionaries.py
| | 23_Builtin_Functions.py
| | 24_OS_Module.py
| | 25_SYS_Module.py
| | 26_URLLIB_Module_Basic.py
| | 27_URLLIB_Module_Custom_Headers.py
| | 28_URLLIB_Module_with_JSON.py
| | 29_Regular_Expressions.py
| | 30_List_Comprehensions.py
| | 31_String_Manipulations.py
| | 32_Parsing_Websites.py
| | 33_TKINTER_Module.py
| | 34_TKINTER_Add_Menu.py
| | 35_Threading_Module.py
| | 36_Threading_Advanced.py
| | 37_CX_Freeze_and_Making_Exes.py
| | 38_MatPlotLib_Module.py
| | 39_Sockets_Programming.py
| | 40_Multithreaded_Port_Scanner.py
| | 41_Listen_And_Bind_Ports.py
| | 42_Client_Server_Systems_With_Sockets.py
| | debug.log
| |
| +---MiniProjects
| | 1_Dice_Roll_Simulator.py
| | 2_Guess_The_Number.py
| | 3_Hangman.py
| | 4_Calculator_GUI.py
| | 5_Chat_System_On_Socket_Programming.py
| | readme.md
| |
| +---Resources
| | Python_3_Tips.jpg
| |
| \---SampleFiles
| coordinates1.csv
| coordinates2.csv
| example.csv
| GetHREF.py
| picture.jpg
| RequestWithHeader.txt
|
+---Python Machine Learning
| | 01_Pandas_Module.py
| | 02_Sklearn_and_Quandl_module.py
| | 03_Regression_Train_Test_Predict.py
| | 04_Best_Fit_Line_and_Regression.py
| | 05_Classification_with_SKLEARN_K_Nearest_Neighbor_Algorithm.py
| | 06_KNN_Algorithm_using_Python.py
| | 07_Test_Accuracy_of_kNN_Classifier_on_Cancer_Data.py
| | 08_Classification_with_SKLEARN_Support_Vector_Machine_Algorithm.py
| | 09_Creating_a_SVM_from_scratch.py
| | 10_Soft_Margin_SVM_and_Kernels_with_CVXOPT.py
| | 11_Clustering_DataSets_with_KMeans_Algorithm.py
| | 12_KMeans_on_Titanic_DataSet.py
| | 13_Creating_KMeans_from_scratch.py
| | 14_Custom_KMeans_Algorithm_on_Titanic_dataset.py
| |
| +---MiniProjects
| | 01_Twitter.py
| |
| +---Resources
| | Basic_Algebra.pdf
| | Python_For_DataScience.jpg_large
| | R_and_Python_DataScience.jpg
| |
| \---SampleFiles
| breast-cancer-wisconsin.txt
| Euclidean_Distance.jpg
| Intro to Regression.pdf
| linearregression.pickle
| StockPrediction.png
| titanic.xls
|
+---Python Selenium
| 01_Selenium_With_Python.py
|
+---Python Web Scraping
| 01_Using_URLLIB_and_REGEX.py
| 02_Using_Beautiful_Soup.py