欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

机器学习基础工具 Numpy / Pandas / Matplotlib总结

程序员文章站 2022-03-21 07:57:14
...

机器学习基础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的相关操作

详细请看上一篇文章如何操作pandas强大的DataFrame详细介绍

Series和DataFrame绘图

 

matplotlib

强大的绘图功能

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='*')