导读:为了找到物美价廉的美酒,本文作者Kenneth Hansen搜集了全球最大的酒类网站信息,用数据分析为自己制作了一份“美酒清单”,希望对正在享受假期的你有所帮助。不要贪杯哟!

01 一分价钱一分货

作为一个喜欢喝红酒和咖啡,但同时又作为学生而资金有限的人,我决定用Python和Selenium爬取我最喜欢的网站——Vivino.com,来找到物美价廉的美酒。

Vivino是一个丹麦公司,它的app是下载量最多的酒类app,全球用户数量超过2600万。Vivino收录了数百万款酒的信息,是全世界最大的酒类数据库。

其开发的app也让我们这种喜欢红酒但并不像品酒师一样专业的人们可以方便的找到自己喜欢的酒。用户拍摄酒瓶上的标签并上传就可以立刻从app上看到关于这款酒的信息、评分、评价等。

Vivino是像我这样预算有限的“酒鬼”想要找到好酒时必用的app。我从上面爬取了16690瓶酒的信息。这些酒的价格从10美金到6000美金不等,所以理论上每个人都可以找到他想要的那款酒。而在搜寻好酒的过程中,我不禁好奇:Vivino上的酒的评分高低与什么有关?要想找到评价很高又很廉价的酒,我应该在哪些产地寻找?这些问题都是我这个项目想要解决的。

我爬取的数据维度包括:酒名、年代、葡萄酒类别、产地、评论数、平均价格、评分(用户整体评分,分数从0到5)。

这是对爬取的16690瓶酒的数据进行分析后得到的一些统计数据:

我在做描述性分析前,先缩小了价格区间,仅对8.99到500美金间的酒进行分析。这部分数据包括169组观测值,占整体数据的1%。

我首先分析了红葡萄酒、白葡萄酒和起泡酒。

上面的箱线图可以看出,与白葡萄酒和起泡酒相比,红葡萄酒的评分中位数稍高一些。评分大多数在3.5到4.0分之间。值得注意的是,尽管有一些异常值,三种酒的评分是符合正态分布的。另一个有趣的现象是,红葡萄酒的评分范围较另两种酒更广。

在观察价格与评分相关性的时候,我发现如下规律。

在我的预期中,是期待观察到这种相关关系的。每瓶酒的评分分数与价格似乎在某种程度上是相关关系,尤其是红葡萄酒和起泡酒。从相关系数来看,红葡萄酒和起泡酒的价格与评分的关系更紧密,相关系数分别为0.68和0.69。而白葡萄酒相对较弱,相关系数为0.57。然而,这种相关性随着红葡萄酒的价格高过100美元而逐渐减弱,超过100美元的酒的价格的上涨仅会带来评分的轻微增长。

02 在75-100美元间挑选顶级红酒

上面的箱线图中我们观察到红酒的评分区间更广,因此我决定看一下这些数据点围绕平均评分的分布范围(即方差)。我试图研究红葡萄酒是否比白葡萄酒评分的方差更大。

H0:红酒评分值的方差=白酒评分值的方差

H1:红酒评分值的方差≥白酒评分值的方差

经测试,p值非常低(2.2e-16),零假设被否定,红酒评分值的方差比白酒高。这一现象的原因,可能有以下几种因素。

首先,品尝两种葡萄酒的最佳温度环境不同。大概来说,红酒最好在50到65华氏度(约为10至15.5摄氏度)品尝,而白葡萄酒在45到50华氏度(约为7.2至10摄氏度)之间。因此白葡萄酒受温度影响品质的几率要更大。

另外,红葡萄酒一般在橡木桶里进行陈酿,白葡萄酒则在不锈钢桶中进行发酵。两种不同的程序导致两种完全不同的品尝体验。红葡萄酒的口味种类比白葡萄酒大,也因此可能导致评分差异更大。

与之前的散点图相比,这张图并没有什么新变化。不过,值得指出的是,我们的确有可能以75-100 美元的价格买到顶级评分的红酒 。

不过,我发现年代更久的酒评分普遍更高。下图中竖轴的年代并非完全连贯,是因为爬取的信息中,有些年代并没有对应的酒。下面的散点图中,相关系数为-0.377,也就是说随着年代靠近,评分在下降。

因此,我们需要检测这个关系是否足够显著。一个有趣的现象是,年代更久的酒,评分的区间更窄,年代越近评分区间越广。这或许也因为,现有的老酒都是那些质量好的酒,因此人们才会保存下来。而新生产的酒中,质量就参差不齐了。总之,这张图很直观地呈现了年代与评价之间的关系。

