歡迎點擊藍色字關注我喲~
內容提要
安裝python
安裝pip
安裝模塊
numpy
pandas
matplotlib
seaborn
python數據可視化測試
安裝python 如果想安裝numpy、pandas或matplotlib的python模塊,需要先安裝python。具體的安裝流程參見以前文章:手把手教你如何在windows系統安裝python?,本次不再贅述。
但需要提醒,在安裝時務必勾選環境變量項,如下圖。否則在安裝模塊的時候會出現找不到python的環境變量路徑PATH而報錯的情況。
請一定勾選Add python 3.7 to PATH的選項
如果在安裝python時沒有勾選的小夥伴也不要著急,可以在windows系統中設置python的PATH。
對於win10作業系統,右鍵單擊「此電腦「-->屬性-->高級系統設置-->環境變量-->用戶變量(U)-->Path-->編輯,提供python.exe所在路徑即可。
安裝pip 安裝好python之後,如果想要安裝其他基於python的安裝包或模塊,則需要先安裝pip。
pip是python包的安裝程序,可以使用pip安裝基於python的其他安裝包。這些安裝包可以通過python安裝包索引(Python Package Index,PyPI)查詢到(https://pypi.org/)。
python安裝包索引
pip和conda都是安裝命令,這裡我沒有用網上說的easy_install。pip是安裝python後才能執行其他第三方包的安裝,而conda是基於anaconda集成軟體包的安裝,conda可以安裝python以及第三方包。
在anaconda集成軟體包裡編譯有常用的第三方包,如機器學習訓練和深度學習模型建立需要用到的scikit-learn、TensorFlow和Theano等,使用Dask、NumPy、pandas和Numba等分析數據,使用Matplotlib、Bokeh、Datashader和Holoviews等可視化結果。同時通過conda建立虛擬環境和管理庫。下面是pip和conda的區別:
pip與conda的區別
通常conda的使用在Linux系統中較為常見,因為conda無需root安裝。當集群管理員很忙沒空給你安裝而你又趕項目著急用的時候,就需要在自己的工作目錄下建立虛擬環境,安裝需要的第三方包。看到網上說,conda是生信軟體安裝神器,哈哈!conda我也用過,可以避免python 2.7與python3.6混用出現的衝突。除了虛擬環境,conda和pip在安裝功能上一樣。
另外,anaconda是巨蟒的意思,python是蟒蛇的意思,因為官網寫到anaconda包含1500+個python或R包,如此龐大所以是個巨蟒哈!大家熟知的miniconda是anaconda的精華版本,如果嫌anaconda軟體包太大,可以下載下載這個mini版本。
參數說明:
-m是python的參數,後跟mod,表示module模塊,在上述命令行中模塊就是pip,表示將庫模塊作為腳本運行。
-m mod
run library module as a script (terminates option list)
python --help命令查看參數說明
另外,python -m可以啟動http伺服器打開網頁。如果採用python 2.7,其命令行:
python -m SimpleHTTPServer 8080其中,8080是埠,瀏覽器打開的網址是http://localhost:8080。如果8080這個埠被佔用了,可以嘗試其他80xx數字。
-U是pip install的參數,-U也可寫為--upgrade,表示更新升級,將包升級到最新版本更新升級。對於第一次裝pip,可以不用-U參數,因為第一次安裝的就是最新版本。
U, --upgrade
Upgrade all specified packages to the newest available version. The handling of dependencies depends on the upgrade-strategy used.
pip install --help查看參數說明
由於參數較多,沒有截圖到-U的參數說明
對於pip install安裝其他包而言,也可以指定安裝包的版本。如:
pip安裝第三方包常用命令:
指定某個版本的安裝包:
pip install packagename=3.0將已經安裝的包升級到最新版本:
另外,pip除了有install安裝各種包的功能,還可以下載、卸載、查詢已經安裝包的列表(pip list)、顯示安裝包信息(pip show packagename)、檢查已安裝的包是否具有兼容依賴項(pip check packagename)等。
pip除了install安裝功能外,還有其他功能
安裝模塊安裝好pip後,用pip對numpy、pandas、matplotlib、seaborn這些python包進行安裝。
NumPy是使用Python進行數組計算的基礎包,它的logo就是數組矩陣的形式。安裝命令行如下:
numpy的安裝包比較小(11.9MB),大約5分鐘內下載完,當然取決於你的網速。安裝完成後顯示「Successfully installed」,表示成功安裝。
numpy安裝成功
pandas能為數據分析、時間序列和統計分析提供強大的數據結構。安裝命令行如下:
安裝完成後,可以在python裡輸入如下代碼,如果沒有報錯,即為安裝成功。
另外,pandas官方推薦使用conda安裝。前面已經提到過conda,如果不知道的小夥伴可以往上翻。使用conda安裝的命令行:
使用PyPI安裝的命令行(官方提供):
python3 -m pip install --upgrade pandas
或指定安裝版本
matplotlib是python繪圖的安裝包,其具有強大的繪圖功能。安裝命令行:
另外,pip install對安裝包名稱的大小寫不敏感,matplotlib寫成MATPLOTLIB或者MatPlotLib等,都是識別為相同的結果。
seaborn可能大家不太熟悉,因為常用的就是上面介紹的3個。seaborn也是功能很強大的數據統計可視化軟體包。在下面的測試中,會具體展示這個包的繪圖功能。安裝命令行如下:
這個包安裝的時間較長,安裝包大小約為30M,我大約耗時20分鐘安裝完成。
python數據可視化測試安裝好包包後,我們來測試一下哈!其實安裝包的目的是為了用python的各模塊進行數據的可視化展示。
代碼:
# import moduleimport numpy as npimport pandas as pdimport matplotlib.pyplot as plt
# create data# Series: 1-Dts = pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000', periods=1000))ts = ts.cumsum()# DataFrame: 2-Ddf = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list('ABCD'))df = df.cumsum()
# plotts.plot()df.plot()plt.show()*註:代碼參考自pandas官方,代碼有刪改。
代碼分析:
1、import matplotlib as plt 是什麼意思?
表示將導入的包或模塊命名為別名。因為matplotlib這個包的名稱較長,為了避免後面代碼出現拼寫錯誤,將其命名為plt的簡寫形式。
2、pd.Series 是什麼意思?
pd是我們給導入pandas模塊時給的別名,Series是pandas中的函數。所以pd.Series表示調用pandas模塊中的Series函數。
另外,pandas基本的數據結構是Series和DataFrame。Series是一維數據結構(1-D),有一組索引與元素對應;DataFrame是二維數據(2-D)。
代碼中的變量df展示的是DataFrame二維數據
3、ts = ts.cumsum() 是什麼意思?
cumsum()是pandas模塊的函數,表示累計加和(Cumulative sum),因此通過ts.cumsum() 來求ts的累計次數。
4、ts = pd.Series(...)與ts = ts.cumsum()中2個ts有區別嗎?
首先,等號「=」在代碼中表示賦值的意思,將等號右邊賦值給等號左邊,如:a=2,即將數字2賦值給變量a。
其次,2個ts的意義不同,因為第一個ts是通過Series函數生成的數據結構,而第二個ts是生成第一個ts累計加和的結果,也就是第一個ts的值被第二個ts值覆蓋了。
2個ts的結果不同(Series展示一維數據)
當執行ts = ts.cumsum()後,第2列的數值為之前數值累計加和的結果。顯然前後2個ts表示不同。其中,df.head(n),查看DataFrame對象的前n行。
5、為什麼顯示2個figure?
pandas也有繪圖功能,ts.plot()和df.plot()分別畫圖,所以是2張圖,也可以通過subplot參數進行一頁多圖的形式。但是如果注釋掉ts.plot()直接畫df數據的話,依然是2張圖,但第一張圖是空白而已。我還沒有弄明白如何只畫第2張圖,如果設置figure大小和標題title,也是針對第一張圖的,第2張圖完全沒有被設置到,所以感覺很奇怪,乾脆將2張圖一起輸出好了。不喜歡用show()的朋友,可以用savefig()保存圖片哈!
Pandas數據可視化結果
左圖展示Series函數一維數據可視化結果,右圖展示DataFrame函數二維數據可視化結果
代碼:
import pandas as pdimport matplotlib as mplimport matplotlib.pyplot as pltimport seaborn as sns
# Import Datadf = pd.read_csv("https://github.com/selva86/datasets/raw/master/mpg_ggplot2.csv")
# Draw Plotplt.figure(figsize=(13,10), dpi= 80)sns.violinplot(x='class', y='hwy', data=df, scale='width', inner='quartile')
# Decorationplt.title('Violin Plot of Highway Mileage by Vehicle Class', fontsize=22)plt.show()*註:代碼參考自https://yq.aliyun.com/articles/682843
代碼分析:
直接將github上的文件導入數據,通過pandas生成數據框,matplotlib設置圖片大小、標題、字體大小等,seaborn完成小提琴圖的繪製。結果如下:
seaborn模塊繪製小提琴圖(violin plot)
總 結本文介紹了通過pip安裝第三方python包的方法,同時介紹了如何安裝pip以及pip與conda區別。最後通過安裝好的numpy、pandas、matplotlib、seaborn進行數據可視化展示。
除了用R作圖,也可以用python的pandas、matplotlib和seaborn等進行數據可視化展示。希望今天的文章對大家有所幫助~感謝小夥伴們的建議,歡迎大家後臺留言互動哈!
參考網址
https://packaging.python.org/tutorials/installing-packages/
https://www.anaconda.com/distribution/
https://pypi.org/project/numpy/
https://pypi.org/project/pandas/
https://pypi.org/project/matplotlib/
https://seaborn.pydata.org/
http://pandas.pydata.org/pandas-docs/stable/user_guide/visualization.html
http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.html
https://yq.aliyun.com/articles/682843
參考文章
手把手教你如何在windows系統安裝python?
python學習捷徑 | python cheat sheet-python小抄用起來~
如有問題,歡迎後臺留言討論。因水平有限,如有疏漏之處還請指正。
歡迎轉發分享朋友圈,轉載需經授權,請後臺留言備註。
版權聲明:公號千萬篇,版權第一條。轉載不規範,博主兩行淚