Python使用numpy模块创建数组操作示例
本文详细介绍Python中利用NumPy模块创建数组的多种方法。涵盖使用array函数构建基础数组,通过zeros、ones、empty系列函数生成指定形状与内容的数组,以及利用arange和eye函数创建序列和对角矩阵。内容包含具体代码示例与参数说明,适合Python初学者及数据科学从业者参考。
本文通过具体实例,讲解如何在Python中利用NumPy模块来创建数组。内容旨在为读者提供实用的参考与学习素材。
创建数组
构建ndarray对象
生成数组最便捷的方式是使用array函数。该函数接收任意序列型对象(包括其他数组)作为输入,并生成一个包含传入数据的新NumPy数组。
使用array函数创建数组
import numpy as np
ndarray1 = np.array([1, 2, 3, 4])
ndarray2 = np.array(list('abcdefg'))
ndarray3 = np.array([[11, 22, 33, 44], [10, 20, 30, 40]])
使用zeros和zeros_like函数创建数组
这些函数用于生成默认元素值为0的数组。需注意:zeros_like函数仅依据传入的ndarray数组的shape属性来创建全0数组,并不会复制源数组的具体数据。
ndarray4 = np.zeros(10)
ndarray5 = np.zeros((3, 3))
ndarray6 = np.zeros_like(ndarray5) # 按照 ndarray5 的shape创建数组
# 打印数组元素类型
print("以下为数组类型:")
print('ndarray4:', type(ndarray4))
print('ndarray5:', type(ndarray5))
print('ndarray6:', type(ndarray6))
print("-------------")
print("以下为数组元素类型:")
print('ndarray4:', ndarray4.dtype)
print('ndarray5:', ndarray5.dtype)
print('ndarray6:', ndarray6.dtype)
print("-------------")
print("以下为数组形状:")
print('ndarray4:', ndarray4.shape)
print('ndarray5:', ndarray5.shape)
print('ndarray6:', ndarray6.shape)
使用ones和ones_like函数创建数组
此类函数用于生成所有元素均为1的数组。ones_like的使用方式与zeros_like相同,即根据传入数组的形状创建全1数组。
#创建数组,元素默认值是0 ndarray7 = np.ones(10) ndarray8 = np.ones((3, 3)) #修改元素的值 ndarray8[0][1] = 999 ndarray9 = np.ones_like(ndarray5) # 按照 ndarray5 的shape创建数组
使用empty和empty_like函数创建数组
这些函数用于创建未初始化的空数组。其中存储的值并非0,而是内存中未初始化的随机值。
ndarray10 = np.empty(5) ndarray11 = np.empty((2, 3)) ndarray12 = np.empty_like(ndarray11)
使用arange函数创建数组
arange函数是Python内置函数range函数的数组版本,用于生成等差数列数组。
ndarray13 = np.arange(10) #产生0-9共10个元素
ndarray14 = np.arange(10, 20) #产生从10-19共10个元素
ndarray15 = np.arange(10, 20, 2) #产生10 12 14 16 18, 2为step 间隔为2
print('ndarray14的形状:', ndarray14.shape) #ndarray15的长度
ndarray14.reshape((2, 5)) #将其形状改变为(2, 5) 分2部分 每份5个
使用eye函数创建对角矩阵数组
该函数用于创建一个N*N的方阵,其主对角线元素为1,其余位置元素为0。
ndarray16 = np.eye(5)
若读者对Python其他操作技巧感兴趣,可参考本站专题:《Python数组操作技巧总结》、《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》。
希望上述内容能对读者的Python程序设计工作有所帮助。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













