python入門掙扎指南 - 安裝及直方圖

小白上路掙扎指南:

  1. 安裝anaconda,詳見簡書余欣博士文章 ,安裝過程中涉及的如在哪輸入命令行等問題,還可參閱唐瑟同學的這篇入門分享。
  2. 安裝Jupyter notebook,詳見簡書余欣博士文章,關于安裝了Python 2環(huán)境后,如何在Jupyter notebook中實現(xiàn)的問題,參考這篇文章,如1中所述安裝好py2環(huán)境后,activate py2,之后輸入conda install notebook ipykernel,進一步選y,最后ipython kernel install --user,即可在jupyter notebook中選擇py2的環(huán)境了。
    Paste_Image.png
  3. 啟動Jupyter notebook
  4. 加載Python包
import pandas as pd #導入pandas包,命名為pd。
import numpy as np #導入numpy,命名為np。
import matplotlib.pyplot as plt #導入matplotlib.pyplot,命名為plt。
from scipy import stats #從scipy導入stats 
  1. 導入數(shù)據(jù)
weight_data = pd.read_table('weight.txt') #用pd讀取文件,命名為weight_data
weight_data.shape    # 展示DataFrame的維度
  1. 數(shù)據(jù)處理
weight_data['weight'].mean() #求均值
weight_data['weight'].var() #求方差
  1. 數(shù)據(jù)可視化
fig = plt.figure() #創(chuàng)造畫布fig
plt.rcParams["font.family"] = "SimHei" #修改默認字體,以正確顯示中文(參考自小密圈中@木子 同學的分享)
x = weight_data['weight'] #以x代表weight_data表中weight欄
ax = fig.add_subplot(111) #將分為1*1的畫布上自左向右自上向下第1格畫圖命名為ax,若改為234,即將畫布分為2*3的格子,在第4格子填入ax
numBins = 10 #柱的數(shù)目(最終將生成此數(shù)+1的edge),此處亦可輸入[0,40,50,90],定制尺度的分布
ax.hist(x,numBins,color='blue',alpha=0.2) #alpha是透明度設置
plt.title(u'體重直方圖') #設置繪圖標題 
plt.show() #展示圖

結果展示:

體重文件的數(shù)據(jù)分析及展示部分

數(shù)據(jù)特征:眾數(shù)落在40~50,小于平均值50.7,是右偏的。體重較高的會和大多數(shù)眾數(shù)差得比較遠。

附加:讀取csv文件

先看看表中文件的具體樣式
進一步的數(shù)據(jù)處理及可視化

數(shù)據(jù)特征:依然是一個右偏分布,極大值偏離很遠,這對航空運力是很大的挑戰(zhàn),峰值管理并不好做,運力峰值和日常運力的協(xié)調應該會比較難。

包的介紹

pandas,全稱Python Data Analysis Librarylist,是基于NumPy 的一種工具,該工具是為了解決數(shù)據(jù)分析任務而創(chuàng)建的。Pandas 納入了大量庫和一些標準的數(shù)據(jù)模型,提供了高效地操作大型數(shù)據(jù)集所需的工具。Pandas最初被作為金融數(shù)據(jù)分析工具而開發(fā)出來,因此,pandas為時間序列分析提供了很好的支持。 Pandas的名稱來自于面板數(shù)據(jù)(panel data)和python數(shù)據(jù)分析(data analysis)。

NumPy,全稱Numeric Python,是Python的一種開源的數(shù)值計算擴展??捎脕泶鎯吞幚泶笮途仃?,比Python自身的嵌套列表結構要高效,因array只能由存儲相同的數(shù)據(jù)類型,利用內存更高效。同時numpy跟C/C++和Fortran代碼的工具包可通融。numpy和稀疏矩陣運算包scipy配合更佳方便。

Matplotlib是一個 Python 的 2D繪圖庫,它以各種硬拷貝格式和跨平臺的交互式環(huán)境生成出版質量級別的圖形??梢苑奖愕厣衫L圖,直方圖,功率譜,條形圖,錯誤圖,散點圖等。matplotlib的pyplot子庫提供了和matlab類似的繪圖API,方便用戶快速繪制2D圖表。matplotlib.pyplot是命令行式函數(shù)的集合,每一個函數(shù)都對圖像作了修改,比如創(chuàng)建圖形,在圖像上創(chuàng)建畫圖區(qū)域,在畫圖區(qū)域上畫線,在線上標注等。

SciPy函數(shù)庫在NumPy庫的基礎上增加了眾多的數(shù)學、科學以及工程計算中常用的庫函數(shù)。例如線性代數(shù)、常微分方程數(shù)值求解、信號處理、圖像處理、稀疏矩陣等等。

help()和dir()

method的查詢,比如dir(list),會把list的所有方法列出,help(list.append)可以查看具體的。設a=abc.def,則help(a)亦可查詢幫助。
導入包的情況,若查詢類型是pandas.core.frame.DataFrame,但已經(jīng)導入為pd,則help文件使用時也需在type部分寫為pd,如help(pd.core.frame.DataFrame.shape),或者可以直接在瀏覽器搜索panda shape也可。

import和from import

import xx導入模塊對于模塊中的函數(shù),每次調用需要“模塊.函數(shù)”來用。
from xx import fun 直接導入模塊中某函數(shù),直接fun()就可用。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容