机器学习基础工具 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()
-
参数必须是列表 一定要加中括号或小括号
-
维度必须相同
-
形状必须相同
-
级联的方向默认是 shape 这个 tuple 的第一个值所代表的维度方向
-
可通过 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的相关操作
详细请看上一篇文章如何操作pandas强大的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='*')