我也有一个比较意外的发现——那就是美国产的酒均价较低,但同时评分的中位数最高。这也许说明,爱喝酒的人们如果想要花费合理价格购买一款不错的酒,那么应该看一看美国产的酒。

03 法国的葡萄酒真的更棒么?

我经常听到人们说,法国的葡萄酒最棒。以前我也曾和一位法国人合租,我们也曾讨论为何人们认为法国的葡萄酒最好,他也多次尝试说服我。手握Vivion爬来的数据,我可以检查一下这些评分数据是否支撑“法国优越性”的说法。

H0:法国产的葡萄酒平均评分=其他地区产的葡萄酒的平均评分

H1: 法国产的葡萄酒平均评分≥ 其他地区产的葡萄酒的平均评分

经过我的测试,从这些爬取的数据中并没有发现证据显示法国的葡萄酒评分高于其他地区。

接下来,我希望研究一下,当我们预算有限的时候,应当找产地是哪里的酒。因此,我将要求进一步具体化:

  • 这款酒需要至少获得过100次点评

  • 价格要低于30美金

  • 最少的平均得分应在4.1分

上图证明了此前的箱线图,葡萄酒爱好者想要找到物美价廉的葡萄酒时,应当看一看美国产的酒。

在把玩了一下爬取的数据后,这些有趣的发现让我对以下这个问题产生兴趣:价格和年份能否解释评分?因此我决定检测以下这个模型:

评分 = β0 + β1 √价格 + β2 每瓶酒的评论数+ ε

分析在R-studio中进行,我的回归分析得出以下数据:

这个模型经调整后的R平方为0.5306,鉴于只有价格、年份两个预测因子,这个值已经很不错。这个模型说明,红葡萄酒在Vivino上的评分的基线是3.6分。√价格每增加一个单位,评分将提升0.053,每增加一个评论,评分增长0.000007265,即需要多达137646个评论才能让评分上升1分。

所以,我得出以下结论:

  • 与白葡萄酒和起泡酒相比,红葡萄酒的评分值中位数稍微更高些;

  • 红葡萄酒、白葡萄酒和起泡酒的价格和评分之间有很强的相关性;

  • 年代越久的酒评分值的区间更窄,新酒的评分区间更宽;

  • 美国产的红葡萄酒与其他地区产的相比,评分中位数更高;

  • 红葡萄酒与白葡萄酒相比,评分值的方差更大;

  • 爬取的数据并未证明法国产的葡萄酒比其他地区评分要高;

  • 如果你在寻找30美金以下、评论超过100条的高评分葡萄酒,那么你应该看看美国产的酒;

  • 每瓶酒的评分值有53%可以被价格和评论数来解释;

  • Selenium作为爬虫工具比Beautifulsoup和Scrapy慢多了,但Vivino网站的结构(无限翻页)迫使我只能这样。

作者:Kenneth Hansen

来源:纽约数据科学(ID:NYCDataScience)

点击文末阅读原文可以查看英文版文章

推荐阅读

日本老爷爷坚持17年用Excel作画,我可能用了假的Excel···

180页PPT,讲解人工智能技术与产业发展

终于有人把云计算、大数据和人工智能讲明白了!

数据告诉你:跟缺“芯”相比,中国当前的这个问题更致命!

Q: 你有哪些极品美酒值得推荐?

欢迎留言与大家分享

觉得不错,请把这篇文章分享给你的朋友

转载 / 投稿请联系:baiyu@hzbook.com

更多精彩文章,请在公众号后台点击“历史文章”查看

