前言
numpy 官網:https://www./ NumPy(Numerical Python的簡稱)是高性能科學計算和數據分析的基礎包。NumPy最重要的一個特點就是其N維數組對象(即ndarray),該對象是一個快速而靈活的大數據集容器??梢岳眠@種數組對整塊數據執(zhí)行一些數學運算,比python自帶的數組以及元組效率更高,其語法跟變量元素之間的運算一樣,無需進行循環(huán)操作。 在使用python進行數據分析的過程中,我們大部分時候是不會直接使用numpy包,而是其他包要用到numpy??梢哉fnumpy是整個python數據分析工作的基石。 舉個簡單的案例,我們要計算100000個隨機數的值,如果傳統(tǒng)編程需要寫循環(huán),用了2.2s,而使用numpy數據結構,則可以進行向量化操作,無需循環(huán),只需要28.2ms 節(jié)約大量時間。 In [1]: import numpyIn [2]: my_arr = np.arange(1000000)In [3]: my_list = list(range(1000000))In [4]: %time for _ in range(10): my_arr2 = my_arr * 2Wall time: 28.2 msIn [5]: %time for _ in range(10): my_list2 = [x * 2 for x in my_list]Wall time: 2.2 s pandas 官網:https://pandas./ Python Data Analysis Library,可根據需要幫助組織各種參數的數據。pandas基于numpy底層數據結構。讓python成為類似Excel,R等統(tǒng)計學軟件,主要就是pandas的功勞。pandas在python中實現(xiàn)了各種數據的計算 ,分組計算,添加刪除,排序,篩選,抽樣等都能工作。使Pandas成為數據科學家中最受歡迎的庫。 pandas主要包含兩種數據結構:Series與DataFrame。Series是一種類似于以為數組的對象,它由一組數據以及與之相關的數據標簽組成,僅有一組數據即可產生最簡單的Series。Series類似于R中的向量,屬于以為數據。Series可以構成二維的DataFrame。行為記錄值,列為觀測值。如果熟悉R中的數據框DataFrame,在使用pandas則會輕松上手,因為作者自己說pandas的DataFrame就是模仿R的數據框。 scipy 官網:https://www./ scipy是一個用于數學、科學、工程領域的常用軟件包,可以處理插值、積分、優(yōu)化、圖像處理、常微分方程數值解的求解、信號處理等問題。它用于有效計算Numpy矩陣,使Numpy和Scipy協(xié)同工作,高效解決問題。 matplotlib 官網:https:/// matplotlib是python中優(yōu)秀的數據可視化的包,根據命名就可以看到,它其實是一個matlib的plot庫,也就是利用python將matlib的繪圖功能實現(xiàn)了一遍。如果你熟悉matlib繪圖,那么將直接上手。matplotlib是Python編程語言及其數值數學擴展包 NumPy的可視化操作界面。它為利用通用的圖形用戶界面工具包,如Tkinter, wxPython, Qt或GTK+向應用程序嵌入式繪圖提供了應用程序接口(API)。 plotnine 官網:https://plotnine./en/stable/ 如果你不熟悉matlib,而是從R轉到python,可能不太喜歡matplotlib的繪圖模式和風格,覺得不如R繪圖方便。而且R還有ggplot2包。那么plotnine則是將ggplot2移植到python上,在python上完全重現(xiàn)ggplot2的功能。如果你熟悉ggplot2的語法,直接上手。不過,我倒是覺得這個工作意義不大,這屬于重新發(fā)明輪子,后面如果ggplot2在更新了,二者之間還是會有一些差別,用戶會有些困擾。當然,這樣的問題仁者見仁,愚者見愚。聊勝于無,如果想在 python環(huán)境中完成全部工作,有了這個包還是非常不錯的。 scikit-learn 官網:https:///stable/ 有很多人不是天天喜歡三句話不離大數據,機器學習,人工智能嗎。那么scikit-learn則是完成python大數據機器學習的包。scikit-Learn是python數據分析中非常重要的一個模塊,它是一個基于NumPy和SciPy構建的開源機器學習工具包。 它具有常用的ML算法,可用于預處理,分類,回歸以及聚類。算法包括[支持向量機]( support vector machines,ridge回歸, 網格搜索算法(Grid Search algorithm) ,k均值聚類等等。另外還有樣本數據集。API易學易用。 在幾乎所有平臺上的良好性能,它在學術和商業(yè)用途中都很受歡迎。 原圖鏈接: https:///stable/tutorial/machine_learning_map/ 其他: 除了以上包之外,python還有很多很多其他有關數據分析的包,不勝枚舉,比如圖片識別的opencv,google機器學習開源庫tensorflow,PyTorch等等,一個嶄新的世界等待你去發(fā)現(xiàn)。但是前提是前面基礎這些包熟悉了,以及有最核心的計算機以及統(tǒng)計學基礎,否則就是無水之源,無木之本,你所謂的人工智能,只能是人工智障。 |
|