Spaces:
Sleeping
Sleeping
narinsak unawong
commited on
Upload 3 files
Browse files- app.py +39 -0
- iris.csv +151 -0
- requirements.txt +3 -0
app.py
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import streamlit as st
|
2 |
+
import pandas as pd
|
3 |
+
from sklearn.model_selection import train_test_split
|
4 |
+
from sklearn.preprocessing import StandardScaler
|
5 |
+
from sklearn.linear_model import LogisticRegression
|
6 |
+
from sklearn.metrics import accuracy_score, classification_report, confusion_matrix
|
7 |
+
|
8 |
+
# Load the dataset
|
9 |
+
df = pd.read_csv('iris.csv')
|
10 |
+
|
11 |
+
# Prepare data
|
12 |
+
X = df.drop('species', axis=1)
|
13 |
+
y = df['species']
|
14 |
+
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
|
15 |
+
|
16 |
+
scaler = StandardScaler()
|
17 |
+
X_train = scaler.fit_transform(X_train)
|
18 |
+
X_test = scaler.transform(X_test)
|
19 |
+
|
20 |
+
# Train the model (only once)
|
21 |
+
logreg = LogisticRegression()
|
22 |
+
logreg.fit(X_train, y_train)
|
23 |
+
|
24 |
+
|
25 |
+
# Streamlit app
|
26 |
+
st.title("Iris Flower Classification")
|
27 |
+
|
28 |
+
st.write("Input the features of the iris flower below:")
|
29 |
+
sepal_length = st.number_input("Sepal Length (cm)", value=5.1)
|
30 |
+
sepal_width = st.number_input("Sepal Width (cm)", value=3.5)
|
31 |
+
petal_length = st.number_input("Petal Length (cm)", value=1.4)
|
32 |
+
petal_width = st.number_input("Petal Width (cm)", value=0.2)
|
33 |
+
|
34 |
+
|
35 |
+
if st.button("Predict"):
|
36 |
+
input_data = [[sepal_length, sepal_width, petal_length, petal_width]]
|
37 |
+
input_data = scaler.transform(input_data)
|
38 |
+
prediction = logreg.predict(input_data)[0]
|
39 |
+
st.write(f"Predicted Species: {prediction}")
|
iris.csv
ADDED
@@ -0,0 +1,151 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
sepal length (cm),sepal width (cm),petal length (cm),petal width (cm),species
|
2 |
+
5.1,3.5,1.4,0.2,Iris-setosa
|
3 |
+
4.9,3,1.4,0.2,Iris-setosa
|
4 |
+
4.7,3.2,1.3,0.2,Iris-setosa
|
5 |
+
4.6,3.1,1.5,0.2,Iris-setosa
|
6 |
+
5,3.6,1.4,0.2,Iris-setosa
|
7 |
+
5.4,3.9,1.7,0.4,Iris-setosa
|
8 |
+
4.6,3.4,1.4,0.3,Iris-setosa
|
9 |
+
5,3.4,1.5,0.2,Iris-setosa
|
10 |
+
4.4,2.9,1.4,0.2,Iris-setosa
|
11 |
+
4.9,3.1,1.5,0.1,Iris-setosa
|
12 |
+
5.4,3.7,1.5,0.2,Iris-setosa
|
13 |
+
4.8,3.4,1.6,0.2,Iris-setosa
|
14 |
+
4.8,3,1.4,0.1,Iris-setosa
|
15 |
+
4.3,3,1.1,0.1,Iris-setosa
|
16 |
+
5.8,4,1.2,0.2,Iris-setosa
|
17 |
+
5.7,4.4,1.5,0.4,Iris-setosa
|
18 |
+
5.4,3.9,1.3,0.4,Iris-setosa
|
19 |
+
5.1,3.5,1.4,0.3,Iris-setosa
|
20 |
+
5.7,3.8,1.7,0.3,Iris-setosa
|
21 |
+
5.1,3.8,1.5,0.3,Iris-setosa
|
22 |
+
5.4,3.4,1.7,0.2,Iris-setosa
|
23 |
+
5.1,3.7,1.5,0.4,Iris-setosa
|
24 |
+
4.6,3.6,1,0.2,Iris-setosa
|
25 |
+
5.1,3.3,1.7,0.5,Iris-setosa
|
26 |
+
4.8,3.4,1.9,0.2,Iris-setosa
|
27 |
+
5,3,1.6,0.2,Iris-setosa
|
28 |
+
5,3.4,1.6,0.4,Iris-setosa
|
29 |
+
5.2,3.5,1.5,0.2,Iris-setosa
|
30 |
+
5.2,3.4,1.4,0.2,Iris-setosa
|
31 |
+
4.7,3.2,1.6,0.2,Iris-setosa
|
32 |
+
4.8,3.1,1.6,0.2,Iris-setosa
|
33 |
+
5.4,3.4,1.5,0.4,Iris-setosa
|
34 |
+
5.2,4.1,1.5,0.1,Iris-setosa
|
35 |
+
5.5,4.2,1.4,0.2,Iris-setosa
|
36 |
+
4.9,3.1,1.5,0.1,Iris-setosa
|
37 |
+
5,3.2,1.2,0.2,Iris-setosa
|
38 |
+
5.5,3.5,1.3,0.2,Iris-setosa
|
39 |
+
4.9,3.1,1.5,0.1,Iris-setosa
|
40 |
+
4.4,3,1.3,0.2,Iris-setosa
|
41 |
+
5.1,3.4,1.5,0.2,Iris-setosa
|
42 |
+
5,3.5,1.3,0.3,Iris-setosa
|
43 |
+
4.5,2.3,1.3,0.3,Iris-setosa
|
44 |
+
4.4,3.2,1.3,0.2,Iris-setosa
|
45 |
+
5,3.5,1.6,0.6,Iris-setosa
|
46 |
+
5.1,3.8,1.9,0.4,Iris-setosa
|
47 |
+
4.8,3,1.4,0.3,Iris-setosa
|
48 |
+
5.1,3.8,1.6,0.2,Iris-setosa
|
49 |
+
4.6,3.2,1.4,0.2,Iris-setosa
|
50 |
+
5.3,3.7,1.5,0.2,Iris-setosa
|
51 |
+
5,3.3,1.4,0.2,Iris-setosa
|
52 |
+
7,3.2,4.7,1.4,Iris-versicolor
|
53 |
+
6.4,3.2,4.5,1.5,Iris-versicolor
|
54 |
+
6.9,3.1,4.9,1.5,Iris-versicolor
|
55 |
+
5.5,2.3,4,1.3,Iris-versicolor
|
56 |
+
6.5,2.8,4.6,1.5,Iris-versicolor
|
57 |
+
5.7,2.8,4.5,1.3,Iris-versicolor
|
58 |
+
6.3,3.3,4.7,1.6,Iris-versicolor
|
59 |
+
4.9,2.4,3.3,1,Iris-versicolor
|
60 |
+
6.6,2.9,4.6,1.3,Iris-versicolor
|
61 |
+
5.2,2.7,3.9,1.4,Iris-versicolor
|
62 |
+
5,2,3.5,1,Iris-versicolor
|
63 |
+
5.9,3,4.2,1.5,Iris-versicolor
|
64 |
+
6,2.2,4,1,Iris-versicolor
|
65 |
+
6.1,2.9,4.7,1.4,Iris-versicolor
|
66 |
+
5.6,2.9,3.6,1.3,Iris-versicolor
|
67 |
+
6.7,3.1,4.4,1.4,Iris-versicolor
|
68 |
+
5.6,3,4.5,1.5,Iris-versicolor
|
69 |
+
5.8,2.7,4.1,1,Iris-versicolor
|
70 |
+
6.2,2.2,4.5,1.5,Iris-versicolor
|
71 |
+
5.6,2.5,3.9,1.1,Iris-versicolor
|
72 |
+
5.9,3.2,4.8,1.8,Iris-versicolor
|
73 |
+
6.1,2.8,4,1.3,Iris-versicolor
|
74 |
+
6.3,2.5,4.9,1.5,Iris-versicolor
|
75 |
+
6.1,2.8,4.7,1.2,Iris-versicolor
|
76 |
+
6.4,2.9,4.3,1.3,Iris-versicolor
|
77 |
+
6.6,3,4.4,1.4,Iris-versicolor
|
78 |
+
6.8,2.8,4.8,1.4,Iris-versicolor
|
79 |
+
6.7,3,5,1.7,Iris-versicolor
|
80 |
+
6,2.9,4.5,1.5,Iris-versicolor
|
81 |
+
5.7,2.6,3.5,1,Iris-versicolor
|
82 |
+
5.5,2.4,3.8,1.1,Iris-versicolor
|
83 |
+
5.5,2.4,3.7,1,Iris-versicolor
|
84 |
+
5.8,2.7,3.9,1.2,Iris-versicolor
|
85 |
+
6,2.7,5.1,1.6,Iris-versicolor
|
86 |
+
5.4,3,4.5,1.5,Iris-versicolor
|
87 |
+
6,3.4,4.5,1.6,Iris-versicolor
|
88 |
+
6.7,3.1,4.7,1.5,Iris-versicolor
|
89 |
+
6.3,2.3,4.4,1.3,Iris-versicolor
|
90 |
+
5.6,3,4.1,1.3,Iris-versicolor
|
91 |
+
5.5,2.5,4,1.3,Iris-versicolor
|
92 |
+
5.5,2.6,4.4,1.2,Iris-versicolor
|
93 |
+
6.1,3,4.6,1.4,Iris-versicolor
|
94 |
+
5.8,2.6,4,1.2,Iris-versicolor
|
95 |
+
5,2.3,3.3,1,Iris-versicolor
|
96 |
+
5.6,2.7,4.2,1.3,Iris-versicolor
|
97 |
+
5.7,3,4.2,1.2,Iris-versicolor
|
98 |
+
5.7,2.9,4.2,1.3,Iris-versicolor
|
99 |
+
6.2,2.9,4.3,1.3,Iris-versicolor
|
100 |
+
5.1,2.5,3,1.1,Iris-versicolor
|
101 |
+
5.7,2.8,4.1,1.3,Iris-versicolor
|
102 |
+
6.3,3.3,6,2.5,Iris-virginica
|
103 |
+
5.8,2.7,5.1,1.9,Iris-virginica
|
104 |
+
7.1,3,5.9,2.1,Iris-virginica
|
105 |
+
6.3,2.9,5.6,1.8,Iris-virginica
|
106 |
+
6.5,3,5.8,2.2,Iris-virginica
|
107 |
+
7.6,3,6.6,2.1,Iris-virginica
|
108 |
+
4.9,2.5,4.5,1.7,Iris-virginica
|
109 |
+
7.3,2.9,6.3,1.8,Iris-virginica
|
110 |
+
6.7,2.5,5.8,1.8,Iris-virginica
|
111 |
+
7.2,3.6,6.1,2.5,Iris-virginica
|
112 |
+
6.5,3.2,5.1,2,Iris-virginica
|
113 |
+
6.4,2.7,5.3,1.9,Iris-virginica
|
114 |
+
6.8,3,5.5,2.1,Iris-virginica
|
115 |
+
5.7,2.5,5,2,Iris-virginica
|
116 |
+
5.8,2.8,5.1,2.4,Iris-virginica
|
117 |
+
6.4,3.2,5.3,2.3,Iris-virginica
|
118 |
+
6.5,3,5.5,1.8,Iris-virginica
|
119 |
+
7.7,3.8,6.7,2.2,Iris-virginica
|
120 |
+
7.7,2.6,6.9,2.3,Iris-virginica
|
121 |
+
6,2.2,5,1.5,Iris-virginica
|
122 |
+
6.9,3.2,5.7,2.3,Iris-virginica
|
123 |
+
5.6,2.8,4.9,2,Iris-virginica
|
124 |
+
7.7,2.8,6.7,2,Iris-virginica
|
125 |
+
6.3,2.7,4.9,1.8,Iris-virginica
|
126 |
+
6.7,3.3,5.7,2.1,Iris-virginica
|
127 |
+
7.2,3.2,6,1.8,Iris-virginica
|
128 |
+
6.2,2.8,4.8,1.8,Iris-virginica
|
129 |
+
6.1,3,4.9,1.8,Iris-virginica
|
130 |
+
6.4,2.8,5.6,2.1,Iris-virginica
|
131 |
+
7.2,3,5.8,1.6,Iris-virginica
|
132 |
+
7.4,2.8,6.1,1.9,Iris-virginica
|
133 |
+
7.9,3.8,6.4,2,Iris-virginica
|
134 |
+
6.4,2.8,5.6,2.2,Iris-virginica
|
135 |
+
6.3,2.8,5.1,1.5,Iris-virginica
|
136 |
+
6.1,2.6,5.6,1.4,Iris-virginica
|
137 |
+
7.7,3,6.1,2.3,Iris-virginica
|
138 |
+
6.3,3.4,5.6,2.4,Iris-virginica
|
139 |
+
6.4,3.1,5.5,1.8,Iris-virginica
|
140 |
+
6,3,4.8,1.8,Iris-virginica
|
141 |
+
6.9,3.1,5.4,2.1,Iris-virginica
|
142 |
+
6.7,3.1,5.6,2.4,Iris-virginica
|
143 |
+
6.9,3.1,5.1,2.3,Iris-virginica
|
144 |
+
5.8,2.7,5.1,1.9,Iris-virginica
|
145 |
+
6.8,3.2,5.9,2.3,Iris-virginica
|
146 |
+
6.7,3.3,5.7,2.5,Iris-virginica
|
147 |
+
6.7,3,5.2,2.3,Iris-virginica
|
148 |
+
6.3,2.5,5,1.9,Iris-virginica
|
149 |
+
6.5,3,5.2,2,Iris-virginica
|
150 |
+
6.2,3.4,5.4,2.3,Iris-virginica
|
151 |
+
5.9,3,5.1,1.8,Iris-virginica
|
requirements.txt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
streamlit
|
2 |
+
pandas
|
3 |
+
scikit-learn
|