Directorio artículo
1. El experimento
De acuerdo con el archivo csv para predecir el precio del coche a la propiedad (modelo de coche, kilometraje, Precio de venta ($), Edad (años)). Dos predicciones se dan a continuación onehot método de codificación, en el que el modelo con LinearRegression.
Autodata
Contraseña: 7izi
pronóstico 2. Formación +
método 2.1.get_dummies
import pandas as pd
df = pd.read_csv('carprices.csv')
dummies = pd.get_dummies(df['Car Model']) #对Car Model字段用get_dummies数字化
dummies
merged = pd.concat([df,dummies],axis='columns') #合并字段
final = merged.drop(['Car Model','Mercedez Benz C class'],axis='columns') #删除原Car Model字段和Mercedez Benz C class,其中删除Mercedez Benz C class是为了防止虚拟陷阱(详细请查阅相关资料)
X = final.drop('Sell Price($)',axis='columns') #训练数据
y = final['Sell Price($)'] #训练标签
from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X,y) #用LinearRegression拟合训练数据
model.score(X,y) #计算得分
Pronóstico:
método 2.2.OneHotEncoder
from sklearn.preprocessing import LabelEncoder #导入LabelEncoder模块
le = LabelEncoder() #实例化对象
dfle = df
dfle['Car Model'] = le.fit_transform(dfle['Car Model']) #利用LabelEncoder将字段Car Model数字化
dfle
X = dfle[['Car Model','Mileage','Age(yrs)']].values
y = dfle['Sell Price($)'].values
from sklearn.preprocessing import OneHotEncoder #导入OneHotEncoder模块
ohe = OneHotEncoder(categorical_features=[0]) #对第一个字段OneHot编码
X = ohe.fit_transform(X).toarray() #转化成0、1形式
X = X[:,1:] #其中删除Mercedez Benz C class是为了防止虚拟陷阱(详细请查阅相关资料)
X
model.fit(X,y)
model.score(X,y)
Pronóstico: