Processing math: 100%

使用 Python 分析二手车销售价格


分析二手车的销售价格对于买卖双方做出明智的决策至关重要,而使用 Python 可以轻松完成。通过利用 Python 的数据分析和可视化功能,可以从可用数据集中获得有价值的见解。

本文探讨了使用各种图表进行数据预处理、清洗和分析销售价格的过程。此外,它还涵盖了使用线性回归模型预测销售价格。借助 Python 的强大库,如 pandas、matplotlib、seaborn 和 scikit-learn,此分析提供了一种全面方法来了解影响二手车价格的因素并做出准确的价格预测。

如何使用 Python 分析二手车的销售价格?

请按照以下步骤使用 Python 分析二手车的销售价格:

步骤 1:导入重要库

import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error

步骤 2:读取数据集并将其存储在 pandas 数据框中

data = pd.read_csv('C:/Users/Tutorialspoint/Documents/autos.csv', encoding='latin1')

步骤 3:检查数据集的结构

data.info() print(data.head())

输出

dateCrawled  seller offerType  price vehicleType  \
3 2016-03-17 16:54:04  privat   Angebot   1500  kleinwagen   
4 2016-03-31 17:25:20  privat   Angebot   3600  kleinwagen   
5 2016-04-04 17:36:23  privat   Angebot    650   limousine   
6 2016-04-01 20:48:51  privat   Angebot   2200      cabrio   
7 2016-03-21 18:54:38  privat   Angebot      0   limousine   

   yearOfRegistration  gearbox  powerPS    model  kilometer  \
3                2001  manuell       75     golf     150000   
4                2008  manuell       69    fabia      90000   
5                1995  manuell      102      3er     150000   
6                2004  manuell      109  2_reihe     150000   
7                1980  manuell       50   andere      40000   

   monthOfRegistration fuelType       brand notRepairedDamage dateCreated  \
3                    6   benzin  volkswagen              nein  2016-03-17   
4                    7   diesel       skoda              nein  2016-03-31   
5                   10   benzin         bmw                ja  2016-04-04   
6                    8   benzin     peugeot              nein  2016-04-01   
7                    7   benzin  volkswagen              nein  2016-03-21   

              lastSeen  
3  2016-03-17 17:40:17  
4  2016-04-06 10:17:21  
5  2016-04-06 19:17:07  
6  2016-04-05 18:18:39  
7  2016-03-25 16:47:58  

步骤 4:处理缺失值

data = data.dropna()

步骤 5:仅在必要时转换数据类型

data['dateCrawled'] = pd.to_datetime(data['dateCrawled']) data['dateCreated'] = pd.to_datetime(data['dateCreated'])

步骤 6:数据清洗

# Remove irrelevant columns columns_to_drop = ['name', 'abtest', 'nrOfPictures', 'postalCode'] data = data.drop(columns=columns_to_drop)

步骤 7:使用图表分析销售价格

示例 1:销售价格的直方图

plt.figure(figsize=(10, 6)) sns.histplot(data['price'], bins=20, kde=True) plt.xlabel('Price') plt.ylabel('Count') plt.title('Histogram of Selling Price') plt.show()

输出

示例 2:按车辆类型划分的销售价格箱线图

plt.figure(figsize=(10, 6)) sns.boxplot(x='vehicleType', y='price', data=data) plt.xlabel('Vehicle Type') plt.ylabel('Price') plt.title('Boxplot of Selling Price by Vehicle Type') plt.show()

输出

示例 3:注册年份与价格的散点图

plt.figure(figsize=(10, 6)) sns.scatterplot(x='yearOfRegistration', y='price', data=data) plt.xlabel('Year of Registration') plt.ylabel('Price') plt.title('Scatter plot of Year of Registration vs. Price') plt.show()

输出

步骤 8:使用线性回归预测销售价格

选择相关的特征和目标变量

features = ['yearOfRegistration', 'powerPS', 'kilometer'] target = 'price' X = data[features] y = data[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)

输出

LinearRegression

步骤 9:对测试集进行预测并打印预测的销售价格

# Make predictions on the test set y_pred = model.predict(X_test) # Print the predicted selling price print("Predicted Selling Price:") for price in y_pred: print(price)

输出

Predicted Selling Price:
4697.820983235375
4882.88628493459
2407.3556394173065
4264.297985512414
5801.285403149028
6486.864555639331
18844.05037380848
3615.3753698624205
15154.480417441286
7511.02954521589
5815.107292202709
14360.747495675983
3868.0368050450925
6433.695591624826
3019.621718226932
……………………………………
3723.5291391374194

步骤 10:使用均方误差 (MSE) 评估模型

mse = mean_squared_error(y_test, y_pred) print(f"Mean Squared Error: {mse}")

输出

Mean Squared Error: 3838157266.6337757

结论

总之,Python 的多功能性和强大的库使其成为分析二手车销售价格的理想工具。通过数据预处理、清洗和可视化,可以获得有价值的见解。此外,使用机器学习算法进行预测建模可以实现准确的价格预测。此分析使买卖双方能够在二手车市场中做出明智的决策。

更新于:2023年7月24日

469 次浏览

开启你的 职业生涯

完成课程获得认证

开始学习
广告