1. 程式人生 > >機器學習基礎工具 Numpy / Pandas / Matplotlib總結

機器學習基礎工具 Numpy / Pandas / Matplotlib總結

機器學習基礎numpy,pandas,matplotlib總結

numpy

import numpy as np

建立陣列的型別的優先順序 str>float>int

指定陣列的型別:dtype,其中,np.int8,np.int16 等表示佔的記憶體的大小

儲存的資料型別: order

建立陣列

建立 ndarray 物件: np.array() 可以傳入一個列表建立

建立樣本,等分樣本空間:np.linspace(start, stop, pieces)

建立樣本,等分,將值作為10的指數: np.logspace(start, stop, pieces)

建立樣本,按步長建立:np.arrange(start, stop, step)

建立一個ndarray物件,隨機整數填充:np.random.randint(1, 10, size=(2,3), dtype=np.int8)

以 0 為中心的正態分佈的隨機值填充:np.random.randn(d1.d2,d3) 其中,d1,d2,d3 表示裡面每個維度的數量

以0-1的隨機數填充:np.random.random(size=(2,3))

建立自定義正態分佈值填充的陣列:np.random.normal(loc=10,scale=1,size=100)建立中心為10,方差為1的值填充,100個樣本

建立矩陣

建立全部為1填充的矩陣:np.ones(shape=(10,8), dtype=np.int8)

0 填充:np.zeros((4,4))

自定義填充: np.full((10,10), fill_value=100)

建立單位矩陣:np.eye(10), 建立的為滿秩矩陣

操作

級聯: np.concatenate()

  1. 引數必須是列表 一定要加中括號或小括號

  2. 維度必須相同

  3. 形狀必須相同

  4. 級聯的方向預設是 shape 這個 tuple 的第一個值所代表的維度方向

  5. 可通過 axis 引數改變級聯的方向

r_ 和 c_

# 將資料組合成點的形式
a = [1, 2, 3]
b = [4, 5, 6]
np.c_[a, b]
# 結果
#array([[1, 4],
#       [2, 5],
#       [3, 6]])
​
np.r_[a, b]
# 結果
# array([1, 2, 3, 4, 5, 6])

pandas

pandas的兩個主要資料結構Series(一維)和DataFrame(二維)處理了金融、統計、社會中的絕大多數資料科學,以及許多工程領域。主要介紹DataFrame的相關操作

matplotlib

強大的繪圖功能

直方圖 hist

hist , plt.hist(x), 表示的是出現的次數, 統計的結果, 表示的是概率

檢視資料的分佈情況

  • orientation 建立水平方向 的直方圖

密度圖 kde

一般和直方圖,一起,表達資料的分佈趨勢

  • 設定 直方圖的 density=True, 兩個圖同時顯示

條形圖 bar

plt.bar(x) plt.barh(x)

餅圖 pie

表示各個部分佔的比例 plt.pie()

  • labeldistance

  • pctdistance

  • startangle

  • colors

散點圖 scatter

顯示資料的關係

x = np.random.randn(1000)
y = np.random.randn(1000)
color = np.random.random(3000).reshape(1000, 3)
size = np.random.randint(1, 200, 1000)
plt.scatter(x, y, color=color, s=size, marker='*')