• Stars
    star
    301
  • Rank 138,451 (Top 3 %)
  • Language
    Jupyter Notebook
  • License
    MIT License
  • Created about 4 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A beginner-friendly project to help you in open-source contributions. Data Structures & Algorithms in various programming languages Please leave a star ⭐ to support this project! ✨

Algo-Book-poster.png

License: MIT made-with-python Open Source Love svg1 PRs Welcome first-timers-only contributions welcome  GitHub contributors Maintenance GitHub forks GitHub Repo stars

A beginner friendly project to help you in open source contributions. An attempt to bring all the algorithms together.

Please see the Contributing Guidelines .

Overview

The goal of this project is to help the beginners with their contributions in Open Source and bring all the possible algorithms of Machine Learning and Python together. We aim to achieve this collaboratively, so feel free to contribute in any way you want, just make sure to follow the contribution guidelines.

What is Open - Source? Open Source Love svg3

The open source community provides a great opportunity for aspiring programmers to distinguish themselves; and by contributing to various projects, developers can improve their skills and get inspiration and support from like-minded people. When you contribute to something you already know and love, it can have so much more meaning, because you know how the tool is used and the good it does for you. Being part of an open source community opens you up to a broader range of people to interact with.

Read more about it here.

Let's Get Started:

Step 1. Create a Copy of this Repository

In order to work on an open-source project, you will first need to make your own copy of the repository. To do this, you should fork the repository and then clone it so that you have a local working copy.

Fork 🍴 this repo. Click on the Fork button at the top right corner.

With the repository forked, you’re ready to clone it so that you have a local working copy of the code base.

Clone the Repository

To make your own local copy of the repository you would like to contribute to, let’s first open up a terminal window.

We’ll use the git clone command along with the URL that points to your fork of the repository.

  • Open the Command Prompt
  • Type this command:
git clone https://github.com/your_username/AlgoBook

Step 2: Creating a New Branch

It is important to branch the repository so that you are able to manage the workflow, isolate your code, and control what features make it back to the main branch of the project repository.

When creating a branch, it is very important that you create your new branch off of the master branch. To create a new branch, from your terminal window, follow:

git branch new-branch
git checkout new-branch

Once you enter the git checkout command, you will receive the following output:

Switched to branch 'new-branch'

Step 3: Contribute

Make relevant changes. Add new algorithms. Add Readme files. Contribute in any way you feel like :)

Step 4: Commiting and Pushing:

Once you have modified an existing file or added a new file to the project, you can add it to your local repository, which we can do with the git add command.

git add filename or git add .

You can type the command git add -A or alternatively git add -all for all new files to be staged.

With our file staged, we’ll want to record the changes that we made to the repository with the git commit command.

The commit message is an important aspect of your code contribution; it helps the other contributors fully understand the change you have made, why you made it, and how significant it is.

git commit -m "commit message"

At this point you can use the git push command to push the changes to the current branch of your forked repository:

git push --set-upstream origin new-branch

Step 6: Create Pull Request

At this point, you are ready to make a pull request to the original repository.

You should navigate to your forked repository, and press the “Compare & pull request” button on the page.

GitHub will alert you that you are able to merge the two branches because there is no competing code. You should add in a title, a comment, and then press the “Create pull request” button.

Step 7: CONGRATULATIONS 💥 👏 ☺️

You have made it till the end. Kudos to you!!


Contents

Our content is basically divided into 5 segments for now. Please create an issue if you wish to add code in a language that we don't currently have here.

Where to upload the files

  • Your files should be uploaded directly into the corresponding folder (For instance, if you wrote code for an Algorithm Implementation in Python, it goes inside the Python folder and same goes for the ML Algorithm)
  • Under no circumstances create new folders within the language folders to upload your code unless specifically told to do so.

For any more issues and queries, please join our Discord server.

Feel free to reach out to us. Remember, collaboration is the key to open-source.

Please see the Contributing Guidelines .


Please STAR 🌟 this repository if you liked it and had fun :)

Maintainers! 😊


Aditya Kumar Gupta

💻 🖋

Paurush Tiwari

💻 🖋

Community

Join our Discord Server to get help in contributing, as well as stay up-to-date on issues and best practices.

As always, thanks to our amazing contributors!

