最近團(tuán)隊(duì)里陸續(xù)來了幾個(gè)新同事棋枕,我照例開展食品營(yíng)養(yǎng)方面的科普內(nèi)訓(xùn)白修。美女設(shè)計(jì)師emily特別關(guān)心怎么吃能變得更漂亮,積極提問重斑。其中有個(gè)問題是這樣:“伯恩老師兵睛,我有些朋友還沒打算嘗試若飯,平時(shí)要多吃什么東西才比較好呢窥浪?”
這個(gè)問題引起了我的興趣祖很。基于我們的很多飯友也不是一日三餐只吃若飯漾脂,關(guān)于其他食物該如何選擇假颇,似乎值得聊一聊。
在這個(gè)問題里骨稿,emily提到的「朋友」笨鸡,通常情況下應(yīng)該是她的同齡人,多數(shù)為上班族啊终,有男有女镜豹,年齡大概以20+歲為主。而所謂的「比較好」蓝牲,按我的理解應(yīng)該是指如何保持健康、全面的營(yíng)養(yǎng)攝入泰讽。
這些年輕的朋友們多數(shù)作息不規(guī)律例衍,抽煙喝酒昔期,三餐不定時(shí),平時(shí)吃東西主要考慮口味和滿足感佛玄。而詢問「多吃什么東西」硼一,應(yīng)該是想得到一個(gè)簡(jiǎn)單粗暴的答案,方便后續(xù)直接多補(bǔ)充某一樣食物以達(dá)到目的梦抢。畢竟年輕的朋友們大多信奉的是「熬最長(zhǎng)的夜般贼,敷最貴的面膜」。
從常規(guī)營(yíng)養(yǎng)學(xué)角度來說奥吩,對(duì)于這種問題一般會(huì)建議「飲食要均衡多樣化」哼蛆、「多吃蔬菜」、「多喝水」霞赫、「少吃重口味腮介,忌辛辣」等等。但我覺得這樣的答案對(duì)于這些朋友來說端衰,執(zhí)行性很小叠洗。
正好前段時(shí)間我參加了一個(gè)Growth Hacker①的線下活動(dòng)并做了簡(jiǎn)單的分享,作為一個(gè)支持用數(shù)據(jù)說話的碼農(nóng)旅东,針對(duì)這個(gè)問題或許可以做些新的探索灭抑。
于是我想起電腦里還有幾份關(guān)于各種食物營(yíng)養(yǎng)成分表的文檔。
“給我1小時(shí)分析下各種食物營(yíng)養(yǎng)成分的數(shù)據(jù)抵代,然后再來看吃什么比較好”
我打開了一個(gè)名為“中國(guó)食物成分表2015完整版”的Excel文件名挥,用“世界上最好的語言PHP”處理這個(gè)任務(wù),先在MySQL②里建表主守,然后用phpExcel③庫(kù)將這個(gè)表格導(dǎo)入數(shù)據(jù)庫(kù)禀倔,以供查詢分析。我們可以看到包含各種食物營(yíng)養(yǎng)成分的數(shù)據(jù)有1284條参淫,即此數(shù)據(jù)庫(kù)包含1284種食物救湖。
為了便于查看數(shù)據(jù)整體情況,需要做些頁面涎才,那就用ThinkPHP④框架鞋既,加上BootStrap⑤前端框架,完成了一個(gè)便于查看排序的食物數(shù)據(jù)清單頁面耍铜。
為了方便的查看所有食物的營(yíng)養(yǎng)分布情況邑闺,需要坐標(biāo)軸進(jìn)行匯總展示,我選用ECharts⑥可視化圖表進(jìn)行快速開發(fā)棕兼。
稍微有點(diǎn)營(yíng)養(yǎng)學(xué)常識(shí)的人都知道蛋白質(zhì)對(duì)人體的重要性陡舅,首先我們來看1284種食物的蛋白質(zhì)含量分布圖:
Y軸表示該食物每100克所含有的蛋白質(zhì)。X軸列出所有食物伴挚,并按蛋白質(zhì)含量從高到低排列靶衍,上圖已包含了1284種食物的蛋白質(zhì)含量灾炭,緊密連成了一條數(shù)據(jù)線(5個(gè)顯示出來的食物名稱僅做隨機(jī)抽樣顯示)。從這個(gè)圖不難看出颅眶,大多數(shù)食物的蛋白質(zhì)含量在20%以下蜈出。
而在若飯不斷的科普下,飯友們應(yīng)該都知道涛酗,專業(yè)的健康飲食管理要求均衡攝入各種營(yíng)養(yǎng)铡原,蛋白質(zhì)含量高并不是我們篩選食物的唯一標(biāo)準(zhǔn)。因此我們以蛋白質(zhì)數(shù)據(jù)為基準(zhǔn)商叹,疊加脂肪含量進(jìn)行查看燕刻,得到下面這張圖:
不難發(fā)現(xiàn)各個(gè)食物相應(yīng)的脂肪含量極其不規(guī)則。
我們?cè)俅委B加三大宏量營(yíng)養(yǎng)素的最后一項(xiàng)——碳水化合物沈自,得到下圖:
相信看到這里酌儒,有些飯友已經(jīng)凌亂了。通過這張畫風(fēng)清奇的數(shù)據(jù)圖枯途,我們可以得出結(jié)論:各種食物的三大宏量營(yíng)養(yǎng)素含量并沒有呈現(xiàn)直觀可見的變化規(guī)律忌怎。
蛋白含量高的食物通常碳水含量較低;
脂肪含量高的食物通常蛋白含量較低酪夷;
碳水含量高的食物通常蛋白和脂肪含量較低榴啸;
因此,為了達(dá)到DRIs⑦推薦的營(yíng)養(yǎng)攝入量晚岭,人類的飲食習(xí)慣只能以多樣化為基礎(chǔ)鸥印,也就是說,我們只能通過不同食物的組合搭配來滿足身體的營(yíng)養(yǎng)需求坦报,無法指望通過某種單一的天然食物來達(dá)到吃得健康的目的库说。
“伯恩老師,能不能再給力一點(diǎn)片择?”
emily似懂非懂潜的,于是我繼續(xù)科普。
專業(yè)的健康飲食管理對(duì)三大宏量營(yíng)養(yǎng)素的攝入比例是有要求的字管,其中的供能比概念如下:
要求日常飲食中啰挪,蛋白質(zhì)的提供熱量占總熱量的10%-15%,脂肪占20%-30%嘲叔,碳水占55%-65%亡呵。
而食物營(yíng)養(yǎng)含量和熱量的換算采取4:9:4的算法,也就是說硫戈,如果你吃了1克蛋白質(zhì)锰什,1克脂肪和1克碳水,它們所提供的熱量分別是4大卡、9大卡和4大卡歇由,總熱量為17大卡卵牍,對(duì)應(yīng)的占比分別是24%果港、52%和24%沦泌,顯然不符合所要求的供能比。
或許這1284種單一食物里的供能比存在符合健康比例的食物?
那我們繼續(xù)通過代碼來實(shí)現(xiàn)每種食物的供能比計(jì)算辛掠,最終呈現(xiàn)的數(shù)據(jù)圖如下:
上圖依舊以蛋白質(zhì)含量從高到低排序作為X軸谢谦,Y軸是各個(gè)食物里蛋白、脂肪和碳水的供能比數(shù)據(jù)疊加萝衩。畫風(fēng)依然凌亂回挽,可以看出食物的供能比依舊無序,部分食物甚至完全不提供熱量(右側(cè)空白處)猩谊。
秉著不死不休的科學(xué)精神千劈,我們對(duì)所有食物逐個(gè)進(jìn)行計(jì)算排查,最終發(fā)現(xiàn)1284種食物里有5種食物符合要求牌捷,分別是:
從食物名稱中不難發(fā)現(xiàn)其中4種是再加工食品墙牌,是相對(duì)比較健康的單一食物。食物名稱后的括號(hào)內(nèi)容分別表示蛋白暗甥、脂肪和碳水的供能比數(shù)據(jù)喜滨。
而我們意外發(fā)現(xiàn),天然食物里的姜居然成功符合供能比要求撤防。只是姜的能量密度太低了虽风,100克姜里有87%都是水分,僅能提供41大卡熱量寄月。如果把姜作為一頓飯來吃辜膝,按照獲取500大卡熱量的需求,你得吃1.2公斤的姜漾肮。
姜的供能比示意圖
但新的問題又來了厂抖,我們篩選出的5個(gè)食物里,只有三大宏量營(yíng)養(yǎng)素符合健康要求初橘,膳食纖維和微量元素卻遠(yuǎn)遠(yuǎn)不達(dá)標(biāo)验游。比如這款補(bǔ)血餅干,營(yíng)養(yǎng)成分詳細(xì)數(shù)據(jù)如下:
可以看到保檐,為了“補(bǔ)血”耕蝉,餅干中增加了鐵元素的含量,除此之外其他微量元素基本沒有(也可能是數(shù)據(jù)缺失)夜只,膳食纖維只有0.4克垒在。
按照日常飲食的習(xí)慣,人體非常容易缺乏膳食纖維扔亥,從下面這個(gè)分布圖中也能看出场躯,各類食物里的纖維含量非常少谈为。圖中纖維含量最高的魔芋精粉則嚴(yán)重缺乏其他營(yíng)養(yǎng)成分。
綜上踢关,我們的結(jié)論依舊是伞鲫,想要吃得健康只能多樣化搭配,沒有捷徑签舞。
現(xiàn)在emily知道了食物多樣化的重要性秕脓,但似乎還是不知道如何解答朋友們的問題。
“伯恩老師儒搭,能不能再給力一點(diǎn)吠架?”
關(guān)于飲食多樣性,我國(guó)居民膳食指南中的平衡膳食寶塔圖呈現(xiàn)得非常直觀了::
膳食寶塔是基于傳統(tǒng)食物盡可能實(shí)現(xiàn)營(yíng)養(yǎng)均衡的解決方案搂鲫,針對(duì)宏量營(yíng)養(yǎng)和微量營(yíng)養(yǎng)分別指定相應(yīng)的食物類型傍药,例如谷薯、蔬菜和水果主要提供碳水和纖維魂仍,肉類拐辽、水產(chǎn)品和蛋類等提供蛋白質(zhì)和脂肪,同時(shí)結(jié)合奶制品和豆類獲取植物蛋白等蓄诽。
近百年來薛训,人類為多樣化飲食做了各種努力,這都是因?yàn)閭鹘y(tǒng)飲食無法量化管控仑氛,只好用“飲食多樣化”來盡可能規(guī)避營(yíng)養(yǎng)缺失的隱患乙埃。
但在實(shí)際生活中,飲食多樣化存在極大的執(zhí)行困難锯岖,主要有幾方面客觀原因存在:
◎ 隨著越來越焦慮的時(shí)代背景介袜,人人都在為生活奔波奮斗,尤其是一線城市工作的年輕人出吹,根本沒有能力和時(shí)間自主采購(gòu)食材在家烹飪遇伞,這對(duì)實(shí)現(xiàn)飲食多樣化是極大的阻礙。
◎ 依托第三方獲取食物時(shí)捶牢,可選擇的范圍很窄鸠珠,多數(shù)商家更傾向于提供美味的食物而不是真正營(yíng)養(yǎng)的食物。
綜上秋麸,emily提出的問題落到執(zhí)行上十分困難渐排,到底怎么吃才健康,其實(shí)變成了一個(gè)純粹看運(yùn)氣的事灸蟆。
“伯恩老師驯耻,能不能再給力一點(diǎn)?”
我始終相信開源的力量,本文涉及到的全部食物數(shù)據(jù)以及程序代碼全部公開可缚,可供任何人隨意使用霎迫。
我也期待著更多人加入我們這個(gè)開源項(xiàng)目,為人類的飲食進(jìn)行更豐富的討論帘靡。
本開源項(xiàng)目托管在國(guó)內(nèi)“碼云”平臺(tái)知给,項(xiàng)目主頁 https://gitee.com/sanool/foodnutrition
注解:
①Growth Hacker:把數(shù)據(jù)分析、創(chuàng)造力及好奇心三者結(jié)合到一起去推動(dòng)業(yè)務(wù)發(fā)展的專業(yè)技術(shù)人員
②MySQL:一種開源的數(shù)據(jù)庫(kù)系統(tǒng)测柠,便于實(shí)施數(shù)據(jù)的結(jié)構(gòu)化查詢分析炼鞠。
③phpExcel:一種基于php開發(fā)的缘滥,用于快速讀取和寫入Excel格式文件的開發(fā)庫(kù)轰胁。
④ThinkPHP:一種基于PHP的web開發(fā)框架。
⑤BootStrap:一種javascript+css的前端網(wǎng)頁框架朝扼,組件豐富赃阀,便于高效開發(fā)前臺(tái)網(wǎng)頁。
⑥ECharts:百度公司出品的一套開源數(shù)據(jù)圖表開發(fā)庫(kù)擎颖。
⑦DRIs:膳食營(yíng)養(yǎng)素參考攝入量(Dietary Reference Intakes)榛斯,是在RDAs基礎(chǔ)上發(fā)展起來的一組每日膳食營(yíng)養(yǎng)素?cái)z入量的參考值,包括4項(xiàng)內(nèi)容:平均需要量(EAR)搂捧、推薦攝入量(RNI)驮俗、適宜攝入量(AI)和可耐受最高攝入量(UL)
⑧圖靈完備:在可計(jì)算性理論里,如果一系列操作數(shù)據(jù)的規(guī)則(如指令集允跑、編程語言王凑、細(xì)胞自動(dòng)機(jī))可以用來模擬單帶圖靈機(jī),那么它是圖靈完備的聋丝。這個(gè)詞源于引入圖靈機(jī)概念的數(shù)學(xué)家艾倫·圖靈索烹。
⑨第一性原理:最早是古希臘哲學(xué)家亞里士多德提出的哲學(xué)概念,“在任何一個(gè)系統(tǒng)中弱睦,存在第一性原理百姓,是一個(gè)最基本的命題或假設(shè),不能被省略况木,也不能被違反垒拢。”火惊,后來被廣泛應(yīng)用到物理學(xué)求类、數(shù)學(xué)和計(jì)算機(jī)科學(xué)。