BeyzaS commited on
Commit
1a18a22
·
verified ·
1 Parent(s): 0679d31

Upload 2 files

Browse files
Files changed (2) hide show
  1. app.py +84 -0
  2. requirements.txt +0 -0
app.py ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -*- coding: utf-8 -*-
2
+ """Car_predict.ipynb
3
+
4
+ Automatically generated by Colab.
5
+
6
+ Original file is located at
7
+ https://colab.research.google.com/drive/1ydYFB1nlbvDcEQ4QKJFLLlV9JAhiinwU
8
+
9
+ # Car Prediction
10
+ """
11
+
12
+ import pandas as pd
13
+ from sklearn.model_selection import train_test_split
14
+ from sklearn.linear_model import LinearRegression
15
+ from sklearn.metrics import r2_score, mean_squared_error
16
+ from sklearn.compose import ColumnTransformer
17
+ from sklearn.preprocessing import OneHotEncoder, StandardScaler
18
+ from sklearn.pipeline import Pipeline
19
+
20
+ # pip install xlrd
21
+
22
+ ls
23
+
24
+ df=pd.read_excel("cars.xls")
25
+ df
26
+
27
+ df.info()
28
+
29
+ """## Veri Ön işleme"""
30
+
31
+ X = df.drop("Price", axis=1)
32
+ y=df["Price"]
33
+
34
+ X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=0.2,random_state=42)
35
+
36
+ preprocess = ColumnTransformer(transformers=[("num",StandardScaler(),["Mileage","Cylinder","Liter","Doors"]),
37
+ ("cat",OneHotEncoder(),["Make","Model","Trim","Type"])])
38
+
39
+ my_model = LinearRegression()
40
+
41
+ # Pipeline tanımla
42
+ pipe = Pipeline(steps=[("preprocessor",preprocess),("model",my_model)])
43
+
44
+ pipe.fit(X_train,y_train)
45
+
46
+ y_pred=pipe.predict(X_test)
47
+ print("RMSE",mean_squared_error(y_test,y_pred)**0.5)
48
+ print("R2",r2_score(y_test,y_pred))
49
+
50
+ # pip install streamlit
51
+
52
+ import streamlit as st
53
+ def price(make,model,trim,milage,car_type,cylinder,liter,doors,cruise,sound,leather):
54
+ input_data=pd.DataFrame({'Make':[make],
55
+ 'Model':[model],
56
+ 'Trim':[trim],
57
+ 'Mileage':[mileage],
58
+ 'Type':[car_type],
59
+ 'Cylinder':[cylinder],
60
+ 'Liter':[liter],
61
+ 'Doors':[doors],
62
+ 'Cruise':[cruise],
63
+ 'Sound':[sound],
64
+ 'Leather':[leather]})
65
+ prediction=pipe.predict(input_data)[0]
66
+ return prediction
67
+
68
+ st.title("2. El Araba Fiyat Tahmin @Beyza Nur Sarıkaya")
69
+ st.write("Arabanın öselliklerini seçiniz")
70
+ make=st.selectbox('Marka',df['Make'].unique())
71
+ model=st.selectbox('Model',df[df['Make']==make]['Model'].unique())
72
+ trim=st.selectbox('Trim',df[(df['Make']==make) &(df['Model']==model)]['Trim'].unique())
73
+ mileage=st.number_input('Kilometre',100,200000)
74
+ car_type=st.selectbox('Araç Tipi',df[(df['Make']==make) &(df['Model']==model)&(df['Trim']==trim)]['Type'].unique())
75
+ cylinder=st.selectbox('Cylinder',df['Cylinder'].unique())
76
+ liter=st.number_input('Motor hacmi',1,10)
77
+ doors=st.selectbox('Kapı sayısı',df['Doors'].unique())
78
+ cruise=st.radio('Hız Sbt.',[True,False])
79
+ sound=st.radio('Ses Sis.',[True,False])
80
+ leather=st.radio('Deri döşeme.',[True,False])
81
+ if st.button('Tahmin'):
82
+ pred=price(make,model,trim,mileage,car_type,cylinder,liter,doors,cruise,sound,leather)
83
+ st.write('Fiyat:$', round(pred[0],2))
84
+
requirements.txt ADDED
Binary file (150 Bytes). View file