Stargazers over time

Stargazers over time

More Repositories

1

Pixel-Processing

📷 This repository is focused on having various feature implementation of OpenCV in Python. The aim is to have a minimal implementation of all OpenCV features together, under one roof.
Jupyter Notebook
127
star
2

quiz.ai

An Encrypted Automatic Multiple-Choice Question Generator for Self-Assessment Using Natural Language Processing
HTML
18
star
3

Color-Recognizer

An application that provides color names and HTML/RGB mappings as output.
HTML
17
star
4

Fraud-Detection

A Person Of Interest identifier based on ENRON CORPUS data.
Jupyter Notebook
16
star
5

TEXTGEN

The main task of the character-level language model is to predict the next character given all previous characters in a sequence of data, i.e. generates text character by character.
Jupyter Notebook
10
star
6

StandSum

A PyPI package that does extractive text summarizer using Cosine Methods in NLTK.
Python
9
star
7

Deep-Dream

A computer vision program which uses a convolutional neural network to find and enhance patterns in images, thus creating a dream-like hallucinogenic appearance in the deliberately over-processed images.
Jupyter Notebook
5
star
8

Lung-Cancer-Detection

Data Science Bowl Challenge (DSB3)
Jupyter Notebook
3
star
9

Facial-Recognition-with-PCA

Face Recognition Implementation using PCA, eigenfaces, and SVM
Jupyter Notebook
3
star
10

Feature-Scaling

A package that can transform features by scaling each feature into a given range. This is more lightweight and easy to use than sklearn.preprocessing.MinMaxScaler
Python
3
star
11

Handwritten-Digit-MLP-Classification

Using Multi Layer Perceptron to build the model. Classifies the handwritten digits of the MNIST database with around 98% accuracy.
Jupyter Notebook
2
star
12

binogauss

A package that can calculate Gaussian as well as Binomial distributions.
Python
2
star
13

Titanic-Survival-Exploration

Very basic data exploration of the Titanic Dataset.
Jupyter Notebook
2
star
14

Customer-Segments

Analyzing a dataset containing data on various customers' annual spending amounts of diverse product categories for internal structure. Doing so would equip the distributor with insight into how to best structure their delivery service to meet the needs of each customer.
Jupyter Notebook
2
star
15

Lasso-Ridge-Regression-and-Elastic_Net-Regularization-from-Scratch

Basic implementation of Lasso, Ridge Regression and Elastic-Net Regularization.
Jupyter Notebook
2
star
16

Pencil-Sketch

Converts regular RGB images into Pencil-sketch.
Python
1
star
17

Time-Series-Prediction-from-Scratch

Training a simple RNN to do time-series prediction. Given some set of input data, it will be able to generate a prediction for the next time step.
Jupyter Notebook
1
star
18

Random-Forest-from-Scratch

A basic implementation of the Random Forest Classifier from Scratch and using Seaborn to find important features.
Jupyter Notebook
1
star
19

Boston-Housing

Evaluating the performance and predictive power of a model. Cross questioned several concepts of ML for better understanding.
Jupyter Notebook
1
star
20

Flower-Prediction

Basic Iris Flower Prediction. Learning how to host ML models using Flask and deploy it using Heroku.
HTML
1
star
21

CIFAR-10

Object Recognition in Images. This project uses CNN for the classification and recognition tasks.
Jupyter Notebook
1
star
22

AdaBoost-from-Scratch

A basic implementation of AdaBoost algorithm from Scratch.
Jupyter Notebook
1
star
23

Phyllotaxis

A just for fun project.
Python
1
star
24

Text-Learning

Basic usage of NLTK. Implementation of concepts like Stemmer, TfIdf, and text.CountVectors
Jupyter Notebook
1
star
25

Automatic-Essay-Scoring

A recurrent neural network method for determining the relationship between an essay and its grade. Using Long-Short Term Memory networks to represent the meaning of texts to demonstrate that a fully automated framework is able to achieve results.
Jupyter Notebook
1
star
26

Classifying-Fashion-Clothes

Fashion-MNIST is a dataset of Zalando's article images, consisting of a training set of 60,000 examples and a test set of 10,000 examples. Each example is a 28x28, gray-scale image, associated with a label from 10 classes.
Jupyter Notebook
1
star