红酒数据集分析

一、简介

红酒数据集包括红酒的成分、产地和酒评等数据。这个数据集对于酿酒师、酿酒爱好者和市场分析师来说都非常有用。在本文中,我们将对红酒数据集进行探索性分析和建模预测,并通过数据可视化展示分析结果。

二、数据清洗

首先,我们需要检查数据集是否有缺失值和异常值。

import pandas as pd

wine = pd.read_csv('wine_data.csv')
print(wine.isnull().sum())

通过运行代码,我们发现数据集中没有缺失值。下一步是检查是否存在异常值。

import seaborn as sns

sns.boxplot(x=wine['price'])

从箱线图中,我们可以看到红酒价格的分布大致对称,但是有一些价格明显偏高。我们可以对价格进行多元统计分析,看看这些价格是否异常。

from statsmodels.formula.api import ols
lm = ols('price ~ country + points + variety', wine).fit()
print(lm.summary())

通过运行代码,我们可以看到存在少量异常值,我们可以将它们删除。

wine = wine[wine['price'] < 5000]

三、数据探索

1. 酒的产地、价格和评分的关系

我们首先想知道的是,红酒的产地、价格和评分是否有联系。

sns.scatterplot(x='price', y='points', hue='country', data=wine)

从散点图中,我们可以看到法国红酒价格高,品质也好。澳大利亚和南非产的红酒价格较低,评分不太高。这对于酒卖家和分析师来说都很重要。

2. 不同产地的红酒酒精度分布情况

我们还可以比较不同国家红酒酒精含量的分布情况。

sns.kdeplot(wine[wine['country']=='France']['alcohol'], label='France')
sns.kdeplot(wine[wine['country']=='Italy']['alcohol'], label='Italy')
sns.kdeplot(wine[wine['country']=='Spain']['alcohol'], label='Spain')

从核密度估计图中,我们可以发现法国红酒的酒精含量分布比较平均,而西班牙和意大利更加正态分布。

四、数据建模

现在我们将使用分类模型来预测红酒的产地。我们可以将数据集分成训练集和测试集,训练一个随机森林分类模型。

from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

X = wine[['price', 'points', 'alcohol']]
y = wine['country']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

rfc = RandomForestClassifier(n_estimators=100, max_depth=10)
rfc.fit(X_train, y_train)
y_pred = rfc.predict(X_test)

print('Accuracy score:', accuracy_score(y_test, y_pred))

从得分中,我们可以看到模型的准确率为76.7%,这非常不错。

五、总结和展望

通过对红酒数据集的探索和建模预测,我们可以发现红酒产地与价格、评分、酒精含量等存在一定关系。同时,我们还可以通过建模预测红酒的产地。不过,这个数据集还可以进一步探索,比如对各产地红酒的酿造技术和历史进行深入研究,同时可以与其他数据集结合分析。这些研究将有助于更好地理解红酒市场和饮品文化。

原创文章,作者:KEVGZ,如若转载,请注明出处:https://www.506064.com/n/366316.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
KEVGZKEVGZ
上一篇 2025-04-02 01:02
下一篇 2025-04-02 01:28

相关推荐

  • Python读取CSV数据画散点图

    本文将从以下方面详细阐述Python读取CSV文件并画出散点图的方法: 一、CSV文件介绍 CSV(Comma-Separated Values)即逗号分隔值,是一种存储表格数据的…

    编程 2025-04-29
  • Python中读入csv文件数据的方法用法介绍

    csv是一种常见的数据格式,通常用于存储小型数据集。Python作为一种广泛流行的编程语言,内置了许多操作csv文件的库。本文将从多个方面详细介绍Python读入csv文件的方法。…

    编程 2025-04-29
  • 如何用Python统计列表中各数据的方差和标准差

    本文将从多个方面阐述如何使用Python统计列表中各数据的方差和标准差, 并给出详细的代码示例。 一、什么是方差和标准差 方差是衡量数据变异程度的统计指标,它是每个数据值和该数据值…

    编程 2025-04-29
  • Python多线程读取数据

    本文将详细介绍多线程读取数据在Python中的实现方法以及相关知识点。 一、线程和多线程 线程是操作系统调度的最小单位。单线程程序只有一个线程,按照程序从上到下的顺序逐行执行。而多…

    编程 2025-04-29
  • Python爬取公交数据

    本文将从以下几个方面详细阐述python爬取公交数据的方法: 一、准备工作 1、安装相关库 import requests from bs4 import BeautifulSou…

    编程 2025-04-29
  • Python两张表数据匹配

    本篇文章将详细阐述如何使用Python将两张表格中的数据匹配。以下是具体的解决方法。 一、数据匹配的概念 在生活和工作中,我们常常需要对多组数据进行比对和匹配。在数据量较小的情况下…

    编程 2025-04-29
  • Python数据标准差标准化

    本文将为大家详细讲述Python中的数据标准差标准化,以及涉及到的相关知识。 一、什么是数据标准差标准化 数据标准差标准化是数据处理中的一种方法,通过对数据进行标准差标准化可以将不…

    编程 2025-04-29
  • 如何使用Python读取CSV数据

    在数据分析、数据挖掘和机器学习等领域,CSV文件是一种非常常见的文件格式。Python作为一种广泛使用的编程语言,也提供了方便易用的CSV读取库。本文将介绍如何使用Python读取…

    编程 2025-04-29
  • Python如何打乱数据集

    本文将从多个方面详细阐述Python打乱数据集的方法。 一、shuffle函数原理 shuffle函数是Python中的一个内置函数,主要作用是将一个可迭代对象的元素随机排序。 在…

    编程 2025-04-29
  • Python根据表格数据生成折线图

    本文将介绍如何使用Python根据表格数据生成折线图。折线图是一种常见的数据可视化图表形式,可以用来展示数据的趋势和变化。Python是一种流行的编程语言,其强大的数据分析和可视化…

    编程 2025-04-29

发表回复

登录后才能评论