narinsak unawong commited on
Commit
376e5b8
·
verified ·
1 Parent(s): 7d3e2eb

Upload 3 files

Browse files
Files changed (3) hide show
  1. app.py +39 -0
  2. iris.csv +151 -0
  3. 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