From a1f6519cfa6ffc11a05e488639fdab74dcc53a81 Mon Sep 17 00:00:00 2001 From: Muthiah Sivavelan Date: Mon, 10 Oct 2022 15:54:47 +0530 Subject: [PATCH 01/15] Added Program for weather notifications in desktop --- weather_Notifications_Desktop.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 weather_Notifications_Desktop.py diff --git a/weather_Notifications_Desktop.py b/weather_Notifications_Desktop.py new file mode 100644 index 0000000..6439501 --- /dev/null +++ b/weather_Notifications_Desktop.py @@ -0,0 +1,25 @@ +import os,requests +from win10toast import ToastNotifier +from dotenv import load_dotenv +load_dotenv() + +n = ToastNotifier() +city = input("Enter city name: ") + +url = "https://api.openweathermap.org/data/2.5/weather?q="+city+"&appid="+os.getenv("API_key")+"&units=metric" + +r = requests.get(url,auth= (os.getenv("user"),os.getenv("password"))) +r_dict = r.json() + + +current_temp = r_dict['main']['temp'] + +weather_desc = r_dict['weather'][0]['description'] + +temp = (str(current_temp)) + +desc = str(weather_desc) + +result = "Current temperature is: " + temp + " Celsius in " + city+ ".\nCurrent weather condition is: " + desc +n.show_toast("Live Weather update: ", + result, duration = 10) From 3850cd3e707701f1c0061a560136ad397002a043 Mon Sep 17 00:00:00 2001 From: Muthiah Sivavelan Date: Mon, 10 Oct 2022 15:54:47 +0530 Subject: [PATCH 02/15] closes #313 --- weather_Notifications_Desktop.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 weather_Notifications_Desktop.py diff --git a/weather_Notifications_Desktop.py b/weather_Notifications_Desktop.py new file mode 100644 index 0000000..6439501 --- /dev/null +++ b/weather_Notifications_Desktop.py @@ -0,0 +1,25 @@ +import os,requests +from win10toast import ToastNotifier +from dotenv import load_dotenv +load_dotenv() + +n = ToastNotifier() +city = input("Enter city name: ") + +url = "https://api.openweathermap.org/data/2.5/weather?q="+city+"&appid="+os.getenv("API_key")+"&units=metric" + +r = requests.get(url,auth= (os.getenv("user"),os.getenv("password"))) +r_dict = r.json() + + +current_temp = r_dict['main']['temp'] + +weather_desc = r_dict['weather'][0]['description'] + +temp = (str(current_temp)) + +desc = str(weather_desc) + +result = "Current temperature is: " + temp + " Celsius in " + city+ ".\nCurrent weather condition is: " + desc +n.show_toast("Live Weather update: ", + result, duration = 10) From 812d1150d6b37fdaf061af56de7b33e9e8205a46 Mon Sep 17 00:00:00 2001 From: Muthiah Sivavelan Date: Tue, 11 Oct 2022 12:36:20 +0530 Subject: [PATCH 03/15] Added Program to the required folder --- .../weather_Notifications_Desktop.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename weather_Notifications_Desktop.py => scripts/Weather_Notifications_Desktop/weather_Notifications_Desktop.py (100%) diff --git a/weather_Notifications_Desktop.py b/scripts/Weather_Notifications_Desktop/weather_Notifications_Desktop.py similarity index 100% rename from weather_Notifications_Desktop.py rename to scripts/Weather_Notifications_Desktop/weather_Notifications_Desktop.py From 9a423f17638fdd959465e5ccd08dee4811254dc7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 11 Oct 2022 07:59:07 +0000 Subject: [PATCH 04/15] docs(contributor): contrib-readme-action has updated readme --- README.md | 96 ++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 59 insertions(+), 37 deletions(-) diff --git a/README.md b/README.md index a0dd525..b527637 100644 --- a/README.md +++ b/README.md @@ -202,6 +202,21 @@ Thanks a lot for spending your time helping! Keep rocking 🍻 Mohd Afzal Khan + + + MSVelan +
+ Null +
+ + + + rahulkarda +
+ Rahul Karda +
+ + kriptonian1 @@ -215,8 +230,7 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Sourodip Kar
- - + varunKT001 @@ -244,7 +258,8 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Dishant Nagpal
- + + Kunalp02 @@ -258,8 +273,7 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Mysterious-Owl
- - + PritamP20 @@ -267,13 +281,6 @@ Thanks a lot for spending your time helping! Keep rocking 🍻 Null - - - rahulkarda -
- Rahul Karda -
- Tiagupt03 @@ -294,15 +301,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Drk1rd
- + + lordvader501
Null
- - + rohitgarud21 @@ -337,15 +344,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Nishant Pacharne
- + + thegeekyb0y
Aditya Tiwari
- - + BassCoder2808 @@ -380,15 +387,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Rahul Kumar
- + + royninja
Sayan Roy
- - + Tanya-1109 @@ -423,15 +430,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Sauraj
- + + accodes21
Aarya Chopkar
- - + aimanaisha @@ -466,15 +473,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Heshanthaka
- + + Gokul-Ks
Gokul_Zuzu
- - + Manice18 @@ -496,13 +503,21 @@ Thanks a lot for spending your time helping! Keep rocking 🍻 Nikunj R. Prajapati + + + theadeyemiolayinka +
+ Olayinka Adeyemi +
+ Morbius00
Raj Saha
- + + ramonsaraiva @@ -516,8 +531,7 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Riya Jaiswal
- - + sarthakroy2002 @@ -545,7 +559,8 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Anjali Chauhan
- + + anshrusia200 @@ -559,8 +574,7 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Arpit Bhardwaj
- - + artemis-i-guess @@ -588,7 +602,8 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Null
- + + yashbrid03 @@ -602,8 +617,7 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Michele Mazza
- - + mer747 @@ -611,6 +625,13 @@ Thanks a lot for spending your time helping! Keep rocking 🍻 Null + + + MubeenAhmad571 +
+ Mubeen Ahmad +
+ nabroleonx @@ -624,7 +645,8 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Prathamesh Nayak
- + + smit-sms From e4b01729b51d6ea00fb0467db7fbe148752ba2db Mon Sep 17 00:00:00 2001 From: Yash Indane Date: Tue, 11 Oct 2022 15:27:40 +0530 Subject: [PATCH 05/15] Create main.py --- scripts/Sudoku-Solver/main.py | 83 +++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 scripts/Sudoku-Solver/main.py diff --git a/scripts/Sudoku-Solver/main.py b/scripts/Sudoku-Solver/main.py new file mode 100644 index 0000000..11fca12 --- /dev/null +++ b/scripts/Sudoku-Solver/main.py @@ -0,0 +1,83 @@ +import numpy as np + +problem = [] + +for x in range(9): + i = input() + l = [int(v) for v in i] + problem.append(l) + +#print(problem) + +np_problem = np.array(problem) + +fixed_coordinates = [] # first getting the coordinates where fixed numbers are present +empty_coordinates = [] +for i , sub_array in enumerate(problem) : + temp = [[i , c] for c , sub_element in enumerate(sub_array) if sub_element > 0] + temp2 = [[i , j] for j , sub_element2 in enumerate(sub_array) if sub_element2 == 0] + for z in temp : fixed_coordinates.append(z) + for w in temp2 : empty_coordinates.append(w) + +l , m , r = [0 , 3 , 6] , [1 , 4 , 7] , [2 , 5 , 8] + +avoid_dict = {idx : [] for idx in list(range(0 , len(empty_coordinates)))} + +def generate_bounds(r , c) -> list: + + lower_bound_c = c if c in l else c - 1 if c in m else c - 2 + upper_bound_c = c + 3 if c in l else c + 2 if c in m else c + 1 + + lower_bound_r = r if r in l else r - 1 if r in m else r - 2 + upper_bound_r = r + 3 if r in l else r + 2 if r in m else r + 1 + + return [lower_bound_c , upper_bound_c , lower_bound_r , upper_bound_r] + + +def backtrack(return_coordinates) : + + n_r , n_c = empty_coordinates[empty_coordinates.index(return_coordinates) - 1] # getting back element coordinates + + while [n_r , n_c] != empty_coordinates[empty_coordinates.index(return_coordinates) + 1]: + + if np_problem[n_r , n_c] != 0 : + avoid_dict[empty_coordinates.index([n_r , n_c])].append(np_problem[n_r , n_c]) + + fix_flag = False + r , c = n_r , n_c + for num in range(1 , 10) : + + l_b_c , u_b_c , l_b_r , u_b_r = generate_bounds(r , c) + + if all([num not in np_problem[l_b_r : u_b_r , l_b_c : u_b_c] , num not in np_problem[r , :] , num not in np_problem[: , c]]) : + if num not in avoid_dict.get(empty_coordinates.index([n_r , n_c])) : + np_problem[n_r , n_c] , fix_flag = num , True + break + + if fix_flag : n_r , n_c = empty_coordinates[empty_coordinates.index([n_r , n_c]) + 1] + + if not fix_flag : + np_problem[n_r , n_c] = 0 + avoid_dict[empty_coordinates.index([n_r , n_c])].clear() + n_r , n_c = empty_coordinates[empty_coordinates.index([n_r , n_c]) - 1] + + +for r in range(9) : + for c in range(9) : + + if [r , c] not in fixed_coordinates : + + fix_flag = False + + for num in range(1 , 10) : + + l_b_c , u_b_c , l_b_r , u_b_r = generate_bounds(r , c) + + if all([num not in np_problem[l_b_r : u_b_r , l_b_c : u_b_c] , num not in np_problem[r , :] , num not in np_problem[: , c]]) : + + np_problem[r , c] , fix_flag = num , True + break + + if not fix_flag : backtrack([r , c]) + +print(np_problem) From 7acfa5e821b55dbdae0b51acdc4a2c68eff6c860 Mon Sep 17 00:00:00 2001 From: Yash Indane Date: Tue, 11 Oct 2022 15:28:26 +0530 Subject: [PATCH 06/15] Create README.md --- scripts/Sudoku-Solver/README.md | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 scripts/Sudoku-Solver/README.md diff --git a/scripts/Sudoku-Solver/README.md b/scripts/Sudoku-Solver/README.md new file mode 100644 index 0000000..bea82a2 --- /dev/null +++ b/scripts/Sudoku-Solver/README.md @@ -0,0 +1,2 @@ +This is a Sudoku Solver that uses backtracking algorithm to solve the puzzle. +Input the puzzle from command line. From d0986ff62496d66cc703eee5ed7d403d3374deec Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 11 Oct 2022 10:31:57 +0000 Subject: [PATCH 07/15] docs(contributor): contrib-readme-action has updated readme --- README.md | 43 +++++++++++++++++++++++++------------------ 1 file changed, 25 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index b527637..5d4577d 100644 --- a/README.md +++ b/README.md @@ -403,6 +403,13 @@ Thanks a lot for spending your time helping! Keep rocking 🍻 Tanya Mohanka + + + YashIndane +
+ Yash Indane +
+ ambushneupane @@ -423,15 +430,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Null
- + + noobyysauraj
Sauraj
- - + accodes21 @@ -466,15 +473,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
ANURAG TIWARI
- + + donheshanthaka
Heshanthaka
- - + Gokul-Ks @@ -509,15 +516,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Olayinka Adeyemi
- + + Morbius00
Raj Saha
- - + ramonsaraiva @@ -552,15 +559,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Tejaswi Kumar
- + + anjali1102
Anjali Chauhan
- - + anshrusia200 @@ -595,15 +602,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Rohit Purkait
- + + devtayade
Null
- - + yashbrid03 @@ -638,15 +645,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
Abel Ayalew
- + + neocollege
Prathamesh Nayak
- - + smit-sms From 7110257a253875ecd0dd51cc94f58fcc4a55624b Mon Sep 17 00:00:00 2001 From: KuSantosh100 Date: Tue, 11 Oct 2022 16:05:44 +0530 Subject: [PATCH 08/15] #338 Created GUI_Dictionary --- scripts/GUI_Dictionary/GUI_Dictionary.py | 54 ++++++++++++++++++ scripts/GUI_Dictionary/README.md | 24 ++++++++ .../GUI_Dictionary/screenshots/gui-dict-3.png | Bin 0 -> 55634 bytes .../GUI_Dictionary/screenshots/gui-dict-4.png | Bin 0 -> 54958 bytes .../GUI_Dictionary/screenshots/gui_dict1.png | Bin 0 -> 42588 bytes 5 files changed, 78 insertions(+) create mode 100644 scripts/GUI_Dictionary/GUI_Dictionary.py create mode 100644 scripts/GUI_Dictionary/README.md create mode 100644 scripts/GUI_Dictionary/screenshots/gui-dict-3.png create mode 100644 scripts/GUI_Dictionary/screenshots/gui-dict-4.png create mode 100644 scripts/GUI_Dictionary/screenshots/gui_dict1.png diff --git a/scripts/GUI_Dictionary/GUI_Dictionary.py b/scripts/GUI_Dictionary/GUI_Dictionary.py new file mode 100644 index 0000000..58a8fd6 --- /dev/null +++ b/scripts/GUI_Dictionary/GUI_Dictionary.py @@ -0,0 +1,54 @@ +from tkinter import * +from tkinter import messagebox +from PyDictionary import PyDictionary + + +root = Tk() +root.title("GUI Dictionary") +root.geometry("500x400") + + +dictionary = PyDictionary() + + +def getMeaning(): + response = dictionary.meaning(word.get()) + if (response): + if ('Noun' in response): + meaning = response['Noun'][0] + elif ('Verb' in response): + meaning = response['Verb'][0] + elif ('Adjective' in response): + meaning = response['Adjective'][0] + else: + meaning = "Invalid word" + else: + messagebox.showinfo( + "Error", "Please add a Noun, Pronoun, verb or a valid word.") + meaning_label.config(text=meaning) + + + +heading_label = Label(root, text="DICTIONARY", font=("Times 35 bold"), foreground='dark blue') +heading_label.config(anchor=CENTER) +heading_label.pack(pady=10) + + +frame = Frame(root) +Label(frame, text="Enter Word", font=("Helvetica 15 bold"), foreground='dodger blue').pack(side=LEFT) +word = Entry(frame, font=("Helvetica 15 bold")) +word.pack(padx=10) +frame.pack() + +search_button = Button(root, text="Search Word", font=("arial 15 bold"), relief=RIDGE, borderwidth=3, cursor="hand2", foreground='Magenta', command=getMeaning) +search_button.config(anchor=CENTER) +search_button.pack(pady=10) + + +frame1 = Frame(root) +Label(frame1, text="Meaning : ", font=("Helvetica 15 bold"), foreground='medium turquoise').pack(side=LEFT) +meaning_label = Label(frame1, text="", font=("Helvetica 12")) +meaning_label.pack(pady=5) +frame1.pack(pady=10) + +root.mainloop() \ No newline at end of file diff --git a/scripts/GUI_Dictionary/README.md b/scripts/GUI_Dictionary/README.md new file mode 100644 index 0000000..9e16c77 --- /dev/null +++ b/scripts/GUI_Dictionary/README.md @@ -0,0 +1,24 @@ +# Dictionary GUI +This script lets the user search for the meaning of words like a dictionary. + +## Setup instructions +In order to run this script, you need to have Python and pip installed on your system. After you're done installing Python and pip, run the following command from your terminal to install the requirements for the project. +``` +pip install PyDictionary +``` + +After satisfying all the requirements for the project, Open the terminal in the project folder and run +``` +python GUI_Dictionary.py +``` +or +``` +python3 GUI_Dictionary.py +``` +depending upon the python version. Make sure that you are running the command from the same virtual environment in which the required modules are installed. + +# Introducing to Interface + +
+
+ \ No newline at end of file diff --git a/scripts/GUI_Dictionary/screenshots/gui-dict-3.png b/scripts/GUI_Dictionary/screenshots/gui-dict-3.png new file mode 100644 index 0000000000000000000000000000000000000000..b4d9c080af05762c5982a7a68e042f480966288c GIT binary patch literal 55634 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
XVhJr2#1vLs$<8&=(XFhb;h1w3K9x^Pt5nhCL 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
  • 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%0Db90Mx5W?d2Dm;x9V0#u%BX@l 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 Date: Tue, 11 Oct 2022 16:51:19 +0530 Subject: [PATCH 09/15] Update greetings.yml --- .github/workflows/greetings.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/greetings.yml b/.github/workflows/greetings.yml index ecdc784..56a835c 100644 --- a/.github/workflows/greetings.yml +++ b/.github/workflows/greetings.yml @@ -21,7 +21,7 @@ jobs: We at Metafy have some special rewards and swags for the top contributors in general repos and every contributor in web3 repos For being eligible for that, please authenticate yourself using this link: - https://hacktoberfest.auth.metafy.social + https://metafy.social/signup Rewards : T-shirts & NFT ( for blockchain contributions ) @@ -34,7 +34,7 @@ jobs: We at Metafy have some special rewards and swags for the top contributors in general repos and every contributor in web3 repos For being eligible for that, please authenticate yourself using this link: - https://hacktoberfest.auth.metafy.social + https://metafy.social/signup Rewards : T-shirts & NFT ( for blockchain contributions ) From 973bb36d76fdce69ca4d8c707abca452ac991e51 Mon Sep 17 00:00:00 2001 From: Olayinka Adeyemi Date: Tue, 11 Oct 2022 12:22:36 +0100 Subject: [PATCH 10/15] Chore: Add Caeser Cipher --- scripts/Caeser_Cipher_sage/README.md | 10 +++++ scripts/Caeser_Cipher_sage/cc.py | 62 ++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+) create mode 100644 scripts/Caeser_Cipher_sage/README.md create mode 100644 scripts/Caeser_Cipher_sage/cc.py diff --git a/scripts/Caeser_Cipher_sage/README.md b/scripts/Caeser_Cipher_sage/README.md new file mode 100644 index 0000000..69da04a --- /dev/null +++ b/scripts/Caeser_Cipher_sage/README.md @@ -0,0 +1,10 @@ +## Caeser Cipher files ADDED #348 + +## Caeser Cipher +Easilly Generate Caecer Cipher equivalent for any text + + +## Installation +- Clone the repo +- download the requirements +- run `python cc.py` diff --git a/scripts/Caeser_Cipher_sage/cc.py b/scripts/Caeser_Cipher_sage/cc.py new file mode 100644 index 0000000..9bb3224 --- /dev/null +++ b/scripts/Caeser_Cipher_sage/cc.py @@ -0,0 +1,62 @@ +# @author https://github.com/theadeyemiolayinka + +from statistics import mode + + +class Caesar(): + + def __init__(self): + self.LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + self.translated = '' + + def __crypt(self, mode): + for symbol in self.message.upper(): + if symbol in self.LETTERS: + num = self.LETTERS.find(symbol) + if mode == 'encrypt': + num = num + self.key + elif mode == 'decrypt': + num = num - self.key + + if num >= len(self.LETTERS): + num = num - len(self.LETTERS) + elif num < 0: + num = num + len(self.LETTERS) + + self.translated = self.translated + self.LETTERS[num] + else: + self.translated = self.translated + symbol + + return self.translated + + def encrypt(self, message, key=0): + self.translated = '' + self.key = key + self.message = message + return self.__crypt('encrypt') + + def decrypt(self, message, key=0): + self.translated = '' + self.key = key + self.message = message + return self.__crypt('decrypt') + +def invokeCipher(cipher, key, text, e_mode): + if e_mode == 'E' or e_mode == 'e': + print('\n====================RESULT====================') + return cipher.encrypt(text, key) + elif e_mode == 'D' or e_mode == 'd': + print('\n====================RESULT====================') + return cipher.decrypt(text, key) + else: + print('Ivalid mode.') + n_mode = str(input("Enter mode: [E] for encryption and [D] for decryption:\n>")) + return invokeCipher(cipher, key, text, n_mode) + +cipher = Caesar() +key = int(input('Enter encryption key:\n>')) +text = str(input('Enter text:\n>')) +e_mode = str(input("Enter mode: [E] for encryption and [D] for decryption:\n>")) + +print(invokeCipher(cipher, key, text, e_mode)) +print('==============================================') From f9e93bf8ba8e01e84b93009dc4c5ce452ac74689 Mon Sep 17 00:00:00 2001 From: lucas de oliveira carvalho Date: Tue, 11 Oct 2022 09:11:01 -0300 Subject: [PATCH 11/15] confusion matrix python script added --- scripts/Confusion_Matrix/README.md | 24 ++++++++ .../Confusion_Matrix/make_confusion_matrix.py | 59 +++++++++++++++++++ 2 files changed, 83 insertions(+) create mode 100644 scripts/Confusion_Matrix/README.md create mode 100644 scripts/Confusion_Matrix/make_confusion_matrix.py diff --git a/scripts/Confusion_Matrix/README.md b/scripts/Confusion_Matrix/README.md new file mode 100644 index 0000000..69bdc2a --- /dev/null +++ b/scripts/Confusion_Matrix/README.md @@ -0,0 +1,24 @@ +# CODE BY ZeroToMastery TensorFlow course. +# The function makes a labelled confusion matrix comparing predictions and ground truth labels. + +# If classes is passed, confusion matrix will be labelled, if not, integer class values +# will be used. + +## Args: + +`y_true`: Array of truth labels (must be same shape as y_pred). +`y_pred`: Array of predicted labels (must be same shape as y_true). +`classes`: Array of class labels (e.g. string form). If `None`, integer labels are used. +`figsize`: Size of output figure (default=(10, 10)). +`text_size`: Size of output figure text (default=15). +`norm`: normalize values or not (default=False). +`savefig`: save confusion matrix to file (default=False). + +## Returns: A labelled confusion matrix plot comparing y_true and y_pred. +### Example usage: + +"""make_confusion_matrix(y_true=test_labels, # ground truth test labels + y_pred=y_preds, # predicted labels + classes=class_names, # array of class label names + figsize=(15, 15), + text_size=10)""" \ No newline at end of file diff --git a/scripts/Confusion_Matrix/make_confusion_matrix.py b/scripts/Confusion_Matrix/make_confusion_matrix.py new file mode 100644 index 0000000..2200f12 --- /dev/null +++ b/scripts/Confusion_Matrix/make_confusion_matrix.py @@ -0,0 +1,59 @@ +import itertools +import matplotlib.pyplot as plt +import numpy as np +from sklearn.metrics import confusion_matrix + +def make_confusion_matrix(y_true, y_pred, classes=None, figsize=(10, 10), text_size=15, norm=False, savefig=False): + # Create the confustion matrix + cm = confusion_matrix(y_true, y_pred) + cm_norm = cm.astype("float") / cm.sum(axis=1)[:, np.newaxis] # normalize it + n_classes = cm.shape[0] # find the number of classes we're dealing with + + # Plot the figure and make it pretty + fig, ax = plt.subplots(figsize=figsize) + cax = ax.matshow(cm, cmap=plt.cm.Blues) # colors will represent how 'correct' a class is, darker == better + fig.colorbar(cax) + + # Are there a list of classes? + if classes: + labels = classes + else: + labels = np.arange(cm.shape[0]) + + # Label the axes + ax.set(title="Confusion Matrix", + xlabel="Predicted label", + ylabel="True label", + xticks=np.arange(n_classes), # create enough axis slots for each class + yticks=np.arange(n_classes), + xticklabels=labels, # axes will labeled with class names (if they exist) or ints + yticklabels=labels) + + # Make x-axis labels appear on bottom + ax.xaxis.set_label_position("bottom") + ax.xaxis.tick_bottom() + + # Set the threshold for different colors + threshold = (cm.max() + cm.min()) / 2. + + # Plot the text on each cell + for i, j in itertools.product(range(cm.shape[0]), range(cm.shape[1])): + if norm: + plt.text(j, i, f"{cm[i, j]} ({cm_norm[i, j]*100:.1f}%)", + horizontalalignment="center", + color="white" if cm[i, j] > threshold else "black", + size=text_size) + else: + plt.text(j, i, f"{cm[i, j]}", + horizontalalignment="center", + color="white" if cm[i, j] > threshold else "black", + size=text_size) + + # Save the figure to the current working directory + if savefig: + fig.savefig("confusion_matrix.png") + +y_true = [0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0] +y_pred = [0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0] + +make_confusion_matrix(y_true, y_pred) \ No newline at end of file From bd842f4a2b0fb3ecd23b4f9b6bbfe5f5a6a7cf58 Mon Sep 17 00:00:00 2001 From: lucas de oliveira carvalho Date: Tue, 11 Oct 2022 09:23:53 -0300 Subject: [PATCH 12/15] Confusion Matrix function --- scripts/Confusion_Matrix/make_confusion_matrix.py | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/scripts/Confusion_Matrix/make_confusion_matrix.py b/scripts/Confusion_Matrix/make_confusion_matrix.py index 2200f12..635e723 100644 --- a/scripts/Confusion_Matrix/make_confusion_matrix.py +++ b/scripts/Confusion_Matrix/make_confusion_matrix.py @@ -51,9 +51,4 @@ def make_confusion_matrix(y_true, y_pred, classes=None, figsize=(10, 10), text_s # Save the figure to the current working directory if savefig: - fig.savefig("confusion_matrix.png") - -y_true = [0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0] -y_pred = [0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0] - -make_confusion_matrix(y_true, y_pred) \ No newline at end of file + fig.savefig("confusion_matrix.png") \ No newline at end of file From 2ab7ecf91d7cdb55d05fcbc5076e5c2635ce9c1f Mon Sep 17 00:00:00 2001 From: lucas de oliveira carvalho Date: Tue, 11 Oct 2022 09:28:53 -0300 Subject: [PATCH 13/15] Fix README.md --- scripts/Confusion_Matrix/README.md | 31 +++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/scripts/Confusion_Matrix/README.md b/scripts/Confusion_Matrix/README.md index 69bdc2a..30c0c4f 100644 --- a/scripts/Confusion_Matrix/README.md +++ b/scripts/Confusion_Matrix/README.md @@ -1,24 +1,25 @@ -# CODE BY ZeroToMastery TensorFlow course. -# The function makes a labelled confusion matrix comparing predictions and ground truth labels. +The function makes a labelled confusion matrix comparing predictions and ground truth labels. -# If classes is passed, confusion matrix will be labelled, if not, integer class values -# will be used. +If classes is passed, confusion matrix will be labelled, if not, integer class values will be used. -## Args: +Args: -`y_true`: Array of truth labels (must be same shape as y_pred). -`y_pred`: Array of predicted labels (must be same shape as y_true). -`classes`: Array of class labels (e.g. string form). If `None`, integer labels are used. -`figsize`: Size of output figure (default=(10, 10)). -`text_size`: Size of output figure text (default=15). -`norm`: normalize values or not (default=False). -`savefig`: save confusion matrix to file (default=False). +* `y_true`: Array of truth labels (must be same shape as y_pred). +* `y_pred`: Array of predicted labels (must be same shape as y_true). +* `classes`: Array of class labels (e.g. string form). If `None`, integer labels are used. +* `figsize`: Size of output figure (default=(10, 10)). +* `text_size`: Size of output figure text (default=15). +* `norm`: normalize values or not (default=False). +* `savefig`: save confusion matrix to file (default=False). + +Returns: A labelled confusion matrix plot comparing y_true and y_pred. -## Returns: A labelled confusion matrix plot comparing y_true and y_pred. ### Example usage: -"""make_confusion_matrix(y_true=test_labels, # ground truth test labels +> """make_confusion_matrix(y_true=test_labels, # ground truth test labels y_pred=y_preds, # predicted labels classes=class_names, # array of class label names figsize=(15, 15), - text_size=10)""" \ No newline at end of file + text_size=10)""" + +#### CODE BY ZeroToMastery TensorFlow course. From e8cc62abba4ca6ed8f5e00117a96e9cf4fb4be40 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 11 Oct 2022 13:43:02 +0000 Subject: [PATCH 14/15] docs(contributor): contrib-readme-action has updated readme --- README.md | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 5d4577d..e6e3cb5 100644 --- a/README.md +++ b/README.md @@ -374,21 +374,28 @@ Thanks a lot for spending your time helping! Keep rocking 🍻 Mayuri Kolhe + + + theadeyemiolayinka +
    + Olayinka Adeyemi +
    + parinzee
    Parinthapat P.
    - + + iamrahul8
    Rahul Kumar
    - - + royninja @@ -423,15 +430,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
    Aswin Shailajan
    - + + jrafaaael
    Null
    - - + noobyysauraj @@ -466,15 +473,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
    Arijit Ghosh
    - + + Danuragtiwari
    ANURAG TIWARI
    - - + donheshanthaka @@ -509,13 +516,6 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
    Nikunj R. Prajapati
    - - - - theadeyemiolayinka -
    - Olayinka Adeyemi -
    From 61e5131263a1e68d3b83fbd65379b0e1ec38211b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 11 Oct 2022 13:43:45 +0000 Subject: [PATCH 15/15] docs(contributor): contrib-readme-action has updated readme --- README.md | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index e6e3cb5..5e16a52 100644 --- a/README.md +++ b/README.md @@ -496,6 +496,13 @@ Thanks a lot for spending your time helping! Keep rocking 🍻 Gokul_Zuzu + + + KuSantosh100 +
    + KUMAR SANTOSH +
    + Manice18 @@ -509,15 +516,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
    Null
    - + + LEO1612D
    Nikunj R. Prajapati
    - - + Morbius00 @@ -552,15 +559,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
    Shreejan Dolai
    - + + Tejaswi-Kumar
    Tejaswi Kumar
    - - + anjali1102 @@ -595,15 +602,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
    Null
    - + + codeswithroh
    Rohit Purkait
    - - + devtayade @@ -638,15 +645,15 @@ Thanks a lot for spending your time helping! Keep rocking 🍻
    Mubeen Ahmad
    - + + nabroleonx
    Abel Ayalew
    - - + neocollege