|
import numpy as np |
|
import streamlit as st |
|
from sklearn.datasets import load_iris |
|
from sklearn.linear_model import LinearRegression |
|
from sklearn.model_selection import train_test_split |
|
|
|
|
|
iris = load_iris() |
|
X = iris.data |
|
y = iris.target |
|
|
|
|
|
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) |
|
|
|
|
|
model = LinearRegression() |
|
model.fit(X_train, y_train) |
|
|
|
|
|
st.title("Iris Linear Regression") |
|
|
|
|
|
sepal_length = st.number_input("Sepal Length", min_value=0.0, max_value=10.0, value=5.8, step=0.1) |
|
sepal_width = st.number_input("Sepal Width", min_value=0.0, max_value=10.0, value=3.0, step=0.1) |
|
petal_length = st.number_input("Petal Length", min_value=0.0, max_value=10.0, value=3.8, step=0.1) |
|
petal_width = st.number_input("Petal Width", min_value=0.0, max_value=10.0, value=1.2, step=0.1) |
|
|
|
|
|
user_input = np.array([[sepal_length, sepal_width, petal_length, petal_width]]) |
|
prediction = model.predict(user_input) |
|
|
|
|
|
st.write(f"The predicted iris species is: {iris.target_names[int(prediction[0])]}") |