From 1e45848f0b84218dfbdb62e313b4c33791a98555 Mon Sep 17 00:00:00 2001 From: Charles Date: Wed, 22 Jan 2020 18:05:06 +0100 Subject: Moved notebook to notebook/, Added predict.py and train.py template --- src/predict.py | 22 ++++++++++++++++++++++ src/theta | 1 + src/train.py | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 src/predict.py create mode 100644 src/theta create mode 100644 src/train.py (limited to 'src') diff --git a/src/predict.py b/src/predict.py new file mode 100644 index 0000000..85c7eac --- /dev/null +++ b/src/predict.py @@ -0,0 +1,22 @@ +class Predictor: + def __init__(self, filename='theta'): + self.filename = filename + self.theta1, self.theta0 = self.read_theta() + + def make_prediction(self, x): + return x * self.theta1 + self.theta0 + + def read_theta(self): + try: + with open(self.filename, 'r') as file: + strs = file.read().strip().split(",") + if len(strs) != 2: + raise "wrong theta file format" + return int(strs[0]), int(strs[1]) + except IOError: + print(self.filename, "do not exist") + +if __name__ == "__main__": + p = Predictor() + x = int(input("Enter a mileage: ")) + print("The predicted price for this mileage is", p.make_prediction(x)) diff --git a/src/theta b/src/theta new file mode 100644 index 0000000..15794e0 --- /dev/null +++ b/src/theta @@ -0,0 +1 @@ +0,0 diff --git a/src/train.py b/src/train.py new file mode 100644 index 0000000..a31d032 --- /dev/null +++ b/src/train.py @@ -0,0 +1,32 @@ +class Model: + def __init__(self, filename='../data.csv'): + self.datafile = filename + + def train(self): + pass + + def partial_theta1(self): + pass + + def partial_theta0(self): + pass + + def gradient_descent(self): + pass + + def read_data(self): + pass + + def normalize_data(self): + pass + + def write_theta(self): + pass + + +if __name__ == "__main__": + m = Model() + m.read_data() + m.normalize_data() + m.train() + m.write_theta() -- cgit