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
相关推荐
key_Go3 分钟前
7.Ansible自动化之-实施任务控制
python·ansible·numpy
wyiyiyi8 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
mit6.8248 小时前
[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络
人工智能·python
没有bug.的程序员8 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋8 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
AntBlack9 小时前
不当韭菜V1.1 :增强能力 ,辅助构建自己的交易规则
后端·python·pyqt
杜子不疼.11 小时前
《Python学习之字典(一):基础操作与核心用法》
开发语言·python·学习
myzzb12 小时前
基于uiautomation的自动化流程RPA开源开发演示
运维·python·学习·算法·自动化·rpa
TLuoQiu12 小时前
小电视视频内容获取GUI工具
爬虫·python
我叫黑大帅12 小时前
【CustomTkinter】 python可以写前端?😆
后端·python