丈夫氣力全,一個擬當千。猛氣衝心出,視死亦如眠。html
繪圖 Matplotlib
可視化是在整個數據挖掘的關鍵輔助工具,能夠清晰的理解數據,從而調整咱們的分析方法。python
能將數據進行可視化,更直觀的呈現
使數據更加客觀、更具說服力數據庫
matplotlib.pyplot模塊
import matplotlib.pyplot as pltjson
構造數據
實現繪圖
建立畫布
繪製圖像
顯示圖像
基本代碼
建立畫布:plt.figure()
figsize:指定圖的長寬
dpi:圖像的清晰度
返回fig對象
繪製圖像:plt.plot()
顯示圖像:plt.show()api
其餘功能 修改刻度
plt.xticks()
plt.yticks()
標題
plt.title(文字,fontsize=大小)
網格
plt.grid(True,alpha=透明度,linestyle=樣式)
保存 .savefig(文件名)數組
常見圖像
折線圖 散點圖 柱狀圖 餅圖 直方圖
折線圖
特色:像是數據的變化趨勢 反映事物的變化狀況(變化)
關鍵詞:變化
api:plt.plot(x,y)數據結構
散點圖
特色:判斷變量之間是否存在數量關聯趨勢,展現離羣點(分佈規律)
關鍵詞:規律
api:plt.scatter(x,y)app
柱狀圖
特色:展現各個數據的大小,比較數據差異
關鍵詞:比大小
api:plt.bar(x, width, align='center', **kwargs)
Parameters:
x : 須要傳遞的數據dom
width : 柱狀圖的寬度函數
align : 每一個柱狀圖的位置對齊方式
{‘center’, ‘edge’}, optional, default: ‘center’
**kwargs :
color:選擇柱狀圖的顏色
直方圖
特色:繪製連續性的數據展現一組或者多組數據的分佈情況
關鍵詞:統計分組,分佈
api:matplotlib.pyplot.hist(x, bins=None)
x : 須要傳遞的數據
bins : 組距
餅圖
特色:分類數據的佔比狀況()
關鍵詞:佔比
api:plt.pie(x, labels=,autopct=,colors)
x:數量,自動算百分比 列表
labels:每部分名稱 列表
autopct:佔比顯示指定%1.2f%% 字符串 .2表是幾位
colors:每部分顏色
繪製
準備數據
繪製圖像
建立畫布
繪製圖像
顯示圖像
Numpy開源的python科學計算庫 比list(列表)更具效率
快速處理任意維度的數組,支持常見的數組和矩陣操做
矩陣:二維數組
使用 ndarray(多維度數組) 對象來處理多維數組 它描述了-相同類型-的「items」的集合
內存塊分格
ndarray 數值類型相同,能夠直接讀取
list 數據類型不一樣,讀取地址在讀取數據
並行化計算 相似GPU
內置了並行運算功能,系統有多核心時,作某種計算,會自動作並行計算
底層代碼,效率遠高於純python代碼
底層用c編寫
n維數組 屬性,形狀,類型
ndarray 屬性
對象.shape:數據的形狀
對象.ndim:數據的維度
對象.size:數據的個數
對象.dtype:數據的類型
int32,int64,float32,float64,uint8(0,255)
對象.itemsize:一個元素的長度
建立數組
.array([[]],dtype=類型(numpy.int32)/"類型")
基本操做
生成數組
生成0-1數組
從現有數組生成
生成固定範圍數組
生成隨機數組
生成數組的方法
import numpy as np
0和1的數組
np.ones(shape, dtype)
np.ones_like(a, dtype)
np.zeros(shape, dtype)
np.zeros_like(a, dtype)
從現有數組生成
np.array(object, dtype)
np.asarray(a, dtype)
a = np.array([[1,2,3],[4,5,6]])
# 從現有的數組當中建立
a1 = np.array(a)---深拷貝
# 至關於索引的形式,並無真正的建立一個新的
a2 = np.asarray(a)---淺拷貝
生成固定範圍的數組
等差數列
np.linspace (start, stop, num, endpoint)
建立-等差-數組 — 指定數量
參數:
start:序列的起始值
stop:序列的終止值
num:要生成的等間隔樣例數量,默認爲50
endpoint:序列中是否包含stop值,默認爲ture
np.arange(start,stop, step, dtype)
建立等差數組 — 指定步長
參數
step:步長,默認值爲1
等比數列
np.logspace(start,stop, num)
參數:
num:要生成的等比數列數量,默認爲50
不傳值默認base=10
生成隨機數組
np.random模塊
正態分佈
--------------------
--------------------
Pandas (面板數據分析)數據處理的庫
-以numpy爲基礎 借np在計算方面性能高的優點
--基於matplotlib,可以簡便的畫圖
---有獨特的數據格式
有良好的圖表可讀性
處理數據
讀取文件
封裝了matplotlib,numpy的畫圖和計算
pandas的數據結構
1.series
由一組數據和與之相關的索引倆部分構成
建立
import pandas as pd
屬性
2.DataFrame
建立
屬性
數據運算
DataF
直接運算
對象【列名】+1---加1
對象【】.add(1)加1
對象【】.sub(1)--減1
邏輯運算
布爾索引
&---and
|---or
對象[對象[].條件 邏輯運算符 對象[].條件]
邏輯運算函數
query(expr)
expr查詢字符串
isin([])在一個區間
統計
對象.describe() --描述(行數,最大,最小,中位數,四分之三位數..)
abs--絕對值
prod--求積
idmax--最大值索引
argmax--最大值下表-np
mode--衆數
max--最大值
--axis--軸向 -參數
std--標準差
median 中位數
累計統計函數
cumsum()-前n個數的和
排序 .sort_index()
去重 .unique()
直方圖-hest()
.plot(figsize = (畫布大小))--畫圖
自定義運算
對象.apply(func,axis = 0)
def func():
執行內容
return ..
匿名函數
對象.apply(lambda x)
文件讀取和操做
文本文件:--csv,--json,html,local clipboard(剪切板)
二進制文件:Excel,--HDF5,SAS
數據庫:SQL
讀取read_文件格式
存儲,寫 to_文件格式
讀取文件
read_csv69:39 2019/11/1269:39 2019/11/125
pands.read_csv(路徑,usecols=[],stp=',')
filepath_or_buffer:文件路徑
sep :分隔符,默認用","隔開
usecols:指定讀取的列名,列表形式
to_csv
DataFrame.to_csv(path_or_buf=None, sep=', ’, columns=None, header=True, index=True, mode='w', encoding=None)
path_or_buf :文件路徑sep :分隔符,默認用","隔開columns :選擇須要的列索引,列表header :boolean or list of string, default True,是否寫進列索引值index:是否寫進行索引mode:'w':重寫, 'a' 追加