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
相关推荐
星云穿梭15 小时前
用Python写一个带图形界面的学生管理系统——完整教程
python
金銀銅鐵15 小时前
用 Pygame 实现 15 puzzle
python·数学·游戏
黄忠21 小时前
大模型之LangGraph技术体系
python·llm
hboot1 天前
AI工程师第二课 - 数据处理
人工智能·python·数据分析
用户8356290780512 天前
使用 Python 自动化 PowerPoint 形状布局与格式设置
后端·python
用户8356290780512 天前
用 Python 自动化 PowerPoint 演讲者备注添加
后端·python
黄忠2 天前
01-系统架构设计-LangGraph状态机与多源异构RAG
python
zzzzzz3102 天前
假如我是掘金管理员,我先给评论区装个'代码审查'系统
python·程序员·机器人
砍材农夫2 天前
python环境|conda安装和使用(2)
后端·python
程序员龙叔2 天前
编写高质量 Skill 系列 -- 如何设计需求分析与用例生成的 SKILL
自动化测试·软件测试·python·软件测试工程师·接口测试·性能测试·skill·ai测试