爬下20万份菜谱,数据解读舌尖上的中国 | 饕餮文本大宴

简介:



说来奇怪,中国人爱吃,但是对吃的却有千百种看法和意见,有的人喜欢吃辣,有的人不喜欢,有的人喜欢吃甜豆腐,有的人喜欢吃咸豆腐,千滋百味是中国菜的特色,但中国的味道到底是怎样的?或者说,主流的中国味道是怎样的?是美食节目里精致的膳食,还是晚上回家老妈的一碗热面?抑或是家门口小饭馆里冒着热气的回锅肉?

为了解决这个问题,我开始琢磨从数据分析上想点门路。在我咽了无数次口水后,我选取了几个美食网站,这几个美食网站的特点是,上面的美食都是用户主动上传的,因此,爬取这些美食的相关数据,就相当于趴在窗外看了一次别人家的晚饭,当我趴在窗户上看了足够多的别人家的晚饭的时候,关于中国味道的印象应该就可以成形了。

虽然这样做看上去有点猥琐,但是我的内心是高尚的,这一点必须澄清一下。

首先,我依旧是写爬虫,这个爬虫能够自动从这几个美食网站上随机获取美食的信息,包括食材,烹饪时间,具体步骤,美食名称,上传美食的用户位置这几个信息。

和之前的爬虫不一样,这个爬虫是自动去获取数据的,不需要跟任何参数,因此我把它放在一边,没有管它,这样过了一个小时之后。。。

第二天我又把它开了半天,最后大概爬取了约20万份全国各地的人们主动上传的美食。看到数据的我突然觉得,要是这都是做给我吃的就好了,20万道菜,就算一天吃10道菜,都可以吃50年了。数据从某方面来讲确实是好东西,但毕竟不能吃,少了那么些意思。

和之前分析歌词不同,几十万字的歌词也才1M上下,存个文本文档就足够了,但这次不一样,20万份下来最少100M,要是放在文本文档里那别说分析了,打开它都得让电脑卡死,所以这一次,我鸟枪换炮,把它存在了 mysql 数据库里面,说实话,G 以下的数据,也暂时还用不到 Hadoop 一类的东西,mysql 足矣。


通过对食材的聚类分析,我们可以看出,最受欢迎的调理是盐,其次是糖,酱油(PS:同类词已经合并,例如糖和白糖,都算做糖)

这从某种程度上说明了,咸味比甜味还是更主流一点。

那么,人们最喜欢吃的肉是什么呢?我们把食材又做一次聚类,发现了如下事实:

可以看得出,五花肉是不可撼动的存在,第二名排骨的份额也不错,达到了12.1%,其次是牛肉和猪肉。虽然猪肉略逊于牛肉,但五花肉和排骨其实也是猪肉,因此,猪肉无可辩驳的是中国人的餐桌之王。令我比较吃惊的是虾仁有8.57%的份额,我小时候基本上很少吃虾仁,这世界变化快啊。

肉类看完了,那么对于蔬菜的选择又是怎样的呢?

看了结果我有一点愤怒,为什么这么难吃的胡萝卜居然是第一?而且那么领先。又是为什么,香菜居然出现在了前十的名单里面。我最爱的土豆,居然只有 14.54% 的份额。这太让人震惊了。

另外我还发现了一个不得不说一下的事实,就是在描述用量的时候,出现最多的是「适量」,这个描述每次我看到都很头疼,适量到底是多少,为什么不能说的明白一点呢,我手一抖,倒下去半瓶醋,是不是也是适量?


看完了食材,我们看一下中国人最常做的菜是什么:

可乐鸡翅,这勾起了我遥远的回忆,我第一次听到这个名字的时候还在上小学,那时候我觉得这个菜肯定特别牛逼,特别复杂。后来却发现,这道菜出奇的简单,那些号称能在厨房露一手,但是平时从来不下厨房的人们,往往能露的也只有可乐鸡翅和蛋炒饭,最多再加一个土豆丝。

另一个比较好玩的数据是烹饪时间,统计发现,接近半数的菜,烹饪时间为30-45分钟,这充分说明了中国人做菜是充满耐心的,虽然社交网络上充斥着几分钟做一个什么什么菜的教程,但是大家还是愿意认认真真,花几个小时做一桌一家人的晚餐,这是中国传统文化中关于食物的美好的地方。


中国菜的技艺复杂,煎炒炸蒸焖煮烧,什么技法是出现最多的呢?

炒是做常见的做法,其次是烧,蒸和煎。

