From 0865c56a67d0d23433490b78c493b1e8b525c4ab Mon Sep 17 00:00:00 2001 From: Caferino Date: Sun, 7 Jan 2024 17:42:22 -0600 Subject: [PATCH] 3-Web-App Completed --- 3-Web-App/1-Web-App/notebook.ipynb | 440 ++++++++++++++++++ 3-Web-App/1-Web-App/ufo-model.pkl | Bin 0 -> 1005 bytes 3-Web-App/1-Web-App/web-app/app.py | 32 ++ 3-Web-App/1-Web-App/web-app/requirements.txt | 4 + .../1-Web-App/web-app/static/css/styles.css | 29 ++ .../1-Web-App/web-app/templates/index.html | 30 ++ evidence/3-Web-App.png | Bin 0 -> 63100 bytes 7 files changed, 535 insertions(+) create mode 100644 3-Web-App/1-Web-App/ufo-model.pkl create mode 100644 3-Web-App/1-Web-App/web-app/app.py create mode 100644 3-Web-App/1-Web-App/web-app/requirements.txt create mode 100644 3-Web-App/1-Web-App/web-app/static/css/styles.css create mode 100644 3-Web-App/1-Web-App/web-app/templates/index.html create mode 100644 evidence/3-Web-App.png diff --git a/3-Web-App/1-Web-App/notebook.ipynb b/3-Web-App/1-Web-App/notebook.ipynb index e69de29b..c3b83f1d 100644 --- a/3-Web-App/1-Web-App/notebook.ipynb +++ b/3-Web-App/1-Web-App/notebook.ipynb @@ -0,0 +1,440 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Web App" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
datetimecitystatecountryshapeduration (seconds)duration (hours/min)commentsdate postedlatitudelongitude
010/10/1949 20:30san marcostxuscylinder2700.045 minutesThis event took place in early fall around 194...4/27/200429.883056-97.941111
110/10/1949 21:00lackland afbtxNaNlight7200.01-2 hrs1949 Lackland AFB&#44 TX. Lights racing acros...12/16/200529.384210-98.581082
210/10/1955 17:00chester (uk/england)NaNgbcircle20.020 secondsGreen/Orange circular disc over Chester&#44 En...1/21/200853.200000-2.916667
310/10/1956 21:00ednatxuscircle20.01/2 hourMy older brother and twin sister were leaving ...1/17/200428.978333-96.645833
410/10/1960 20:00kaneohehiuslight900.015 minutesAS a Marine 1st Lt. flying an FJ4B fighter/att...1/22/200421.418056-157.803611
\n", + "
" + ], + "text/plain": [ + " datetime city state country shape \\\n", + "0 10/10/1949 20:30 san marcos tx us cylinder \n", + "1 10/10/1949 21:00 lackland afb tx NaN light \n", + "2 10/10/1955 17:00 chester (uk/england) NaN gb circle \n", + "3 10/10/1956 21:00 edna tx us circle \n", + "4 10/10/1960 20:00 kaneohe hi us light \n", + "\n", + " duration (seconds) duration (hours/min) \\\n", + "0 2700.0 45 minutes \n", + "1 7200.0 1-2 hrs \n", + "2 20.0 20 seconds \n", + "3 20.0 1/2 hour \n", + "4 900.0 15 minutes \n", + "\n", + " comments date posted latitude \\\n", + "0 This event took place in early fall around 194... 4/27/2004 29.883056 \n", + "1 1949 Lackland AFB, TX. Lights racing acros... 12/16/2005 29.384210 \n", + "2 Green/Orange circular disc over Chester, En... 1/21/2008 53.200000 \n", + "3 My older brother and twin sister were leaving ... 1/17/2004 28.978333 \n", + "4 AS a Marine 1st Lt. flying an FJ4B fighter/att... 1/22/2004 21.418056 \n", + "\n", + " longitude \n", + "0 -97.941111 \n", + "1 -98.581082 \n", + "2 -2.916667 \n", + "3 -96.645833 \n", + "4 -157.803611 " + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "ufos = pd.read_csv('./data/ufos.csv')\n", + "ufos.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Seconds Country Latitude Longitude\n", + "0 2700.0 us 29.883056 -97.941111\n", + "1 7200.0 NaN 29.384210 -98.581082\n", + "2 20.0 gb 53.200000 -2.916667\n", + "3 20.0 us 28.978333 -96.645833\n", + "4 900.0 us 21.418056 -157.803611\n", + "... ... ... ... ...\n", + "80327 600.0 us 36.165833 -86.784444\n", + "80328 1200.0 us 43.613611 -116.202500\n", + "80329 1200.0 us 38.297222 -122.284444\n", + "80330 5.0 us 38.901111 -77.265556\n", + "80331 1020.0 us 35.652778 -97.477778\n", + "\n", + "[80332 rows x 4 columns]\n" + ] + } + ], + "source": [ + "ufos = pd.DataFrame({'Seconds': ufos['duration (seconds)'], 'Country': ufos['country'], 'Latitude': ufos['latitude'], 'Longitude': ufos['longitude']})\n", + "\n", + "ufos.Country.unique()\n", + "print(ufos)" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Index: 25863 entries, 2 to 80330\n", + "Data columns (total 4 columns):\n", + " # Column Non-Null Count Dtype \n", + "--- ------ -------------- ----- \n", + " 0 Seconds 25863 non-null float64\n", + " 1 Country 25863 non-null object \n", + " 2 Latitude 25863 non-null float64\n", + " 3 Longitude 25863 non-null float64\n", + "dtypes: float64(3), object(1)\n", + "memory usage: 1010.3+ KB\n" + ] + } + ], + "source": [ + "ufos.dropna(inplace=True)\n", + "\n", + "ufos = ufos[(ufos['Seconds'] >= 1) & (ufos['Seconds'] <= 60)]\n", + "\n", + "ufos.info()" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
SecondsCountryLatitudeLongitude
220.0353.200000-2.916667
320.0428.978333-96.645833
1430.0435.823889-80.253611
2360.0445.582778-122.352222
243.0351.783333-0.783333
\n", + "
" + ], + "text/plain": [ + " Seconds Country Latitude Longitude\n", + "2 20.0 3 53.200000 -2.916667\n", + "3 20.0 4 28.978333 -96.645833\n", + "14 30.0 4 35.823889 -80.253611\n", + "23 60.0 4 45.582778 -122.352222\n", + "24 3.0 3 51.783333 -0.783333" + ] + }, + "execution_count": 66, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn.preprocessing import LabelEncoder\n", + "\n", + "ufos['Country'] = LabelEncoder().fit_transform(ufos['Country'])\n", + "\n", + "ufos.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Exercise - Build my own model" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split\n", + "\n", + "Selected_features = ['Seconds', 'Latitude', 'Longitude']\n", + "\n", + "ufos['Country'] = ufos['Country'].astype('category')\n", + "\n", + "x = ufos[Selected_features]\n", + "y = ufos['Country']\n", + "\n", + "x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2, random_state=0)" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " precision recall f1-score support\n", + "\n", + " 0 1.00 1.00 1.00 41\n", + " 1 0.85 0.46 0.60 250\n", + " 2 1.00 1.00 1.00 8\n", + " 3 1.00 1.00 1.00 131\n", + " 4 0.97 1.00 0.98 4743\n", + "\n", + " accuracy 0.97 5173\n", + " macro avg 0.96 0.89 0.92 5173\n", + "weighted avg 0.97 0.97 0.97 5173\n", + "\n", + "Predicted labels: [4 4 4 ... 3 4 4]\n", + "Accuracy: 0.9698434177459888\n" + ] + } + ], + "source": [ + "from sklearn.metrics import accuracy_score, classification_report\n", + "from sklearn.linear_model import LogisticRegression\n", + "model = LogisticRegression(max_iter=1000) # Needed to add to make it work\n", + "model.fit(x_train, y_train)\n", + "predictions = model.predict(x_test)\n", + "\n", + "print(classification_report(y_test, predictions))\n", + "print('Predicted labels: ', predictions)\n", + "print('Accuracy: ', accuracy_score(y_test, predictions))" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[3]\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/caferino/.local/lib/python3.10/site-packages/sklearn/base.py:465: UserWarning: X does not have valid feature names, but LogisticRegression was fitted with feature names\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import pickle\n", + "model_filename = 'ufo-model.pkl'\n", + "pickle.dump(model, open(model_filename,'wb'))\n", + "\n", + "model = pickle.load(open('ufo-model.pkl','rb'))\n", + "print(model.predict([[50,44,-12]]))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/3-Web-App/1-Web-App/ufo-model.pkl b/3-Web-App/1-Web-App/ufo-model.pkl new file mode 100644 index 0000000000000000000000000000000000000000..4421808ab0489ef94ad69bcf9438eaad5a703747 GIT binary patch literal 1005 zcmZ`&Uq}=|7{7IIJ+mt`sE6ya0*MpqL@UuWHaVm}XBQ|zFEP&T&E2l;?OwaH>48#F zrYG~@<@Cp=dJrlJ>8+rL^{uENqo9a;5FrpOG6*RMYHn}K44a3Y?_+0vf4=XV3*Kw< zyvJFj#yq1UXlP+o(bx{sdIG6opz0~b#EL}8rcO8PLMa28rlMrZM6-pq9|nz{C(EmY18ldJY+s2x>f;GAXG@!+xMJSbBVcC+pLe ziWT61FkR5XIwd}KA+DQmh=fX= z^msToD06prraWFZr$rq;&FRWooSe(KZ^gCTyxMb#(R+qLJ7|KWqvTpxLX^MaI7t5G zU~RPiqxt2g_P5hw{TpH7Nbae9pZ~D)$xxxRtK5#X{`-&E|VcV({yaE$<%XZK<{G^K))ig!1sIo_N7teii)w?NYlq z+Oo^{1s3eOCsSi*3yZenpmJs0|I>yTEAj36nf!r+6XNK{j@>VMLo+Y$T%K%weN_Z= mk87?6Z`f$CrLC(cbjX3M0`4OQY`~odN`!{+-f$ze;^AKbv6V&u literal 0 HcmV?d00001 diff --git a/3-Web-App/1-Web-App/web-app/app.py b/3-Web-App/1-Web-App/web-app/app.py new file mode 100644 index 00000000..f5a8af1c --- /dev/null +++ b/3-Web-App/1-Web-App/web-app/app.py @@ -0,0 +1,32 @@ +import numpy as np +from flask import Flask, request, render_template +import pickle + +app = Flask(__name__) + +model = pickle.load(open("../ufo-model.pkl", "rb")) + + +@app.route("/") +def home(): + return render_template("index.html") + + +@app.route("/predict", methods=["POST"]) +def predict(): + + int_features = [int(x) for x in request.form.values()] + final_features = [np.array(int_features)] + prediction = model.predict(final_features) + + output = prediction[0] + + countries = ["Australia", "Canada", "Germany", "UK", "US"] + + return render_template( + "index.html", prediction_text="Likely country: {}".format(countries[output]) + ) + + +if __name__ == "__main__": + app.run(debug=True) \ No newline at end of file diff --git a/3-Web-App/1-Web-App/web-app/requirements.txt b/3-Web-App/1-Web-App/web-app/requirements.txt new file mode 100644 index 00000000..b0dd1377 --- /dev/null +++ b/3-Web-App/1-Web-App/web-app/requirements.txt @@ -0,0 +1,4 @@ +scikit-learn +pandas +numpy +flask \ No newline at end of file diff --git a/3-Web-App/1-Web-App/web-app/static/css/styles.css b/3-Web-App/1-Web-App/web-app/static/css/styles.css new file mode 100644 index 00000000..04c12c9d --- /dev/null +++ b/3-Web-App/1-Web-App/web-app/static/css/styles.css @@ -0,0 +1,29 @@ +body { + width: 100%; + height: 100%; + font-family: 'Helvetica'; + background: black; + color: #fff; + text-align: center; + letter-spacing: 1.4px; + font-size: 30px; +} + +input { + min-width: 150px; +} + +.grid { + width: 300px; + border: 1px solid #2d2d2d; + display: grid; + justify-content: center; + margin: 20px auto; +} + +.box { + color: #fff; + background: #2d2d2d; + padding: 12px; + display: inline-block; +} \ No newline at end of file diff --git a/3-Web-App/1-Web-App/web-app/templates/index.html b/3-Web-App/1-Web-App/web-app/templates/index.html new file mode 100644 index 00000000..cf105c15 --- /dev/null +++ b/3-Web-App/1-Web-App/web-app/templates/index.html @@ -0,0 +1,30 @@ + + + + + 🛸 UFO Appearance Prediction! 👽 + + + + +
+ +
+ +

According to the number of seconds, latitude and longitude, which country is likely to have reported seeing a UFO?

+ +
+ + + + +
+ +

{{ prediction_text }}

+ +
+ +
+ + + \ No newline at end of file diff --git a/evidence/3-Web-App.png b/evidence/3-Web-App.png new file mode 100644 index 0000000000000000000000000000000000000000..6b0f73644673cf02ca13a3ec5a330d98e3ef4114 GIT binary patch literal 63100 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 literal 0 HcmV?d00001