Numpy

1. Numpy重要功能如下:

NumPy(Numerical Python)是Python 语言的一个扩展程序库。是一个运行速度非常快的数学库,高性能科学计算和数据分析的基础包,主要用于数组计算。

包含:

1.一个强大的N维数组对象ndarray,多维数组,具有矢量运算能力,快速、节省空间;

2.矩阵运算,无需循环,可完成类似Matlab中的矢量运算;

3.线性代数、傅里叶变换、随机数生成等功能;

4.广播功能函数;

5.整合C/C++/Fortran代码的工具

6.用于读写磁盘数据的工具以及用于操作内存映射文件的工具;

2. Numpy属性

NumPy的数组类被称作ndarray,通常被称作数组;

numpy和数学操作相关的库,numpy的数组是多维的,并且是固定类型的,numpy的数组是ndarray,主要用于:矩阵运算。

ndarray对象属性有:

属性 说明
ndarray.ndim 维度,是几层嵌套
ndarray. shape 形状,是几行几列
ndarray.size 大小,有几个元素
ndarray. dtype 元素的类型
ndarray.itemsize 元素的大小

数组的维度。这是一个指示数组在每个维度上大小的整数元组。例如一个n排m列的矩阵,它的shape属性将是(2,3),这个元组的长度显然是秩,即维度或者ndim属性。

python 复制代码
#1.创建numpy的 ndarray对象.
arr1 = np.arange(15).reshape(3,5)
print(arr1)

print(f'numpy的轴:{arr1.ndim}')   #2
print(f'numpy的维度:{arr1.shape}')     #(3,5) 3行5列
print(f'numpy的元素类型:{arr1.dtype}')   #int32
print(f'numpy的元素个数:{arr1.size}')    #15
print(f'numpy的元素占用字节数:{arr1.itemsize}') #4
print(f'numpy的元素类型:{type(arr1)}')   # <class 'numpy.ndarray'>

3. 创建ndarray:

NumPy数组是一个多维的数组对象(矩阵),称为ndarray;ndarray的下标从0开始 ,且数组里的所有元素必须是相同类型

3.1 方式一:array() 创建 ndarray对象:(把python列表转成 ndarray对象)

python 复制代码
import numpy as ap

#1.创建python列表对象.
my_list=[11,22,33,44, 55]
print(type(my_list))    # <class 'list'>
#2.把python列表 ------> ndarray对象
arr2 = np.array(my_list)
print(arr2)         # [11,22,33,44, 55]
print(type(arr2))   # <class 'numpy.ndarray'>

3.2 方式二:arange() 创建 ndarray对象:

arange(起始, 结束, 步长, dtype=类型),类似于 Pythong中的range()函数, 创建一个一维ndarray数组。

python 复制代码
import numpy as ap

#1.创建ndarray对象.
arr3 = np.arange(0,10,2, dtype=np.float32l
#2.打印ndarray对象.
print(arr3) # [0.2.4.6.8.]<
print(type(arr3)) # <class 'numpy.ndarray'>
print(f'元素的类型:{arr3.dtype}') # 元素的类型:fLoat32

3.3 方式三:随机数生成ndarray(随机矩阵):

1.random.rand()生成0.0~1.0之间,包左不包右的随机小数矩阵;

2.random.randint(起始值,结束值,size=(行,列))生成指定范围,包左不包右的随机整数矩阵 ;

3, random.uniform(起始值,结束值,size=(行,列))生成指定范围,包左不包右的随机小数矩阵.

python 复制代码
import numpy as np

#1.random.rand()生成0.0~1.0之间,包左不包右的随机小数矩阵.
arr4 = np.random.rand(3,5)    #3行5列
print(arr4)
print(type(arr4))   # <class 'numpy.ndarray'>

#2.random.randint(起始值,结束值,size=(行,列))生成指定范围,包左不包右的随机整数矩阵.
arr5 = np.random.randint(3, 5, size=(2, 6)) #2行6列
print(arr5)
print(type(arr5))	# <class 'numpy.ndarray'>

#3.random.uniform(起始值, 结束值, size=(行 列)) 生成指定范围 包左不包右的 随机小数钜阵;
arr6 = np.random.uniform(3,9,size=(2, 6))
print(arr6)
printtype(arr6))	# <class 'numpy.ndarray'>

5. ndarray 的数据类型astype():

1.dtype参数,指定数组的数据类型,类型名+位数,如float64,int32

2.astype(),转换数组的数据类型;

python 复制代码
#初始化3行4列数组,数据类型为f1oat64
zeros_float_arr = np.zeros((3, 4), dtype=np.float64)
print(zeros_float_arr)
print(zeros_float_arr.dtype)    #float64
#astype转换数据类型,将已有的数组的数据类型转换为int32
zeros_int_arr = zeros_float_arr.astype(np.int32)
print(zeros_int_arr)
print(zeros_int_arr.dtype)      #int32
相关推荐
xiaotao13117 小时前
01-编程基础与数学基石:概率与统计
人工智能·python·numpy·pandas
海海不掉头发1 天前
【AI大模型学习基础篇】小白入门大模型全流程:从训练到MCP智能体
人工智能·python·深度学习·学习·语言模型·自然语言处理·numpy
AI视觉网奇2 天前
python 截取矩形 缩放,旋转
开发语言·python·numpy
和小潘一起学AI3 天前
numpy
numpy
xiaotao1313 天前
01-编程基础与数学基石: NumPy数值计算库
人工智能·python·numpy
kcuwu.6 天前
Python 数据分析实战:NumPy、Pandas、Matplotlib 融合
python·数据分析·numpy
贵州数擎科技有限公司7 天前
NumPy 从数组操作理解深度学习的计算本质
人工智能·numpy
贵州晓智信息科技7 天前
NumPy 从数组操作理解深度学习的计算本质
人工智能·深度学习·numpy
zzwq.7 天前
数据分析三件套:Numpy、Pandas、Matplotlib
数据分析·numpy·pandas