精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

Python 爬蟲實(shí)操,順便做了個(gè)數(shù)據(jù)分析

責(zé)任編輯:editor005

作者:鈺瑩

2017-12-09 19:11:48

摘自:it168網(wǎng)站

本文作者是一名地地道道的程序員,最大的樂趣就是爬各種網(wǎng)站。本文,作者將分析從Greek wine e-shop商店(一個(gè)希臘葡萄酒網(wǎng)站)中獲得的數(shù)據(jù),來看看哪種葡萄酒最受歡迎。

本文作者是一名地地道道的程序員,最大的樂趣就是爬各種網(wǎng)站。特別是在過去的一年里,為了娛樂和利潤而爬掉了無數(shù)網(wǎng)站。從小眾到主流電子商店再到新聞媒體和文學(xué)博客,通過使用簡單的工具(如BeautifulSoup)獲得了很多有趣且干凈的數(shù)據(jù)—我也很喜歡Chrome 的Headless模式。

本文,作者將分析從Greek wine e-shop商店(一個(gè)希臘葡萄酒網(wǎng)站)中獲得的數(shù)據(jù),來看看哪種葡萄酒最受歡迎。

scraper本身相當(dāng)簡單,可以在GitHub頁面(https://github.com/Florents-Tselai/greek-wines-analysis)找到。作者將著重于通過使用標(biāo)準(zhǔn)的Python包對得到的數(shù)據(jù)(1125個(gè)獨(dú)特的標(biāo)簽)做一些快速的探索性分析。

scraper本身暴露了一個(gè)相當(dāng)簡單的API。首先,請求葡萄酒頁面的數(shù)據(jù),并將數(shù)據(jù)返回給nicedict,如下所示:

In [2]:

In [3]:

Out[3]:

然后,定義一些matplotlib。

In [4]:

加載由houseofwine_gr.dump模塊生成的數(shù)據(jù)轉(zhuǎn)儲,開發(fā)者也可以在GitHub頁面找到.json,.csv和.xlsx的數(shù)據(jù)集。

In [5]:

以下是所擁有數(shù)據(jù)的視圖:

In [6]:

Out[6]:

用np.nan替換空的字符串,使它們更容易處理 Pandas。

In [7]:

重命名一些包含特殊字符的列名,以便將它們用作本機(jī)DataFrame存儲器。

In [8]:

我們還將適當(dāng)?shù)念愋头峙浣o列:

In [9]:

讓我們將color列值從希臘語翻譯成英語。

In [10]:

以下是數(shù)據(jù)集的顏色直方圖。

In [11]:

以下是每種葡萄酒的簡單指標(biāo)分布情況:

In [12]:

如圖所示,Average Rating列幾乎為正態(tài)分布,μ值高達(dá)85以上。 Reddit上的Kroutoner解釋了為什么會發(fā)生這種情況(并糾正了作者以前的錯(cuò)誤):

典型的葡萄酒評級是50-100,而不是0-100。所以看起來似乎只有一半分布,實(shí)際上是一個(gè)幾乎完全的分布。此外,90分以上的葡萄酒一般被認(rèn)為效果更好,銷售也更好。這個(gè)事實(shí)改變了對數(shù)據(jù)的解釋,也就是說大多數(shù)葡萄酒被評為好,只有一小部分被評為非常好。

為了進(jìn)一步推進(jìn),來看一下tags 列。

似乎每個(gè)標(biāo)簽列表可以給出有關(guān)葡萄酒的各種屬性(品種,甜味等)的信息。接下來,作者將這些屬性分開,將tags列元素從list 轉(zhuǎn)換為set列表元素,因?yàn)檫@樣會使操作更簡單。也就是說,不是在一個(gè)if x in -else-try-except-IndexError中,我們將使用set操作。

現(xiàn)在,做一些簡單操作來提取關(guān)于甜度,溫和性等信息,以下信息同樣從希臘語翻譯到了英語。

以下是4個(gè)屬性中每一個(gè)屬性的直方圖:

在這一點(diǎn)上,開發(fā)者可以(幾乎)安全地假設(shè)所有剩下的標(biāo)簽顯示每種葡萄酒的品種信息,所以定義一個(gè)新的列來存儲它們。

  由于解析錯(cuò)誤,列中出現(xiàn)了一些整數(shù),我們將其過濾掉。

我們也可以添加一個(gè)布爾變量varietal。酒中的混合物只有一種的稱為varietal,至少有兩種混合物的稱作blends。

對于varietal葡萄酒,我們設(shè)定了一個(gè)single_variety - 對于其他非varietal的葡萄酒來說,這個(gè)數(shù)值將是NaN。

讓我們來看看Varietal / Blend的分布是怎樣的。

這是一些指示性的情節(jié)。

In [27]:

看起來Chardonnay是最流行的品種,而Vidal和Sangiovese是最昂貴的品種。評分最高的是Malvasia,但所有品種都非常接近。

把注意力轉(zhuǎn)移到blends上,我們做了一些Numpy和Scikit-Learn來產(chǎn)生blends的矩陣。

上面的代碼簡單地從這里得到:

對此:

這些是blends中出現(xiàn)頻率最高的品種。

In [30]:

這里是一個(gè)熱圖,顯示哪些品種通常混合在一起。

In [31]:

In [32]:

如果你有興趣,歡迎來Github頁面與作者交流。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 泾阳县| 抚顺县| 淮北市| 布尔津县| 吐鲁番市| 治县。| 岚皋县| 镇康县| 凤翔县| 南和县| 卢氏县| 东宁县| 专栏| 犍为县| 禹城市| 育儿| 潢川县| 岫岩| 东平县| 通江县| 正镶白旗| 滦平县| 壶关县| 平陆县| 积石山| 通州市| 寿光市| 泉州市| 鄂尔多斯市| 凌云县| 沙湾县| 万宁市| 垦利县| 凌源市| 岚皋县| 鹤岗市| 景德镇市| 嘉义县| 巴林左旗| 津市市| 新安县|