小白學 Python 資料分析(1) 資料分析基礎

2022-03-17 18:51:24 字數 3447 閱讀 1414

人工植入廣告:

ps:小編最近兩天偷了點懶,好久沒有發原創了,最近是在 csdn 開通了乙個付費專欄,用來發布去年寫的沒有出版的書稿,感興趣的同學可以去看下(已經上傳了一部分,第一章設定為了試讀章節),主要是講 springcloud 微服務方面的一些內容,整體排版下來如果是印在實體書上應該會超過 400 頁,也算是一本比較厚的書,當然小編這個專欄的**並不貴,只要 9.9 ,整體是沒有經過審校的,可能錯別字會比較多,當然,就這個**,還要啥自行車呢。

咱們言歸正傳哈,在所有事情的之前,先了解一件事情,什麼是資料分析?

資料分析是指用適當的統計分析方法對收集來的大量資料進行分析,將它們加以彙總和理解並消化,以求最大化地開發資料的功能,發揮資料的作用。資料分析是為了提取有用資訊和形成結論而對資料加以詳細研究和概括總結的過程。

資料分析的數學基礎在20世紀早期就已確立,但直到計算機的出現才使得實際操作成為可能,並使得資料分析得以推廣。資料分析是數學與電腦科學相結合的產物。

資料分析這個東西有乙個很重要的點是:大量資料這個劃重點了啊,要考的。

至於多大的資料叫大量資料,其實這個也沒有乙個準確的定義,可以認為 1mb 的資料是大量資料,也可以認為 1gb 的資料是大量資料,也可以認為 1pb 的資料是大量資料,但是不管怎麼說,這個資料量一定要大,不能是幾十條幾百條的資料,這種數量級的資料一眼看到底。

接下來是第二個點:數學,對的,沒看錯,是數學,尤其是統計學,當我們擁有了大量的資料以後,使用數學的方式對資料進行一定程度的處理,接下來結合具體的業務分析資料,達到最終我們所需要的目的,比如對一些業務進行監控、提高企業的經營效率、優化企業的管理結構等等。

在沒有計算機的年代,大量的資料即使有數學的支援,進行大資料分析也是一件很難的事情,多的不說,各位同學先思考一下,如果不借助計算器,如果有 1百萬 個資料,需要簡單的畫乙個折線圖,人工處理需要多長時間。

到這裡肯定很多同學會問,資料分析這個職業的工作好不好找哇,這個職業每天主要是做什麼呢?

小編簡單查了下 51job 的上海地區的資料分析師的招聘資訊,忽然發現一件事兒,感覺可能要砸很多培訓機構的飯碗了,好像並沒有大量的資料分析師的崗位要求掌握 python 這個技能樹啊。

簡單看幾個 jd :

公司資訊小編抹掉了,從招聘資訊中看到,好像資料分析和 python 並沒與什麼實際的聯絡啊,對了,確實沒有什麼確切的關係,只能說是在處理大資料的是時候,現在使用 python 比較方便,如果資料量沒那麼大的話,使用 excel 一樣能處理的。

如果是抱著技多不壓身的目的,做一點提前的只是儲備,那麼可以接著往下看了。

在聊這個問題之前,我們先看幾個經典的大資料分析的案例:

全球零售業巨頭沃爾瑪在對消費者購物行為分析時發現,男性顧客在購買嬰兒尿片時,常常會順便搭配幾瓶啤酒來犒勞自己,於是嘗試推出了將啤酒和尿布擺在一起的**手段。沒想到這個舉措居然使尿布和啤酒的銷量都大幅增加了。如今,「啤酒+尿布」的資料分析成果早已成了大資料技術應用的經典案例,被人津津樂道。

2023年,google通過分析5000萬條美國人最頻繁檢索的詞彙,將之和美國疾病中心在2023年到2023年間季節性流感傳播時期的資料進行比較,並建立乙個特定的數學模型。最終google成功**了2009冬季流感的傳播甚至可以具體到特定的地區和州。

資料分析可以把隱藏在大量資料背後的資訊提煉出來,總結出來資料的內在規律。

