自己怎么做百度网站,h5游戏搭建,wordpress防破解版,网站开发提供的服务简述
今天我们来分析一个汽车数据。 数据集由以下列组成#xff1a;
名称#xff1a;每辆汽车的唯一标识符。MPG#xff1a;燃油效率#xff0c;以英里/加仑为单位。气缸数#xff1a;发动机中的气缸数。排量#xff1a;发动机排量#xff0c;表示其大小或容量。马力
名称每辆汽车的唯一标识符。MPG燃油效率以英里/加仑为单位。气缸数发动机中的气缸数。排量发动机排量表示其大小或容量。马力发动机的功率输出。重量汽车的重量。加速提高速度的能力以秒为单位。车型年份汽车模型的制造年份。原产地每辆汽车的原产地国家或地区。 总的来看数据内容不是很多分析起来还是很容易的。
目标
这个项目的主要目标是了解汽车的不同特性之间的关系以及它们如何影响燃油效率(MPG -每加仑英里数)。该项目还旨在发现数据中任何有趣的趋势或模式从而为汽车行业提供见解。
数据清理和预处理
# 导入库
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
plt.rcParams[font.sans-serif] SimHei ## 设置中文显示from scipy.stats import f_onewayfrom scipy.stats import ttest_ind# 导入数据
df pd.read_csv(D:桌面\\Automobile.csv,encodinggbk)检查所有列的数据类型 检查缺失值 箱型图
df[马力] df[马力].fillna(df[马力].mean())# 数字列列表
num_cols [mpg, 气缸数, 排量, 马力, 重量, 加速, 车型年份]for col in num_cols:plt.figure(figsize(8, 4))sns.boxplot(df[col])plt.title(f{col}箱线图 )plt.show()处理 ‘马力’ 中的异常值
首先计算“马力”horsepower的四分位距IQR
Q1_hp df[马力].quantile(0.25)
Q3_hp df[马力].quantile(0.75)
IQR_hp Q3_hp - Q1_hp定义异常值的上限和下限。
lower_bound_hp Q1_hp - 1.5 * IQR_hp
upper_bound_hp Q3_hp 1.5 * IQR_hp
将异常值限制在一定范围内。
df[马力] df[马力].clip(lowerlower_bound_hp, upperupper_bound_hp)重复这个过程针对“重量”
Q1_weight df[重量].quantile(0.25)
Q3_weight df[重量].quantile(0.75)
IQR_weight Q3_weight - Q1_weightlower_bound_weight Q1_weight - 1.5 * IQR_weight
upper_bound_weight Q3_weight 1.5 * IQR_weightdf[重量] df[重量].clip(lowerlower_bound_weight, upperupper_bound_weight)特征工程
创建一个新的特征’hp_to_weight’它是马力与重量的比率。
df[hp_to_weight] df[马力] / df[重量]检查前几行 DataFrame 以确认更改。 df.head()生成数值变量的描述性统计数据。 df.describe()数据可视化
生成数值变量的直方图。 num_cols [mpg, 气缸数, 排量, 马力, 重量, 加速, 车型年份, hp_to_weight]for col in num_cols:plt.figure(figsize(8, 4))sns.histplot(df[col], kdeTrue)plt.title(f {col}直方图)plt.show()生成分类变量的条形图 plt.figure(figsize(8, 4))
sns.countplot(x原产地, datadf)
plt.title(原产地条形图)
plt.show()双变量分析
为成对的数值变量生成散点图 num_cols [mpg, 气缸数, 排量, 马力, 重量, 加速, 车型年份, hp_to_weight]sns.pairplot(df[num_cols])
plt.show()数值变化的相关矩阵
#计算数值变量之间的相关系数。
corr_matrix df[num_cols].corr()# 显示相关矩阵
sns.heatmap(corr_matrix, annotTrue, cmapcoolwarm)
plt.title(数值变化的相关矩阵)
plt.show()group1 df[df[原产地] usa][mpg]
group2 df[df[原产地] europe][mpg]
group3 df[df[原产地] japan][mpg]# 进行单因素方差分析。
f_stat, p_value f_oneway(group1, group2, group3)# 输出 F-statistic 和 p-value
print(fF-statistic: {f_stat})
print(fp-value: {p_value})多变量分析
生成一组变量的配对图。
subset_cols [mpg, 马力, 重量, 原产地]
sns.pairplot(df[subset_cols], hue原产地)
plt.show()时间分析
# 计算每个型号年份的平均每加仑英里数。
avg_mpg_by_year df.groupby(车型年份)[mpg].mean()# 绘制随着时间变化的平均每加仑英里数。
plt.figure(figsize(10, 6))
sns.lineplot(dataavg_mpg_by_year)
plt.title(平均每加仑英里数按车型年份分类)
plt.xlabel(车型年份)
plt.ylabel( MPG平均值)
plt.show()假设检验
# 删除具有缺失“mpg”值的行。
df df.dropna(subset[mpg])# 将数据分成两组。
group1 df[df[车型年份] 75][mpg] # 1975年之前制造的汽车
group2 df[df[车型年份] 75][mpg] # 1975年之后制造的汽车# 进行双样本t检验。
from scipy.stats import ttest_ind
t_stat, p_value ttest_ind(group1, group2)# 输出 the t-statistic the p-value
print(ft-statistic: {t_stat})
print(fp-value: {p_value})结论 随着时间的推移燃油效率:平均每加仑英里数(mpg)似乎随着时间的推移而增加这表明汽车变得更加省油。这可能是由于技术的进步和汽车制造业对燃油效率的日益关注。 马力和重量:马力和重量之间似乎存在正相关关系表明较重的汽车往往拥有更强劲的发动机。然而马力和重量似乎都与mpg负相关这表明较重的汽车和发动机功率更大的汽车往往更省油。 产地和燃油效率:我们的假设检验表明不同产地的汽车平均每加仑汽油行驶里程有显著差异。这表明汽车的生产地区可能会对其燃油效率产生影响。 新功能-马力重量比:我们创造的新功能马力重量比可能会为这些变量和mpg之间的关系提供不同的结果
题外话
我整理了一些资源如果你也对Python和大数据感兴趣关注下方公众号免费提取资料。