Tzetha commited on
Commit
b540fed
·
1 Parent(s): 2af9820

Created ModeL

Browse files
Files changed (2) hide show
  1. app.py +56 -0
  2. car_data.csv +101 -0
app.py ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ import pandas as pd
3
+ import numpy as np
4
+ import pickle
5
+ from sklearn.model_selection import train_test_split
6
+ from sklearn.linear_model import LinearRegression
7
+ from sklearn.preprocessing import LabelEncoder
8
+
9
+ # Load dataset
10
+ @st.cache_data
11
+ def load_data():
12
+ df = pd.read_csv("car_data.csv") # Replace with your dataset
13
+ return df
14
+
15
+ def preprocess_data(df):
16
+ label_encoders = {}
17
+ for column in ["brand", "model", "fuel_type"]: # Encode categorical features
18
+ le = LabelEncoder()
19
+ df[column] = le.fit_transform(df[column])
20
+ label_encoders[column] = le
21
+ return df, label_encoders
22
+
23
+ # Train the model
24
+ def train_model(df):
25
+ X = df[["year", "mileage", "brand", "model", "fuel_type"]]
26
+ y = df["price"]
27
+ X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
28
+ model = LinearRegression()
29
+ model.fit(X_train, y_train)
30
+ return model
31
+
32
+ df = load_data()
33
+ df, label_encoders = preprocess_data(df)
34
+ model = train_model(df)
35
+
36
+ # Streamlit UI
37
+ st.title("Car Price Prediction App")
38
+ st.sidebar.header("Enter Car Details")
39
+
40
+ year = st.sidebar.slider("Year", int(df["year"].min()), int(df["year"].max()), 2015)
41
+ mileage = st.sidebar.number_input("Mileage (in km)", min_value=0, max_value=500000, value=50000)
42
+
43
+ brand = st.sidebar.selectbox("Brand", label_encoders["brand"].classes_)
44
+ filtered_models = df[df["brand"] == label_encoders["brand"].transform([brand])[0]]["model"].unique()
45
+ model_name = st.sidebar.selectbox("Model", label_encoders["model"].inverse_transform(filtered_models))
46
+ fuel_type = st.sidebar.selectbox("Fuel Type", label_encoders["fuel_type"].classes_)
47
+
48
+ if st.sidebar.button("Predict Price"):
49
+ brand_encoded = label_encoders["brand"].transform([brand])[0]
50
+ model_encoded = label_encoders["model"].transform([model_name])[0]
51
+ fuel_encoded = label_encoders["fuel_type"].transform([fuel_type])[0]
52
+
53
+ input_data = np.array([[year, mileage, brand_encoded, model_encoded, fuel_encoded]])
54
+ predicted_price = model.predict(input_data)[0]
55
+
56
+ st.write(f"### Predicted Car Price: ${predicted_price:,.2f}")
car_data.csv ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ year,mileage,brand,model,fuel_type,price
2
+ 2022,114370,Ford,Escape,Hybrid,6674.87
3
+ 2005,218398,Ford,Focus,Petrol,48657.79
4
+ 2015,217329,Honda,Civic,Hybrid,55673.83
5
+ 2022,30173,Toyota,Camry,Hybrid,29420.31
6
+ 2014,21973,Toyota,Camry,Petrol,41318.21
7
+ 2014,132154,Toyota,Camry,Diesel,57053.43
8
+ 2017,65727,Nissan,Rogue,Diesel,51498.18
9
+ 2005,122186,Honda,Accord,Hybrid,58685.49
10
+ 2017,202461,Nissan,Rogue,Hybrid,16044.29
11
+ 2014,44157,Toyota,Corolla,Petrol,50544.38
12
+ 2013,230461,Toyota,RAV4,Electric,8595.83
13
+ 2012,49377,Ford,Escape,Electric,10107.73
14
+ 2023,10407,Nissan,Altima,Electric,32341.96
15
+ 2009,218313,Honda,Civic,Hybrid,7101.26
16
+ 2023,49655,Ford,Escape,Electric,50828.85
17
+ 2014,158137,Nissan,Sentra,Petrol,38753.23
18
+ 2008,85780,Honda,Accord,Petrol,50089.18
19
+ 2013,218923,Honda,CR-V,Electric,16676.43
20
+ 2019,169648,Nissan,Sentra,Petrol,57087.33
21
+ 2023,93206,Honda,CR-V,Electric,26363.71
22
+ 2008,237357,Toyota,Camry,Hybrid,32794.84
23
+ 2014,228055,Toyota,Camry,Petrol,18061.17
24
+ 2009,205737,Honda,Accord,Petrol,56591.04
25
+ 2023,21161,BMW,X5,Diesel,46022.34
26
+ 2014,236502,Ford,Fusion,Electric,33802.91
27
+ 2011,106454,BMW,X5,Hybrid,18870.85
28
+ 2021,149049,BMW,3 Series,Petrol,42588.23
29
+ 2020,161145,Toyota,RAV4,Petrol,17435.75
30
+ 2016,147931,Honda,CR-V,Hybrid,13650.18
31
+ 2014,228821,BMW,X5,Electric,54729.7
32
+ 2023,234720,Ford,Fusion,Diesel,45337.72
33
+ 2012,173181,Nissan,Altima,Diesel,8236.32
34
+ 2020,211188,Toyota,RAV4,Petrol,22071.91
35
+ 2008,162549,BMW,3 Series,Petrol,11114.1
36
+ 2017,97557,Toyota,Camry,Hybrid,42633.37
37
+ 2011,55172,BMW,X3,Hybrid,14257.55
38
+ 2021,188935,Honda,Accord,Diesel,26893.15
39
+ 2010,131149,Toyota,Camry,Petrol,16139.29
40
+ 2010,196634,Toyota,Corolla,Hybrid,53997.08
41
+ 2023,32603,BMW,X3,Hybrid,8230.34
42
+ 2012,232201,BMW,X5,Hybrid,48270.97
43
+ 2017,126971,Nissan,Sentra,Electric,43073.84
44
+ 2017,157109,Honda,Civic,Petrol,9965.82
45
+ 2016,137246,Ford,Focus,Hybrid,12194.14
46
+ 2013,97282,Nissan,Rogue,Petrol,14321.09
47
+ 2022,26755,Toyota,RAV4,Diesel,18314.11
48
+ 2015,195123,Ford,Focus,Electric,7668.99
49
+ 2006,83255,Ford,Focus,Diesel,43519.67
50
+ 2015,148711,Toyota,Corolla,Petrol,49230.81
51
+ 2005,188059,Honda,Civic,Diesel,17717.2
52
+ 2018,48615,Nissan,Altima,Electric,4836.54
53
+ 2007,147590,Toyota,Camry,Diesel,21724.47
54
+ 2018,45428,Nissan,Altima,Petrol,49927.27
55
+ 2019,215070,Ford,Fusion,Petrol,28441.83
56
+ 2014,228261,Nissan,Altima,Petrol,44328.07
57
+ 2016,184600,Honda,Civic,Petrol,34245.7
58
+ 2006,88461,BMW,3 Series,Diesel,19569.62
59
+ 2014,133896,Ford,Escape,Diesel,57019.9
60
+ 2017,61302,Nissan,Sentra,Petrol,26287.24
61
+ 2014,144269,Nissan,Altima,Electric,43487.28
62
+ 2022,244580,Honda,Civic,Diesel,28236.3
63
+ 2005,24100,Toyota,Camry,Electric,12674.1
64
+ 2007,118456,Nissan,Rogue,Hybrid,41507.96
65
+ 2020,20359,BMW,3 Series,Hybrid,46188.46
66
+ 2007,26897,BMW,3 Series,Petrol,29756.59
67
+ 2022,103680,Honda,CR-V,Hybrid,42218.02
68
+ 2022,207698,Toyota,Camry,Electric,23484.79
69
+ 2021,216329,Honda,Accord,Petrol,11671.72
70
+ 2020,142876,BMW,X3,Diesel,52032.58
71
+ 2005,191069,Toyota,Camry,Petrol,37422.52
72
+ 2014,60179,Ford,Focus,Hybrid,33384.69
73
+ 2016,202737,Toyota,Corolla,Electric,54489.42
74
+ 2007,71761,Nissan,Altima,Hybrid,5589.71
75
+ 2013,217915,Nissan,Sentra,Petrol,19861.67
76
+ 2020,66157,Nissan,Rogue,Petrol,31263.52
77
+ 2011,47636,Ford,Focus,Diesel,54826.2
78
+ 2016,239017,Toyota,RAV4,Electric,42639.12
79
+ 2008,85245,Honda,Civic,Diesel,36393.84
80
+ 2008,7924,Nissan,Sentra,Petrol,57417.32
81
+ 2018,80220,Honda,Civic,Hybrid,58809.73
82
+ 2014,117704,Honda,CR-V,Electric,49856.84
83
+ 2015,177025,Honda,CR-V,Hybrid,10376.35
84
+ 2005,35885,BMW,X3,Petrol,51045.28
85
+ 2016,196392,BMW,X5,Electric,41524.89
86
+ 2005,130887,Nissan,Altima,Hybrid,43061.41
87
+ 2023,73929,Ford,Focus,Diesel,5308.57
88
+ 2023,136653,Ford,Focus,Hybrid,25862.99
89
+ 2015,173398,Toyota,Camry,Diesel,37219.05
90
+ 2011,69238,Honda,CR-V,Diesel,4867.25
91
+ 2005,87947,Honda,CR-V,Diesel,11732.04
92
+ 2013,133510,Honda,Civic,Electric,12632.23
93
+ 2018,9968,Toyota,RAV4,Hybrid,28529.03
94
+ 2017,197988,Ford,Focus,Hybrid,39786.83
95
+ 2012,86434,Nissan,Sentra,Diesel,23234.51
96
+ 2008,222832,Honda,Civic,Diesel,38588.24
97
+ 2008,100769,Ford,Fusion,Diesel,42574.31
98
+ 2013,22411,Nissan,Rogue,Electric,43318.02
99
+ 2014,113829,Toyota,Camry,Electric,7845.3
100
+ 2007,202200,Nissan,Rogue,Diesel,14169.5
101
+ 2016,7334,Ford,Fusion,Petrol,39685.37