Spaces:
Sleeping
Sleeping
Esmaeilkiani
commited on
Commit
•
5b25a21
1
Parent(s):
c368924
Update app.py
Browse files
app.py
CHANGED
@@ -1,6 +1,5 @@
|
|
1 |
import streamlit as st
|
2 |
import pandas as pd
|
3 |
-
import numpy as np
|
4 |
import joblib
|
5 |
from sklearn.linear_model import LinearRegression
|
6 |
from sklearn.ensemble import RandomForestRegressor
|
@@ -10,13 +9,13 @@ from catboost import CatBoostRegressor
|
|
10 |
from sklearn.model_selection import train_test_split
|
11 |
from sklearn.metrics import mean_absolute_error
|
12 |
|
13 |
-
#
|
14 |
st.title("اداره زراعت و کنترل محصول")
|
15 |
|
16 |
-
#
|
17 |
model_choice = st.sidebar.selectbox("انتخاب مدل", ["Linear Regression", "Random Forest", "XGBoost", "LightGBM", "CatBoost"])
|
18 |
|
19 |
-
#
|
20 |
uploaded_file = st.sidebar.file_uploader("بارگذاری فایل دادهها", type=["csv", "xlsx"])
|
21 |
if uploaded_file is not None:
|
22 |
if uploaded_file.name.endswith('.csv'):
|
@@ -27,7 +26,7 @@ if uploaded_file is not None:
|
|
27 |
st.write("پیشنمایش دادهها:")
|
28 |
st.dataframe(data.head())
|
29 |
|
30 |
-
#
|
31 |
features = st.sidebar.multiselect("انتخاب ویژگیها", data.columns)
|
32 |
target = st.sidebar.selectbox("انتخاب برچسب", data.columns)
|
33 |
|
@@ -55,7 +54,7 @@ if uploaded_file is not None:
|
|
55 |
|
56 |
st.write(f"خطای مدل: {error}")
|
57 |
|
58 |
-
#
|
59 |
joblib.dump(model, 'model.pkl')
|
60 |
st.success("مدل با موفقیت آموزش دیده و ذخیره شد.")
|
61 |
else:
|
@@ -63,7 +62,7 @@ if uploaded_file is not None:
|
|
63 |
else:
|
64 |
st.warning("لطفاً یک فایل داده بارگذاری کنید.")
|
65 |
|
66 |
-
#
|
67 |
st.header("پیشبینی بازده عملکرد")
|
68 |
|
69 |
uploaded_model = st.file_uploader("بارگذاری مدل ذخیره شده", type=["pkl"])
|
@@ -84,6 +83,15 @@ if uploaded_model is not None:
|
|
84 |
st.write("پیشبینیها:")
|
85 |
st.write(predictions)
|
86 |
|
87 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
else:
|
89 |
st.warning("لطفاً یک مدل ذخیره شده بارگذاری کنید.")
|
|
|
1 |
import streamlit as st
|
2 |
import pandas as pd
|
|
|
3 |
import joblib
|
4 |
from sklearn.linear_model import LinearRegression
|
5 |
from sklearn.ensemble import RandomForestRegressor
|
|
|
9 |
from sklearn.model_selection import train_test_split
|
10 |
from sklearn.metrics import mean_absolute_error
|
11 |
|
12 |
+
# Title of the application
|
13 |
st.title("اداره زراعت و کنترل محصول")
|
14 |
|
15 |
+
# Model selection
|
16 |
model_choice = st.sidebar.selectbox("انتخاب مدل", ["Linear Regression", "Random Forest", "XGBoost", "LightGBM", "CatBoost"])
|
17 |
|
18 |
+
# Data upload
|
19 |
uploaded_file = st.sidebar.file_uploader("بارگذاری فایل دادهها", type=["csv", "xlsx"])
|
20 |
if uploaded_file is not None:
|
21 |
if uploaded_file.name.endswith('.csv'):
|
|
|
26 |
st.write("پیشنمایش دادهها:")
|
27 |
st.dataframe(data.head())
|
28 |
|
29 |
+
# Feature and label selection
|
30 |
features = st.sidebar.multiselect("انتخاب ویژگیها", data.columns)
|
31 |
target = st.sidebar.selectbox("انتخاب برچسب", data.columns)
|
32 |
|
|
|
54 |
|
55 |
st.write(f"خطای مدل: {error}")
|
56 |
|
57 |
+
# Save model
|
58 |
joblib.dump(model, 'model.pkl')
|
59 |
st.success("مدل با موفقیت آموزش دیده و ذخیره شد.")
|
60 |
else:
|
|
|
62 |
else:
|
63 |
st.warning("لطفاً یک فایل داده بارگذاری کنید.")
|
64 |
|
65 |
+
# Prediction with saved model
|
66 |
st.header("پیشبینی بازده عملکرد")
|
67 |
|
68 |
uploaded_model = st.file_uploader("بارگذاری مدل ذخیره شده", type=["pkl"])
|
|
|
83 |
st.write("پیشبینیها:")
|
84 |
st.write(predictions)
|
85 |
|
86 |
+
# Generate a CSV for download
|
87 |
+
predictions_df = pd.DataFrame(predictions, columns=['Predictions'])
|
88 |
+
csv = predictions_df.to_csv(index=False).encode('utf-8')
|
89 |
+
|
90 |
+
st.download_button(
|
91 |
+
label="دانلود پیشبینیها",
|
92 |
+
data=csv,
|
93 |
+
file_name='predictions.csv',
|
94 |
+
mime='text/csv',
|
95 |
+
)
|
96 |
else:
|
97 |
st.warning("لطفاً یک مدل ذخیره شده بارگذاری کنید.")
|