醉了!用数据分析的方法帮你找到物美价廉的美酒 | 小长假放大招相关推荐

  1. python编程入门 适合于零基础朋友-Python不能帮你找到女朋友,却能让你成为有钱的单身狗。...

    原标题:Python不能帮你找到女朋友,却能让你成为有钱的单身狗. 王者荣耀的团队年终奖是100个月工资.华为的员工房租补贴就有8000块.BAT校招起步价年薪20万--如果你看到这些消息的第一反应就 ...

  2. python什么工作好找女朋友_Python不能帮你找到女朋友,却能让你成为有钱的单身狗。...

    原标题:Python不能帮你找到女朋友,却能让你成为有钱的单身狗. 王者荣耀的团队年终奖是100个月工资.华为的员工房租补贴就有8000块.BAT校招起步价年薪20万--如果你看到这些消息的第一反应就 ...

  3. 十种经济的方法帮你建立企业品牌

    十种经济的方法帮你建立企业品牌 很多小公司很善于发展客户,但他们并不懂得如何维护客户关系.维护客户关系可以提升品牌价值和加强客户的品牌忠诚度.这将帮助你在激烈的竞争中保持优势.举个例子,你的竞争对手可 ...

  4. git stash后怎么恢复_苹果换卡后怎么恢复通讯录?两种方法帮你解决

    苹果换卡后怎么恢复通讯录?今天小编分两种情况给大家介绍恢复苹果手机通讯录的两种方法,根据自己的情况选择适合自己的操作步骤来找回手机里的通讯录即可. 情景一:使用iCloud同步了通讯录 iCloud是 ...

  5. 服务器win10系统开机慢,win10专业版系统开机启动慢 三种方法帮你敲定

    win10专业版系统开机启动慢 三种方法帮你敲定对于很多游戏玩家来说,电脑运行速度快,使用不卡顿是非常重要的,有些使用win10系统的玩家会觉得win10的启动速度慢,为了让各位能够愉快的玩游戏,今天 ...

  6. WPS如何转换成图片?三种方法帮你实现

    WPS如何转换成图片?三种方法帮你轻松实现!在大学中,大家完成老师布置的专业课作业都是通过使用电脑中的WPS制作完成.为了防止自己的作业遭到其他同学的私自窜改或是复制粘贴的抄袭.有的同学就会将自己的作 ...

  7. 大数据分析的方法有几种?

    大数据分析的方法有几种?大数据分析六种方法:数字和趋势.维度分解.用户分群.转化漏斗.行为轨迹.留存分析.看数字及趋势是最基础进行展示相关数据管理信息的方法,对于谁符合一定的行为或背景资料,分类处理用 ...

  8. 能帮你找到网页设计灵感的16个网站-沪江UI团队资料翻译组

    众多的网页设计推荐网站,帮你找到网页设计灵感. 几天前我发了篇<创意灵感哪里寻>的文章,历数了一些我寻找设计灵感时经常访问的网站.在文章的最后,我给大家扔了个问题:"你会到什么网 ...

  9. 计算机设多个用户名和密码忘记了怎么办,电脑开机密码忘了怎么办?多种方法帮你解决...

    原标题:电脑开机密码忘了怎么办?多种方法帮你解决 在物联网时代,计算机和移动电话已经成为必需品.人们使用计算机和各种电子产品进行办公和学习等操作,有着个人隐私在其中,因此一个人拥有多种密码.如果您在计 ...

最新文章

  1. pytorch IntermediateLayerGetter
  2. 挺好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面)
  3. JAXB: XML绑定的Java体系结构
  4. 在腾讯云开通短信验证服务设置正确格式的签名和正文模板并完成群发消息测试
  5. linux内存不足+段错误,在linux下代码运行出现段错误,求大神
  6. Vue Vuex的详细教程
  7. Python+常用模块(2).md
  8. 【软考2】Java语言的基本知识汇总
  9. 【付费毕设】php mysql社团报名管理系统
  10. 服务器用户配置文件在哪里找,SharePoint Server 中的服务器到服务器身份验证和用户配置文件...
  11. 02 Nginx和Keepalived高可用
  12. pos 指令集 linux,Linux系统下10大开源POS系统
  13. 第2章-10 输出华氏-摄氏温度转换表
  14. 投稿时文章脚注数字如何去掉
  15. 学小易有微型计算机接口答案吗,学小易接口更新+新的接口+成品
  16. zoj 1905 Power String(后缀数组)
  17. 知识共享许可 cc 协议
  18. 国产云桌面还需跨过的坎
  19. go show 和 no show问题
  20. WPF 在编译时 显示 CS0426 类型“xxx”中不存在类型名“xxx”

热门文章

  1. 认识死锁之死锁的基本概念
  2. mysql的存储过程放在哪里_mysql存储过程,这个错在哪里?
  3. 前端获取后端传来的session_用java编写一个web程序,登陆后,把用户信息放在session中,前端怎样获取session的值?...
  4. 山东管理学院计算机二级,山东管理学院有几个校区及校区地址 哪个校区最好...
  5. ctr 平滑_CTR预估中的贝叶斯平滑方法及其代码实现
  6. 苹果电脑mac截屏_谁说 mac系统 不适合搞科研? | 假期不宜出门,宜学习!
  7. 操作系统之进程管理:7、进程同步、进程互斥
  8. LeetCode篇之链表:1290(二进制链表转整数)
  9. libjpeg-turbo(1)
  10. Python判断端口服务是否启动