Wednesday, 11 January 2023

KNN Classifier using Python

  HI

Using KNN classifier in Python we can do classification of data.

# 1 ---------------------------------

https://github.com/susanli2016/Machine-Learning-with-Python/blob/master/diabetes.csv

# 2 ---------------------------------

https://www.kaggle.com/code/mragpavank/pima-indians-diabetes-database/input

# 3---------------------------------

from google.colab import drive
drive.mount('/content/drive')

# 4---------------------------------

cd /content/drive/MyDrive/MLProject

# 5---------------------------------

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
diabetesdata = pd.read_csv('diabetesdata.csv')
print(diabetesdata.columns)

# 6---------------------------------

diabetesdata.head()

print("dimension of diabetesdata data: {}".format(diabetesdata.shape))

print(diabetesdata.groupby('Outcome').size())

diabetesdata.info()

# 7 ---------------------------------

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(diabetesdata.loc[:, diabetesdata.columns != 'Outcome'], diabetesdata['Outcome'], stratify=diabetesdata['Outcome'], random_state=66)

# 8---------------------------------

from sklearn.neighbors import KNeighborsClassifier

# 9---------------------------------

knn = KNeighborsClassifier(n_neighbors=9)
knn.fit(X_train, y_train)

#10 Save the trained model---------------------------------

import joblib


joblib.dump(knn, "knn_model.pkl")

# 11 Load the model---------------------------------

import joblib


knn_loaded = joblib.load("knn_model.pkl")
inputdata=[[10,140,80,0,0,27.1,1.440,55]]
print(knn_loaded.predict(inputdata))

Read from one csv file and write to new csv file

 Hi,

We can use pandas for reading csv file.

Using csv package we can write to another csv file.

import pandas as pd
hupactivity = pd.read_csv('huptest.csv')

import csv
csvoutput=open('data.csv''w')
writer = csv.writer(csvoutput, lineterminator='\n')

all = []

for i in hupactivity:
  print(i)
  all.append(row)
writer.writerows(all)

Use Google Drive in Google colab

 Hi All,

While analising data using Google colab, it is better to use google colab as the data will be permanently saved in drive.

from google.colab import drive
drive.mount('/content/drive')
cd /content/drive/MyDrive/HUPHealth

Here HUPHealth is your folder in Drive. You may change according to your choice.


Wednesday, 11 August 2021

Pandas and CSV

 Hi all,

Create a csv file like given below

No,Name,Place

1,HUP,Kollam

2,Abc,Test

3,Raj,Klm


#Program 1

import pandas as pd
df=pd.read_csv('hup1.csv')
print(df.to_string())


#Program 2

import pandas as pd
df=pd.read_csv('hup1.csv')
for ind in df.index:
  print(df['1'][ind], df['HUP'][ind])

Monday, 10 May 2021

Remove stop words and predict using Naive Bayes Classifier

 Hi all,

Use this code for NBC which removes stop words

-------------------------------------------------------------------------------

from nltk import NaiveBayesClassifier as nbc


from nltk.tokenize import word_tokenize


from itertools import chain


import csv
from gensim.parsing.preprocessing import remove_stopwords

from nltk.tokenize import word_tokenize



with open('trainingdata.csv','r'as csvinput:


    reader=csv.reader(csvinput,delimiter=",")


    rownum = 0 


    training_data = []



    for row in reader:
      old=row[0]
      sent=remove_stopwords(row[0])
      row[0]=sent
     
      training_data.append (row)
      rownum += 1
      print('hup original ',old)
      print('hup new ',sent)
      print('----------------')



vocabulary = set(chain(*[word_tokenize(i[0].lower()) for i in training_data]))



feature_set = [({i:(i in word_tokenize(sentence.lower())) for i in vocabulary},tag) for sentence, tag in training_data]



classifier = nbc.train(feature_set)



with open('testdata.csv','r'as csvinput:


    with open('data.csv''w'as csvoutput:


        writer = csv.writer(csvoutput, lineterminator='\n')


        reader1 = csv.reader(csvinput)



        all = []


        row = next(reader1)


        



        for row in reader1:


            test_sentence = row[1]


            featurized_test_sentence =  {i:(i in word_tokenize(test_sentence.lower())) for i in vocabulary}


            print ("test_sent:",test_sentence)


            print ("tag:",classifier.classify(featurized_test_sentence))


            row.append(classifier.classify(featurized_test_sentence))


            all.append(row)


        writer.writerows(all)

Wednesday, 28 October 2020

Sort in reverse order in Python

 

Hi,

Here one list is loaded with cubes. One element is edited intentionally. 


a=[]

for i in range(10):

a.append(i**3)

a[4]=10

print(a)

a.sort(reverse=True)

print(a)

Array using Numpy and List in PythonTuple

 Hi all

Array can be implemented in Python using two methods

####Numpy

import numpy as np

hup=np.arange(10)

hup=np.zeros(10)

for i in range(10):

hup[i]=i**2


print(hup)

############

#Using List

a=[]

for i in range(10):

a.append(i**3)

print(a)


a = np.array([[10],
              [01]])
b = np.array([[41],
              [22]])
c=np.matmul(a, b)
print(c)