照例,我们可以杜撰一下一道典型中国菜的画像:适量的五花肉,适量的胡萝卜,土豆和洋葱,以及适量的酱油,盐和糖。首先把锅烧热,倒入适量的油,然后放入姜蒜,等香味出来后,放入五花肉,等到五花肉的油出来,肉微焦,香味四溢的时候,放入胡萝卜,土豆,洋葱,继续翻炒,然后放入酱油上色,盐,糖,继续翻炒入味,还可以放点水烧一下。然后撒点葱花,就可以出锅了!

炒出来可能是这个样子:

MD,居然饿了。


原文发布时间为:2017-03-02

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

相关文章
|
存储 缓存 资源调度
项目中的yarn.lock文件的作用
项目中的yarn.lock文件的作用
1291 0
项目中的yarn.lock文件的作用
|
7月前
|
Kubernetes 前端开发 物联网
狂揽1.7k星!平替金蝶WMS,这款开源仓库管理系统,让仓储管理效率飙升的同时还减低成本!
ModernWMS是一款完全开源的现代化仓库管理系统,源自商业ERP系统核心模块,专为中小企业打造。采用Vue3+TS+.NET7技术栈,支持跨平台部署,实现仓储管理简易化。项目具备三大突破:成本降低90%、效率提升300%、开箱即用;并提供智能库存追踪、全流程自动化及多设备协同功能。通过Docker一键部署或传统方式均可快速启动,助力企业高效管理。项目地址:[Gitee](https://gitee.com/modernwms/ModernWMS)。
1166 11
|
5月前
|
SQL 人工智能 数据可视化
开源AI BI可视化工具-WrenAI
Wren AI 是一款开源的 SQL AI 代理,支持数据、产品及业务团队通过聊天、直观界面和与 Excel、Google Sheets 的集成获取洞察。它结合大型语言模型(LLM)与检索增强生成(RAG)技术,助力用户高效处理复杂数据分析任务。
|
9月前
|
人工智能 自然语言处理
用LLaVA解读数万神经元,大模型竟然自己打开了多模态智能黑盒
大模型在多模态信息处理中的“黑盒”问题一直备受关注。LLaVA研究通过分析数万神经元活动,揭示了模型内部处理文本与图像等信息的协调机制。研究表明,模型并非简单分离处理各模态信息,而是通过高度交互实现复杂场景理解,这对自动图像描述、视觉问答等应用意义重大。然而,研究也指出模型存在局限性:交互机制较简单,且对不同模态信息存在偏好,可能影响全面理解能力。论文详见arxiv.org/abs/2411.14982。
239 26
|
10月前
|
知识图谱
YOLOv11改进策略【Conv和Transformer】| 2023 引入CloFormer中的Clo block 双分支结构,融合高频低频信息(二次创新C2PSA)
YOLOv11改进策略【Conv和Transformer】| 2023 引入CloFormer中的Clo block 双分支结构,融合高频低频信息(二次创新C2PSA)
309 8
YOLOv11改进策略【Conv和Transformer】| 2023 引入CloFormer中的Clo block 双分支结构,融合高频低频信息(二次创新C2PSA)
|
机器学习/深度学习 设计模式 API
深入浅出:使用Python构建微服务架构
在当今快速发展的软件开发领域,微服务架构因其高度的灵活性和可扩展性而受到广泛关注。本文将探讨如何使用Python语言构建微服务架构,从概念理解到实际应用,逐步揭示微服务的核心原理及其在Python环境下的实现方法。通过具体案例,读者将学习到如何利用Python的强大功能,创建独立、轻量级的服务单元,以支持复杂应用系统的高效运行。不同于传统摘要的简单概述,本文摘要旨在激发读者对微服务架构深度学习的兴趣,并提供一种创新的视角来理解如何将这一架构策略与Python语言结合起来,开发出响应迅速、易于维护的应用程序。
494 2
|
安全 网络协议 Linux
【Windows】已解决:修改本地host文件异常的正确解决方法
【Windows】已解决:修改本地host文件异常的正确解决方法
1732 0
|
JavaScript 前端开发 Java
JavaScript高级笔记-coderwhy版本(一)
JavaScript高级笔记-coderwhy版本
434 0
JavaScript高级笔记-coderwhy版本(一)
|
自然语言处理 算法 Shell
【Rasa+Pycharm+Tensorflow】控制台实现智能客服问答实战(附源码和数据集 超详细)
【Rasa+Pycharm+Tensorflow】控制台实现智能客服问答实战(附源码和数据集 超详细)
462 0