Backend - 数据分析 Numpy

目录

一、作用

二、基础环境

(一)执行虚拟环境的终端命令

(二)代码中导包

三、数组操作

(一)创建数组

[1. 创建一维数组](#1. 创建一维数组)

(1)基本建立

(2)建立后,值类型统一

[2. 建立二维数组](#2. 建立二维数组)

(二)数组取值

[1. 取一维数组的值](#1. 取一维数组的值)

(1)取单个值

(2)取范围值

[2. 取得二维数组的值](#2. 取得二维数组的值)

(1)取某个值

(2)取某列

(3)取某行

(三)查看数据类型

(四)向量化运算

(五)聚合计算

[1. 常用](#1. 常用)

[2. 指定轴向](#2. 指定轴向)


一、作用

数值计算库。

二、基础环境

(一)执行虚拟环境的终端命令

bash 复制代码
pip install numpy

(二)代码中导包

python 复制代码
import numpy as np

三、数组操作

(一)创建数组

1. 创建一维数组

(1)基本建立
python 复制代码
a = [1,2,3,4]
b = np.array(a)  # [1 2 3 4]
(2)建立后,值类型统一
python 复制代码
a = [1,'aa',3,4]
b = np.array(a)  # ['1' 'aa' '3' '4']

2. 建立二维数组

python 复制代码
a = [['aa',2], [3,4]]
b = np.array(a) 

b 结果是:

bash 复制代码
[['aa' '2']
 ['3' '4']]

(二)数组取值

1. 取一维数组的值

(1)取单个值
python 复制代码
a = np.array([1,2,3,4,5,6,7])
b =a[0] # 1
(2)取范围值
python 复制代码
a = np.array([1,2,3,4,5,6,7])
b2 = a[2:5]  # [3 4 5]

2. 取得二维数组的值

(1)取某个值
python 复制代码
a = [[1,2], [3,4]]
b = np.array(a) 
c = b[0,1] 
print(c)  # 2
(2)取某列
python 复制代码
a = [[1,2], [3,4]]
b = np.array(a) 
d = b[:, 0] 
print(d)  # [1,3]
(3)取某行
python 复制代码
a = [[1,2], [3,4]]
b = np.array(a) 
e = b[1, :]
print(e)  # [3,4]

(三)查看数据类型

python 复制代码
a = [1,2,3,4]
b = np.array(a)   # [1 2 3 4]
c = b.dtype  # int32

(四)向量化运算

python 复制代码
a = [1,2,3,4]
b = np.array(a)   # [1 2 3 4]
c = b*3   # [3 6 9 12]
d = b+b   # [2 4 6 8]

(五)聚合计算

1. 常用

python 复制代码
import numpy as np
np.sum() 计算总和
np.any() 是否存在元素为真
np.all() 所有元素是否为真
np.prod() 所有元素乘积
np.mean() 平均值
np.median() 中位数
np.std() 标准差
np.var() 方差
np.power() 幂运算
np.sqrt() 开方
np.argmin() 最小值的索引
np.argmax() 最大值的索引
np.inf 无穷大
np.exp(10) 以e为底的指数
np.log(10) 对数

举例:

python 复制代码
a = np.array([0,1,2,3,4])
print(np.sum(a)) # 10
print(np.any(a)) # True
print(np.all(a)) # False
print(np.prod(a)) # 0
print(np.mean(a)) # 2.0
print(np.median(a)) # 2.0
print(np.std(a)) # 1.4142135623730951
print(np.var(a)) # 2.0
print(np.power(a, 2)) # [ 0  1  4  9 16]
print(np.sqrt(a)) # [0.  1.  1.41421356  1.73205081  2. ]
print(np.argmin(a)) # 0
print(np.argmax(a)) # 4
print(np.inf) # inf
print(np.exp(10)) # 22026.465794806718
print(np.log(10)) # 2.302585092994046

2. 指定轴向

python 复制代码
import numpy as np
a = [[1,2], [3,4]]
b = np.array(a) 
c = b.sum(axis=0).max() #求每列总和中的最大值 6
d = b.sum(axis=1).max() #求每行总和中的最大值 7
e = b.sum()  #求整个数组的总和 10
相关推荐
qq_5290252918 分钟前
Torch.gather
python·深度学习·机器学习
数据小爬虫@18 分钟前
如何高效利用Python爬虫按关键字搜索苏宁商品
开发语言·爬虫·python
Cachel wood1 小时前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架
終不似少年遊*1 小时前
pyecharts
python·信息可视化·数据分析·学习笔记·pyecharts·使用技巧
Python之栈1 小时前
【无标题】
数据库·python·mysql
陆沙1 小时前
生物信息学导论-北大-RNA-Seq数据分析
数据分析·生物信息·生信
袁袁袁袁满1 小时前
100天精通Python(爬虫篇)——第113天:‌爬虫基础模块之urllib详细教程大全
开发语言·爬虫·python·网络爬虫·爬虫实战·urllib·urllib模块教程
老大白菜2 小时前
Python 爬虫技术指南
python
Watermelo6172 小时前
详解js柯里化原理及用法,探究柯里化在Redux Selector 的场景模拟、构建复杂的数据流管道、优化深度嵌套函数中的精妙应用
开发语言·前端·javascript·算法·数据挖掘·数据分析·ecmascript
古希腊掌管学习的神3 小时前
[搜广推]王树森推荐系统——矩阵补充&最近邻查找
python·算法·机器学习·矩阵