官术网_书友最值得收藏!

第一部分 NumPy篇

第1章 數據分析概述

1.1 數據分析簡介

1.1.1 數據科學是什么?

隨著大數據及人工智能時代的來臨,數據科學變得越來越重要。所謂數據科學,用最簡單的一句話來解釋就是:處理數據的科學。

網絡爬蟲、數據分析、數據可視化、機器學習……

在日常學習或工作中,我們或多或少都聽過上面這些名詞。但是大多數人只停留在了解上,并不知道這些名詞的背后其實是有著深層次聯系的。如果想要從數據中提煉出有用的信息,一般流程是下面這樣的:

獲取數據→處理數據→展示數據。

網絡爬蟲用于獲取數據,數據分析用于處理數據,數據可視化用于展示數據。而機器學習則是進一步對數據進行建模,以便進行預測分析。對于數據科學來說,它的工作流可以總結成“OSEMN”,如表1-1和圖1-1所示。

表1-1 數據科學的工作流

圖1-1是一張非常有價值的圖,從中我們可以得到非常重要的兩點信息:①Python不同領域之間的關系;②不同領域都會用到什么庫。有了這張圖,我們在接觸Python各個領域的時候,會有一個清晰的學習路線。

圖1-1

1.1.2 數據分析是什么?

數據分析,也就是數據科學中“Scrub”(清洗數據)這一環節。它指的是在統計學理論的支持下,使用合理的工具對相關數據進行一定程度的處理,然后把隱藏在數據中的重要信息提煉出來。

通過數據分析,我們可以挖掘出數據的內在規律及有用信息,進而幫助企業創造新的商業價值、提高運營效率、獲得持續競爭的優勢等。數據分析這種方式更加科學準確,遠不是只憑個人經驗(也就是“我覺得”)這種方式能比的,所以現在的企業越來越重視數據分析。

可能很多讀者都聽過“啤酒和紙尿褲的故事”(見圖1-2)。為什么沃爾瑪將看似毫不相干的啤酒和紙尿褲擺在一起銷售,并且它們的銷量雙雙增長呢?這是因為沃爾瑪很好地運用了數據分析手段,挖掘出了啤酒和紙尿褲之間的潛在關系。

圖1-2

除了商業領域,數據分析在其他領域也有著大量的應用,例如科學研究、社會調查、體育競技等。

1.1.3 應該學些什么?

如果想要成為一名真正的數據分析師,那么至少要掌握這3個工具:Excel、Python、SQL。由于本書針對的是Python方面的內容,所以Excel和SQL這兩個工具就不在本書中展開介紹了。

那么問題來了:學習Python數據分析,我們應該學些什么呢?對于Python數據分析來說,它有非常重要的3個庫:NumPy、Pandas、Matplotlib。這3個庫又被叫作Python數據分析“三劍客”(見圖1-3),本書就是緊緊圍繞這3個庫來展開介紹的。

圖1-3

可能有些讀者會問:“既然Excel可以做數據分析,為什么還要使用Python呢?”雖然Excel好用,但是它更適合處理中小量數據,而不適合處理大量數據(也就是所謂的大數據)。Python處理大量數據的效率,遠遠不是Excel能比得上的。

除了執行效率比Excel高之外,Python的工作量也少很多。業界有一句比較有意思的話:“Excel十分鐘,Python兩行代碼。”這句話恰恰說明了Python的簡單高效。

最后需要說明的是,Python雖然是一門編程語言,但是它在數據分析上實現的功能和Excel是非常相似的。所以,我們在學習Python數據分析時,應該和Excel多多進行對比,這樣更能加深理解和記憶,如圖1-4所示。

圖1-4

【常見問題】

對于Python來說,不同的功能需要使用不同的庫,為什么它不將這些功能全部集合到自身呢?

這是因為Python的設計者從來沒想過要包攬所有的活兒,Python本身只提供基礎語法及一些常用的功能模塊。如果把所有功能都集中到Python上面,那么Python就會變得非常“臃腫”并且難以維護,運行速度也會變得非常慢。

對于其他功能,Python使用“分工”的方式來管理,不同的功能使用不同的庫。例如網絡爬蟲可以使用Scrapy,而數據分析可以用Pandas等。分工才能更好地管理,在實際開發中,需要用到什么功能,導入對應的庫即可。

對于Python來說,有那么一句話:學習Python,其實就是學習Python的各種庫。細想一下,這句話也是有一定道理的。

主站蜘蛛池模板: 洛扎县| 新绛县| 新营市| 澄江县| 曲靖市| 万盛区| 云浮市| 石嘴山市| 和田市| 和平县| 新田县| 临沭县| 郑州市| 北安市| 拜城县| 茶陵县| 灵石县| 雅江县| 鲁山县| 贵德县| 吉水县| 台湾省| 宁强县| 杨浦区| 志丹县| 北票市| 光泽县| 筠连县| 克拉玛依市| 东乌珠穆沁旗| 资阳市| 怀来县| 林甸县| 渝中区| 贺兰县| 宜兰县| 太谷县| 泽州县| 建宁县| 介休市| 新闻|