python数据结构python常用函数numpy, pandas, matplotlib
前言
整理python for ML常用的几个库,只是以表格形式给出,方便查阅,具体使用细节请参考官方API文档
文章目录系列文章目录前言python基础模块(未完成)
import numpy as np
ndarray对象创建ndarray基本操作通用函数数组切片 import pandas as pdimport matplotlib.pyplot as plt
绘图基本知识直方图绘制条形图绘制散点图绘制折线图绘制
python基础模块(未完成) import numpy as npAPI应用与具体细节
ndarray对象ndarray.ndim:数组的轴(维度)的个数ndarray.shape:对于有 n 行和 m 列的矩阵,shape 将是 (n,m)ndarray.size:数组元素的总数ndarray.dtype:元素类型的对象,python标准类型或numpy.int32、numpy.int16和numpy.float64ndarray.itemsize:数组中每个元素的字节大小
创建ndarray
| API | 作用 | 输入参数 | 返回值 |
|---|---|---|---|
| np.array() | 序列转换成一二三维数组 | list或者list套list | ndarray |
| np.zeros() | 创建一个由0组成的数组 | 数组的shape元组(m,n) | m*n的全0数组 |
| np.ones() | 创建一个由1组成的数组 | 数组的shape元组(m,n),dtype | m*n的全1数组 |
| np.empty() | 创建m*n数组 | shape(m*n) | 内容随机的数组 |
| np.arange() | 创建等差数组 | np.arange(start, end, step) | d为step的等差数组,step可缺省 |
| np.linspace() | 创建等差数组 | start, end, num | 数目为num的等差数组 |
| np.eye() | 创建对角线全1的矩阵 | 一个数,表示矩阵阶数 | 单位矩阵 |
| np.random.random | 生成0到1之间的随机数 | ||
| np.random.randn | 生成标准正态的随机数 | ||
| np.random.uniform | 生成均勻分布的随机数 | ||
| np.random.normal | 生成正态分布 |
基本操作
| API | 作用 | 输入参数 | 返回值 |
|---|---|---|---|
| array.reshape(m,n) | 重组数组 | 目的形状m*n | 新重组数组 |
| array.resize(m,n) | 重组数组 | 目的形状m*n | 改变的是原数组 |
| array.sum() | 数组求和 | 无 | 数组所有元素总和 |
| array.sum(axis) | 对行或者列求和 | axis=0对应列求和,1为行求和 | 返回一维和数组 |
| array.min() | 情况类似sum | ||
| array.max() | 情况类似sum | ||
| array.average() | 如果给出weight数组,则按照权重相乘求和 | ||
| array.flat | 数组迭代器,通过这个方法遍历 | ||
| array.all() | array中全为true | 可指定axis | |
| array.any() | array中一个为true | 可指定axis |
运算(A,B均为矩阵)
A*B:NumPy数组中按元素进行运算A@B:矩阵乘法A.dot(B):矩阵乘法
通用函数
| API | 作用 | 输入参数 | 返回值 |
|---|---|---|---|
| np.sin() | |||
| np.exp() | |||
| np.cos() | |||
| np.sqrt() | 数组开根号 | ||
| np.ceil() | 数组元素向下取整 | ||
| np.floor() | 数组元素向上取整 | ||
| np.mean() | 求均值,可通过axis选择维度 | ||
| np.median() | 求中位数,可通过axis选择维度 |
数组切片
>> b
array([[ 0, 1, 2, 3],
[10, 11, 12, 13],
[20, 21, 22, 23],
[30, 31, 32, 33],
[40, 41, 42, 43]])
| 切片格式 | 作用 |
|---|---|
| b[2,3] | 定位2,3坐标的元素 |
| b[0:5, 1] | 0-4行,第一列元素切片 |
| b[:, 1] | 所有行,第一列元素切片 |
import pandas as pd
import matplotlib.pyplot as plt
简单绘图步骤
直方图,条形图,饼状图绘制
figure:画板subplot:画纸axis:坐标轴,xlabel, ylabellegend:图形中的内容grid:网格中的虚线marker:点的形状
直方图绘制
条形图绘制
散点图绘制
折线图绘制



