numpy_ndarry的创建及数据类型
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,ndarray 多维数组(N Dimension Array)NumPy数组是一个多维的数组对象(矩阵),称为ndarray,具有矢量算数运算能力和复杂的广播能力,并具有执行速度快和节省空间的特点注意
千家信息网最后更新 2025年12月03日numpy_ndarry的创建及数据类型
ndarray 多维数组(N Dimension Array)
NumPy数组是一个多维的数组对象(矩阵),称为ndarray,具有矢量算数运算能力和复杂的广播能力,并具有执行速度快和节省空间的特点
注意:ndarray的下标从0开始,且数组里的所有元素必须是相同类型
ndarray拥有的属性
1.ndim属性:维度个数
2.shape属性:纬度大小
3.dtype属性:数据类型
ndarray的随机创建
通过随机抽样(numpy.random)生成随机数据
示例代码:
# 导入numpy, 别名npimort numpy as np# 生成指定维度大小(3行4列)的随机多维浮点型数据(二维),rand固定区间0.0 ~ 1.0arr = np.random.rand(3, 4)print(arr)print(type(arr))# 生成指定维度大小(3行4列)的随机多维整型数据(二维),randint()可以指定区间(-1 ~ 5)arr = np.random.randint(-1, 5, size = (3, 4)) # 'size='可省略print(arr)print(type(arr))# 生成指定维度大小(3行4列)的随机多维浮点型数据(二维),uniform()可以指定区间(-1 ~ 5)arr = np.random.uniform(-1, 5, size = (3, 4)) # 'size='可省略print(arr)print(type(arr))print('维度个数: ', arr.ndim)print('维度大小: ', arr.shape)print('数据类型: ', arr.dtype)运行结果:
[[ 0.09371338 0.06273976 0.22748452 0.49557778] [ 0.30840042 0.35659161 0.54995724 0.018144 ] [ 0.94551493 0.70916088 0.58877255 0.90435672]][[ 1 3 0 1] [ 1 4 4 3] [ 2 0 -1 -1]][[ 2.25275308 1.67484038 -0.03161878 -0.44635706] [ 1.35459097 1.66294159 2.47419548 -0.51144655] [ 1.43987571 4.71505054 4.33634358 2.48202309]]维度个数: 2维度大小: (3, 4)数据类型: float64 ndarray的序列创建
- np.array(collection)
collection 为序列型对象(list)、嵌套序列对象(list of list)。
示例代码:
# list序列转换为ndarraylis = range(10)arr = np.array(lis)print(arr) # ndarray数据print(arr.ndim) # 维度个数print(arr.shape) # 维度大小# list of list嵌套序列转换为ndarraylis_lis = [range(10), rarnge(10)]arr = np.array(lis_lis)print(arr) # ndarray数据print(arr.ndim) # 维度个数print(arr.shape) # 维度大小运行结果:
# list序列转换为 ndarray[0 1 2 3 4 5 6 7 8 9]1(10,)# list of list嵌套序列转换为 ndarray[[0 1 2 3 4 5 6 7 8 9] [0 1 2 3 4 5 6 7 8 9]]2(2, 10)- np.zeros()
指定大小的全0数组。注意:第一个参数是元组,用来指定大小,如(3,4)。
- np.ones()
指定大小的全1数组。注意:第一个参数是元组,用来指定大小,如(3,4)。
- np.empty()
初始化数组,不是总是返回全0,有时返回的是未初始的随机值(内存里的随机值)。
示例代码(2,3,4):
# np.zeroszeros_arr = np.zeros((3, 4))# np.onesones_arr = np.ones((2, 3))# np.emptyempty_arr = np.empty((3, 3))# np.empty 指定数据类型empty_int_arr = np.empty((3, 3), int)print('------zeros_arr------`)print(zeros_arr)print('\n------ones_arr------`)print(ones_arr)print('\n------empty_arr------`)print(empty_arr)print('\n------empty_int_arr------`)print(empty_int_arr)运行结果:
------zeros_arr-------[[ 0. 0. 0. 0.] [ 0. 0. 0. 0.] [ 0. 0. 0. 0.]]------ones_arr-------[[ 1. 1. 1.] [ 1. 1. 1.]]------empty_arr-------[[ 0. 0. 0.] [ 0. 0. 0.] [ 0. 0. 0.]]------empty_int_arr-------[[0 0 0] [0 0 0] [0 0 0]]- np.arrange()和reshape()
arange()类似python的range(), 创建一个一维ndarray数组。
reshape()将重新调整数组的维数
示例代码(5):
# np.arange()arr = np.arange(15) # 15个元素的一维数组print(arr)print(arr.reshape(3, 5)) # 3*5个元素的二维数组print(arr.reshape(1, 3, 5)) # 1*3*5个元素的三维数组运行结果:
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14][[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14]][[[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14]]]- np.arange()和random.shuffle()
random.shuffle()将打乱数组序列(类似于洗牌)
示例代码(6):
arr = np.arange(15)print(arr)np.random.shuffle(arr)print(arr)print(arr.reshape(3, 5))运行结果:
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14][ 5 8 1 7 4 0 12 9 11 2 13 14 10 3 6][[ 5 8 1 7 4] [ 0 12 9 11 2] [13 14 10 3 6]]ndarray的数据类型
dtype参数
指定数组的数据类型,类型名+位数,如float64, int32
- astype方法
转换数组的数据类型
示例代码(1、2):
# 初始化3行4列数组,数据类型为float64zeros_float_arr = np.zeros((3,4), dtype = np.float64)print(zeros_float_arr)print(zeros_float_arr.dtype)# astype转换数据类型,将已有的数组的数据类型转换为int32zeros_int_arr = zeros_float_arr.astype =(np. int32)print(zeros_int_arr)print(zeros_int_arr.dtype)运行结果:
[[ 0. 0. 0. 0.] [ 0. 0. 0. 0.] [ 0. 0. 0. 0.]]float64[[0 0 0 0] [0 0 0 0] [0 0 0 0]]int32
数组
数据
类型
大小
维度
序列
代码
示例
结果
运行
个数
多维
元素
属性
二维
生成
区间
参数
对象
浮点
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中国网络安全管理方法论
武汉增波软件开发
dns服务器地址可以多个电脑吗
2017腾讯网络安全大赛
服务器带宽优化
南阳租房软件开发
乌海软件开发专业价格
淄博至尊宝网络技术
网络安全技术有防火墙
深圳软件开发定制需要多少钱
网络技术的最新突破
数据库系统工程师 教程
福建网络软件开发销售电话
梦幻蒹葭苍苍服务器
浏览器与服务器工作
pumed数据库简介
黑暗之魂3连不上服务器怎么解决
广西海集鲜网络技术有限公司
皇室战争测试服务器
麦芒网络技术广州有限公司
卡巴斯基网络安全解决方案
无法连接管理服务器怎么设置
八下英语单词软件开发
深圳海关的软件开发
海淀区网络安全保卫支队电话
云服务器被挖矿不管他有何后果
互联网股票是科技股吗
服务器怎么配公网ip
个人博客用什么服务器
苹果手机数据库解析