資料分析這種方式逐步在取代企業中以前的那種拍腦袋的決策方式,因此越來越多的企業開始重視資料分析,這裡從資料分析的招聘崗位上也可以看到。

上面說了這麼多資料分析的背景,其實只是想大致讓各位同學了解下什麼是個資料分析,不想看直接跳過也沒啥關係。

關於資料分析的工具這個就是乙個仁者見仁智者見智的事情了,工具實在是太多了,從 excel 到各種各樣的資料, sql 語句, r 語言以及我們計畫在未來介紹的 python 。

具體工具的選擇更多是看使用場景,如果在資料量不大的情況下,如果你正好對 excel 的使用比較熟悉,那麼 excel 就是最優解,這個毋庸置疑。

如果資料量已經非常大了,儲存在各種各樣的結構化資料庫中,那麼 sql 語言就是不可或缺的工具,在如果資料量已經非常大了,儲存在大資料集群上,那麼使用 r 語言或者 python 或許是乙個不錯的選擇。

在 python 中,有三個工具包被稱為資料分析三劍客: pandas 、 numpy 、 matplotlib 。

官網:中文網:

pandas 是什麼?

pandas是乙個強大的分析結構化資料的工具集;它的使用基礎是numpy(提供高效能的矩陣運算);用於資料探勘和資料分析,同時也提供資料清洗功能。

利器之一 dataframe:

dataframe是pandas中的乙個**型的資料結構,包含有一組有序的列,每列可以是不同的值型別(數值、字串、布林型等),dataframe即有行索引也有列索引,可以被看做是由series組成的字典。

利器之一 series:

它是一種類似於一維陣列的物件,是由一組資料(各種numpy資料型別)以及一組與之相關的資料標籤(即索引)組成。僅由一組資料也可產生簡單的series物件。

官網:中文網:

numpy 是什麼?

numpy是使用python進行科學計算的基礎軟體包。除其他外,它包括:

利器之一 ndarray:

numpy 最重要的乙個特點是其 n 維陣列物件 ndarray,它是一系列同型別資料的集合,以 0 下標為開始進行集合中元素的索引。ndarray 物件是用於存放同型別元素的多維陣列。ndarray 中的每個元素在記憶體中都有相同儲存大小的區域。

利器之一 切片和索引:

ndarray物件的內容可以通過索引或切片來訪問和修改,與 python 中 list 的切片操作一樣。ndarray 陣列可以基於 0 - n 的下標進行索引,切片物件可以通過內建的 slice 函式,並設定 start, stop 及 step 引數進行,從原陣列中切割出乙個新陣列。

官網:中文網:

matplotlib 是什麼?

matplotlib 是乙個 python 的 2d 繪相簿,它以各種硬拷貝格式和跨平台的互動式環境生成出版質量級別的圖形。

matplotlib 能幫你?

繪製線圖、散點圖、等高線圖、條形圖、柱狀圖、3d 圖形、、甚至是圖形動畫等等。

小白學資料分析 DNU DAU

行業指標觀察分析 dnu dau 寫在分析之前 一直以來,我們對於資料都是在做加法,也希望這個過程中,不斷蒐羅和變換出來更多的資料指標,維度等等。而在實際的分析中,我們發現,一如我們給使用者提供產品一樣,太多的時候,我們思考的是如何增加功能,而產品的核心功能和訴求,卻越來越遠。最近有幸和一些團隊在做...

小白學資料分析 流失分析設計

前段時間說過一些關於玩家生命週期的問題,其實那些有點大,有點虛,從巨集觀的角度了解我們此時此刻正在做的分析是屬於那一部分,哪乙個體系的,說實話,這是為了建立一種意識而要做的工作,玩家生命週期價值源於電信行業的客戶生命週期管理和plc 產品生命週期 的解讀和應用,限於本人水平和能力因素,不夠深刻,全面...

運營 小白學資料分析之DNU DAU

2014 05 06 15 45 手遊運營 19,100 文 jetpv 寫在分析之前 一直以來,我們對於資料都是在做加法,也希望這個過程中,不斷蒐羅和變換出來更多的資料指標,維度等等。而在實際的分析中,我們發現,一如我們給使用者提供產品一樣,太多的時候,我們思考的是如何增加功能,而產品的核心功能和...