13 |
14 | This dataset contains information of users in a social network. Those informations are the user id the gender the age and the estimated salary. A car company has just launched their brand new luxury SUV. And we're trying to see which of these users of the social network are going to buy this brand new SUV And the last column here tells If yes or no the user bought this SUV we are going to build a model that is going to predict if a user is going to buy or not the SUV based on two variables which are going to be the age and the estimated salary. So our matrix of feature is only going to be these two columns.
15 | We want to find some correlations between the age and the estimated salary of a user and his decision to purchase yes or no the SUV.
16 |
17 | ## Step 1 | Data Pre-Processing
18 |
19 | ### Importing the Libraries
20 |
21 | ```python
22 | import numpy as np
23 | import matplotlib.pyplot as plt
24 | import pandas as pd
25 | ```
26 | ### Importing the dataset
27 |
28 | Get the dataset from [here](https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/datasets/Social_Network_Ads.csv)
29 | ```python
30 | dataset = pd.read_csv('Social_Network_Ads.csv')
31 | X = dataset.iloc[:, [2, 3]].values
32 | y = dataset.iloc[:, 4].values
33 | ```
34 |
35 | ### Splitting the dataset into the Training set and Test set
36 |
37 | ```python
38 | from sklearn.cross_validation import train_test_split
39 | X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state = 0)
40 | ```
41 |
42 | ### Feature Scaling
43 |
44 | ```python
45 | from sklearn.preprocessing import StandardScaler
46 | sc = StandardScaler()
47 | X_train = sc.fit_transform(X_train)
48 | X_test = sc.transform(X_test)
49 | ```
50 | ## Step 2 | Logistic Regression Model
51 |
52 | The library for this job which is going to be the linear model library and it is called linear because the logistic regression is a linear classifier which means that here since we're in two dimensions, our two categories of users are going to be separated by a straight line. Then import the logistic regression class.
53 | Next we will create a new object from this class which is going to be our classifier that we are going to fit on our training set.
54 |
55 | ### Fitting Logistic Regression to the Training set
56 |
57 | ```python
58 | from sklearn.linear_model import LogisticRegression
59 | classifier = LogisticRegression()
60 | classifier.fit(X_train, y_train)
61 | ```
62 | ## Step 3 | Predection
63 |
64 | ### Predicting the Test set results
65 |
66 | ```python
67 | y_pred = classifier.predict(X_test)
68 | ```
69 |
70 | ## Step 4 | Evaluating The Predection
71 |
72 | We predicted the test results and now we will evaluate if our logistic regression model learned and understood correctly.
73 | So this confusion matrix is going to contain the correct predictions that our model made on the set as well as the incorrect predictions.
74 |
75 | ### Making the Confusion Matrix
76 |
77 | ```python
78 | from sklearn.metrics import confusion_matrix
79 | cm = confusion_matrix(y_test, y_pred)
80 | ```
81 |
82 | ## Visualization
83 |
84 |
7 |
8 |
9 | # Step 1: Data Preprocessing
10 | ```python
11 | import pandas as pd
12 | import numpy as np
13 | import matplotlib.pyplot as plt
14 |
15 | dataset = pd.read_csv('studentscores.csv')
16 | X = dataset.iloc[ : , : 1 ].values
17 | Y = dataset.iloc[ : , 1 ].values
18 |
19 | from sklearn.cross_validation import train_test_split
20 | X_train, X_test, Y_train, Y_test = train_test_split( X, Y, test_size = 1/4, random_state = 0)
21 | ```
22 |
23 | # Step 2: Fitting Simple Linear Regression Model to the training set
24 | ```python
25 | from sklearn.linear_model import LinearRegression
26 | regressor = LinearRegression()
27 | regressor = regressor.fit(X_train, Y_train)
28 | ```
29 | # Step 3: Predecting the Result
30 | ```python
31 | Y_pred = regressor.predict(X_test)
32 | ```
33 |
34 | # Step 4: Visualization
35 | ## Visualising the Training results
36 | ```python
37 | plt.scatter(X_train , Y_train, color = 'red')
38 | plt.plot(X_train , regressor.predict(X_train), color ='blue')
39 | ```
40 | ## Visualizing the test results
41 | ```python
42 | plt.scatter(X_test , Y_test, color = 'red')
43 | plt.plot(X_test , regressor.predict(X_test), color ='blue')
44 | ```
45 |
--------------------------------------------------------------------------------
/Code/Day3_Multiple_Linear_Regression.md:
--------------------------------------------------------------------------------
1 | # Multiple Linear Regression
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | ## Step 1: Data Preprocessing
10 |
11 | ### Importing the libraries
12 | ```python
13 | import pandas as pd
14 | import numpy as np
15 | ```
16 | ### Importing the dataset
17 | ```python
18 | dataset = pd.read_csv('50_Startups.csv')
19 | X = dataset.iloc[ : , :-1].values
20 | Y = dataset.iloc[ : , 4 ].values
21 | ```
22 |
23 | ### Encoding Categorical data
24 | ```python
25 | from sklearn.preprocessing import LabelEncoder, OneHotEncoder
26 | labelencoder = LabelEncoder()
27 | X[: , 3] = labelencoder.fit_transform(X[ : , 3])
28 | onehotencoder = OneHotEncoder(categorical_features = [3])
29 | X = onehotencoder.fit_transform(X).toarray()
30 | ```
31 |
32 | ### Avoiding Dummy Variable Trap
33 | ```python
34 | X = X[: , 1:]
35 | ```
36 |
37 | ### Splitting the dataset into the Training set and Test set
38 | ```python
39 | from sklearn.cross_validation import train_test_split
40 | X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size = 0.2, random_state = 0)
41 | ```
42 | ## Step 2: Fitting Multiple Linear Regression to the Training set
43 | ```python
44 | from sklearn.linear_model import LinearRegression
45 | regressor = LinearRegression()
46 | regressor.fit(X_train, Y_train)
47 | ```
48 |
49 | ## Step 3: Predicting the Test set results
50 | ```python
51 | y_pred = regressor.predict(X_test)
52 | ```
53 |
--------------------------------------------------------------------------------
/Info-graphs/Day 1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 1.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 12.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 2.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 23.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 3.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 33.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 33.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 4.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 43.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 43.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 54.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 54.jpg
--------------------------------------------------------------------------------
/Info-graphs/Day 7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Info-graphs/Day 7.jpg
--------------------------------------------------------------------------------
/Info-graphs/readme.md:
--------------------------------------------------------------------------------
1 | Each Day Infograph
2 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 Avik Jain
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Other Docs/data.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Other Docs/data.PNG
--------------------------------------------------------------------------------
/Other Docs/ets.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Other Docs/ets.png
--------------------------------------------------------------------------------
/Other Docs/readme.md:
--------------------------------------------------------------------------------
1 | Images for representation
2 |
--------------------------------------------------------------------------------
/Other Docs/test.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Other Docs/test.png
--------------------------------------------------------------------------------
/Other Docs/testing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Other Docs/testing.png
--------------------------------------------------------------------------------
/Other Docs/training.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Divyanshu-ISM/100-Days-Of-ML-Code/c3009b41272ce76ee1465aeaf40bf83752972b77/Other Docs/training.png
--------------------------------------------------------------------------------
/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 | ## Pull Request Prelude
2 | Thank you for your contribution :)
3 |
4 | Please complete the below steps before filing your PR:
5 |
6 | I have read and understood CONTRIBUTING document.
7 | I have read and understood CODE_OF_CONDUCT document.
8 | I have included tests for the changes in my PR. If not, I have included a rationale for why I haven't.
9 | I understand my PR may be closed if it becomes obvious I didn't actually perform all of these steps.
10 | ## Why this change is necessary and useful
11 | [Please explain in detail why the changes in this PR are needed.]
12 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 100-Days-Of-ML-Code
2 |
3 | 100 Days of Machine Learning Coding as proposed by [Siraj Raval](https://github.com/llSourcell)
4 |
5 | Get the datasets from [here](https://github.com/Avik-Jain/100-Days-Of-ML-Code/tree/master/datasets)
6 |
7 | ## Data PreProcessing | Day 1
8 | Check out the code from [here](https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/Code/Day%201_Data%20PreProcessing.md).
9 |
10 |
11 |
12 |
13 |
14 | ## Simple Linear Regression | Day 2
15 | Check out the code from [here](https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/Code/Day2_Simple_Linear_Regression.md).
16 |
17 |
18 |
19 |
20 |
21 | ## Multiple Linear Regression | Day 3
22 | Check out the code from [here](https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/Code/Day3_Multiple_Linear_Regression.md).
23 |
24 |
33 |
34 | ## Logistic Regression | Day 5
35 | Moving forward into #100DaysOfMLCode today I dived into the deeper depth of what Logistic Regression actually is and what is the math involved behind it. Learned how cost function is calculated and then how to apply gradient descent algorithm to cost function to minimize the error in prediction.
36 | Due to less time I will now be posting an infographic on alternate days.
37 | Also if someone wants to help me out in documentaion of code and already has some experince in the field and knows Markdown for github please contact me on LinkedIn :) .
38 |
39 | ## Implementing Logistic Regression | Day 6
40 | Check out the Code [here](https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/Code/Day%206%20Logistic%20Regression.md)
41 |
42 | ## K Nearest Neighbours | Day 7
43 |
44 |
45 |
46 |
47 | ## Math Behind Logistic Regression | Day 8
48 |
49 | #100DaysOfMLCode To clear my insights on logistic regression I was searching on the internet for some resource or article and I came across this article (https://towardsdatascience.com/logistic-regression-detailed-overview-46c4da4303bc) by Saishruthi Swaminathan.
50 |
51 | It gives a detailed description of Logistic Regression. Do check it out.
52 |
53 | ## Support Vector Machines | Day 9
54 | Got an intution on what SVM is and how it is used to solve Classification problem.
55 |
56 | ## SVM and KNN | Day 10
57 | Learned more about how SVM works and implementing the K-NN algorithm.
58 |
59 | ## Implementation of K-NN | Day 11
60 |
61 | Implemented the K-NN algorithm for classification. #100DaysOfMLCode
62 | Support Vector Machine Infographic is halfway complete. Will update it tomorrow.
63 |
64 | ## Support Vector Machines | Day 12
65 |
66 |
67 |
68 |
69 | ## Naive Bayes Classifier | Day 13
70 |
71 | Continuing with #100DaysOfMLCode today I went through the Naive Bayes classifier.
72 | I am also implementing the SVM in python using scikit-learn. Will update the code soon.
73 |
74 | ## Implementation of SVM | Day 14
75 | Today I implemented SVM on linearly related data. Used Scikit-Learn library. In Scikit-Learn we have SVC classifier which we use to achieve this task. Will be using kernel-trick on next implementation.
76 | Check the code [here](https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/Code/Day%2013%20SVM.md).
77 |
78 | ## Naive Bayes Classifier and Black Box Machine Learning | Day 15
79 | Learned about different types of naive bayes classifiers. Also started the lectures by [Bloomberg](https://bloomberg.github.io/foml/#home). First one in the playlist was Black Box Machine Learning. It gives the whole overview about prediction functions, feature extraction, learning algorithms, performance evaluation, cross-validation, sample bias, nonstationarity, overfitting, and hyperparameter tuning.
80 |
81 | ## Implemented SVM using Kernel Trick | Day 16
82 | Using Scikit-Learn library implemented SVM algorithm along with kernel function which maps our data points into higher dimension to find optimal hyperplane.
83 |
84 | ## Started Deep learning Specialization on Coursera | Day 17
85 | Completed the whole Week 1 and Week 2 on a single day. Learned Logistic regression as Neural Network.
86 |
87 | ## Deep learning Specialization on Coursera | Day 18
88 | Completed the Course 1 of the deep learning specialization. Implemented a neural net in python.
89 |
90 | ## The Learning Problem , Professor Yaser Abu-Mostafa | Day 19
91 | Started Lecture 1 of 18 of Caltech's Machine Learning Course - CS 156 by Professor Yaser Abu-Mostafa. It was basically an introduction to the upcoming lectures. He also explained Perceptron Algorithm.
92 |
93 | ## Started Deep learning Specialization Course 2 | Day 20
94 | Completed the Week 1 of Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization.
95 |
96 | ## Web Scraping | Day 21
97 | Watched some tutorials on how to do web scraping using Beautiful Soup in order to collect data for building a model.
98 |
99 | ## Is Learning Feasible? | Day 22
100 | Lecture 2 of 18 of Caltech's Machine Learning Course - CS 156 by Professor Yaser Abu-Mostafa. Learned about Hoeffding Inequality.
101 |
102 | ## Decision Trees | Day 23
103 |
104 |
105 |
106 |
107 | ## Introduction To Statistical Learning Theory | Day 24
108 | Lec 3 of Bloomberg ML course introduced some of the core concepts like input space, action space, outcome space, prediction functions, loss functions, and hypothesis spaces.
109 |
110 | ## Implementing Decision Trees | Day 25
111 | Check the code [here.](https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/Code/Day%2025%20Decision%20Tree.md)
112 |
113 | ## Jumped To Brush up Linear Algebra | Day 26
114 | Found an amazing [channel](https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw) on youtube 3Blue1Brown. It has a playlist called Essence of Linear Algebra. Started off by completing 4 videos which gave a complete overview of Vectors, Linear Combinations, Spans, Basis Vectors, Linear Transformations and Matrix Multiplication.
115 |
116 | Link to the playlist [here.](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab)
117 |
118 | ## Jumped To Brush up Linear Algebra | Day 27
119 | Continuing with the playlist completed next 4 videos discussing topics 3D Transformations, Determinants, Inverse Matrix, Column Space, Null Space and Non-Square Matrices.
120 |
121 | Link to the playlist [here.](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab)
122 |
123 | ## Jumped To Brush up Linear Algebra | Day 28
124 | In the playlist of 3Blue1Brown completed another 3 videos from the essence of linear algebra.
125 | Topics covered were Dot Product and Cross Product.
126 |
127 | Link to the playlist [here.](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab)
128 |
129 |
130 | ## Jumped To Brush up Linear Algebra | Day 29
131 | Completed the whole playlist today, videos 12-14. Really an amazing playlist to refresh the concepts of Linear Algebra.
132 | Topics covered were the change of basis, Eigenvectors and Eigenvalues, and Abstract Vector Spaces.
133 |
134 | Link to the playlist [here.](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab)
135 |
136 | ## Essence of calculus | Day 30
137 | Completing the playlist - Essence of Linear Algebra by 3blue1brown a suggestion popped up by youtube regarding a series of videos again by the same channel 3Blue1Brown. Being already impressed by the previous series on Linear algebra I dived straight into it.
138 | Completed about 5 videos on topics such as Derivatives, Chain Rule, Product Rule, and derivative of exponential.
139 |
140 | Link to the playlist [here.](https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr)
141 |
142 | ## Essence of calculus | Day 31
143 | Watched 2 Videos on topic Implicit Diffrentiation and Limits from the playlist Essence of Calculus.
144 |
145 | Link to the playlist [here.](https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr)
146 |
147 | ## Essence of calculus | Day 32
148 | Watched the remaining 4 videos covering topics Like Integration and Higher order derivatives.
149 |
150 | Link to the playlist [here.](https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr)
151 |
152 | ## Random Forests | Day 33
153 |
154 |
155 |
156 |
157 | ## Implementing Random Forests | Day 34
158 | Check the code [here.](https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/Code/Day%2034%20Random_Forest.md)
159 |
160 | ## But what *is* a Neural Network? | Deep learning, chapter 1 | Day 35
161 | An Amazing Video on neural networks by 3Blue1Brown youtube channel. This video gives a good understanding of Neural Networks and uses Handwritten digit dataset to explain the concept.
162 | Link To the [video.](https://www.youtube.com/watch?v=aircAruvnKk&t=7s)
163 |
164 | ## Gradient descent, how neural networks learn | Deep learning, chapter 2 | Day 36
165 | Part two of neural networks by 3Blue1Brown youtube channel. This video explains the concepts of Gradient Descent in an interesting way. 169 must watch and highly recommended.
166 | Link To the [video.](https://www.youtube.com/watch?v=IHZwWFHWa-w)
167 |
168 | ## What is backpropagation really doing? | Deep learning, chapter 3 | Day 37
169 | Part three of neural networks by 3Blue1Brown youtube channel. This video mostly discusses the partial derivatives and backpropagation.
170 | Link To the [video.](https://www.youtube.com/watch?v=Ilg3gGewQ5U)
171 |
172 | ## Backpropagation calculus | Deep learning, chapter 4 | Day 38
173 | Part four of neural networks by 3Blue1Brown youtube channel. The goal here is to represent, in somewhat more formal terms, the intuition for how backpropagation works and the video moslty discusses the partial derivatives and backpropagation.
174 | Link To the [video.](https://www.youtube.com/watch?v=tIeHLnjs5U8)
175 |
176 | ## Deep Learning with Python, TensorFlow, and Keras tutorial | Day 39
177 | Link To the [video.](https://www.youtube.com/watch?v=wQ8BIBpya2k&t=19s&index=2&list=PLQVvvaa0QuDfhTox0AjmQ6tvTgMBZBEXN)
178 |
179 | ## Loading in your own data - Deep Learning basics with Python, TensorFlow and Keras p.2 | Day 40
180 | Link To the [video.](https://www.youtube.com/watch?v=j-3vuBynnOE&list=PLQVvvaa0QuDfhTox0AjmQ6tvTgMBZBEXN&index=2)
181 |
182 | ## Convolutional Neural Networks - Deep Learning basics with Python, TensorFlow and Keras p.3 | Day 41
183 | Link To the [video.](https://www.youtube.com/watch?v=WvoLTXIjBYU&list=PLQVvvaa0QuDfhTox0AjmQ6tvTgMBZBEXN&index=3)
184 |
185 | ## Analyzing Models with TensorBoard - Deep Learning with Python, TensorFlow and Keras p.4 | Day 42
186 | Link To the [video.](https://www.youtube.com/watch?v=BqgTU7_cBnk&list=PLQVvvaa0QuDfhTox0AjmQ6tvTgMBZBEXN&index=4)
187 |
188 | ## K Means Clustering | Day 43
189 | Moved to Unsupervised Learning and studied about Clustering.
190 | Working on my website check it out [avikjain.me](http://www.avikjain.me/)
191 | Also found a wonderful animation that can help to easily understand K - Means Clustering [Link](http://shabal.in/visuals/kmeans/6.html)
192 |
193 |
194 |
195 |
196 |
197 | ## K Means Clustering Implementation | Day 44
198 | Implemented K Means Clustering. Check the code [here.]()
199 |
200 | ## Digging Deeper | NUMPY | Day 45
201 | Got a new book "Python Data Science HandBook" by JK VanderPlas Check the Jupyter notebooks [here.](https://github.com/jakevdp/PythonDataScienceHandbook)
202 | Started with chapter 2 : Introduction to Numpy. Covered topics like Data Types, Numpy arrays and Computations on Numpy arrays.
203 | Check the code -
204 | [Introduction to NumPy](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.00-Introduction-to-NumPy.ipynb)
205 | [Understanding Data Types in Python](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.01-Understanding-Data-Types.ipynb)
206 | [The Basics of NumPy Arrays](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.02-The-Basics-Of-NumPy-Arrays.ipynb)
207 | [Computation on NumPy Arrays: Universal Functions](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.03-Computation-on-arrays-ufuncs.ipynb)
208 |
209 | ## Digging Deeper | NUMPY | Day 46
210 | Chapter 2 : Aggregations, Comparisions and Broadcasting
211 | Link to Notebook:
212 | [Aggregations: Min, Max, and Everything In Between](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.04-Computation-on-arrays-aggregates.ipynb)
213 | [Computation on Arrays: Broadcasting](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.05-Computation-on-arrays-broadcasting.ipynb)
214 | [Comparisons, Masks, and Boolean Logic](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.06-Boolean-Arrays-and-Masks.ipynb)
215 |
216 | ## Digging Deeper | NUMPY | Day 47
217 | Chapter 2 : Fancy Indexing, sorting arrays, Struchered Data
218 | Link to Notebook:
219 | [Fancy Indexing](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.07-Fancy-Indexing.ipynb)
220 | [Sorting Arrays](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.08-Sorting.ipynb)
221 | [Structured Data: NumPy's Structured Arrays](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/02.09- Structured-Data-NumPy.ipynb)
222 |
223 | ## Digging Deeper | PANDAS | Day 48
224 | Chapter 3 : Data Manipulation with Pandas
225 | Covered Various topics like Pandas Objects, Data Indexing and Selection, Operating on Data, Handling Missing Data, Hierarchical Indexing, ConCat and Append.
226 | Link To the Notebooks:
227 | [Data Manipulation with Pandas](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.00-Introduction-to-Pandas.ipynb)
228 | [Introducing Pandas Objects](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.01-Introducing-Pandas-Objects.ipynb)
229 | [Data Indexing and Selection](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.02-Data-Indexing-and-Selection.ipynb)
230 | [Operating on Data in Pandas](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.03-Operations-in-Pandas.ipynb)
231 | [Handling Missing Data](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.04-Missing-Values.ipynb)
232 | [Hierarchical Indexing](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.05-Hierarchical-Indexing.ipynb)
233 | [Combining Datasets: Concat and Append](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.06-Concat-And-Append.ipynb)
234 |
235 | ## Digging Deeper | PANDAS | Day 49
236 | Chapter 3: Completed following topics- Merge and Join, Aggregation and grouping and Pivot Tables.
237 | [Combining Datasets: Merge and Join](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.07-Merge-and-Join.ipynb)
238 | [Aggregation and Grouping](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.08-Aggregation-and-Grouping.ipynb)
239 | [Pivot Tables](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.09-Pivot-Tables.ipynb)
240 |
241 | ## Digging Deeper | PANDAS | Day 50
242 | Chapter 3: Vectorized Strings Operations, Working with Time Series
243 | Links to Notebooks:
244 | [Vectorized String Operations](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.10-Working-With-Strings.ipynb)
245 | [Working with Time Series](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.11-Working-with-Time-Series.ipynb)
246 | [High-Performance Pandas: eval() and query()](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.12-Performance-Eval-and-Query.ipynb)
247 |
248 | ## Digging Deeper | MATPLOTLIB | Day 51
249 | Chapter 4: Visualization with Matplotlib
250 | Learned about Simple Line Plots, Simple Scatter Plotsand Density and Contour Plots.
251 | Links to Notebooks:
252 | [Visualization with Matplotlib](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.00-Introduction-To-Matplotlib.ipynb)
253 | [Simple Line Plots](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.01-Simple-Line-Plots.ipynb)
254 | [Simple Scatter Plots](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.02-Simple-Scatter-Plots.ipynb)
255 | [Visualizing Errors](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.03-Errorbars.ipynb)
256 | [Density and Contour Plots](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.04-Density-and-Contour-Plots.ipynb)
257 |
258 | ## Digging Deeper | MATPLOTLIB | Day 52
259 | Chapter 4: Visualization with Matplotlib
260 | Learned about Histograms, How to customize plot legends, colorbars, and buliding Multiple Subplots.
261 | Links to Notebooks:
262 | [Histograms, Binnings, and Density](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.05-Histograms-and-Binnings.ipynb)
263 | [Customizing Plot Legends](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.06-Customizing-Legends.ipynb)
264 | [Customizing Colorbars](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.07-Customizing-Colorbars.ipynb)
265 | [Multiple Subplots](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.08-Multiple-Subplots.ipynb)
266 | [Text and Annotation](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.09-Text-and-Annotation.ipynb)
267 |
268 | ## Digging Deeper | MATPLOTLIB | Day 53
269 | Chapter 4: Covered Three Dimensional Plotting in Mathplotlib.
270 | Links to Notebooks:
271 | [Three-Dimensional Plotting in Matplotlib](https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.12-Three-Dimensional-Plotting.ipynb)
272 |
273 | ## Hierarchical Clustering | Day 54
274 | Studied about Hierarchical Clustering.
275 | Check out this amazing [Visualization.](https://cdn-images-1.medium.com/max/800/1*ET8kCcPpr893vNZFs8j4xg.gif)
276 |