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
相关推荐
im_AMBER3 小时前
学习日志19 python
python·学习
mortimer5 小时前
安装NVIDIA Parakeet时,我遇到的两个Pip“小插曲”
python·github
@昵称不存在6 小时前
Flask input 和datalist结合
后端·python·flask
charlee446 小时前
PandasAI连接LLM进行智能数据分析
ai·数据分析·llm·pandasai·deepseek
赵英英俊7 小时前
Python day25
python
东林牧之7 小时前
Django+celery异步:拿来即用,可移植性高
后端·python·django
何双新7 小时前
基于Tornado的WebSocket实时聊天系统:从零到一构建与解析
python·websocket·tornado
AntBlack7 小时前
从小不学好 ,影刀 + ddddocr 实现图片验证码认证自动化
后端·python·计算机视觉
凪卄12138 小时前
图像预处理 二
人工智能·python·深度学习·计算机视觉·pycharm
巫婆理发2228 小时前
强化学习(第三课第三周)
python·机器学习·深度神经网络